1 L0 = <http://www.simantics.org/Layer0-1.1>
2 STR = <http://www.simantics.org/Structural-1.2>
3 SEL = <http://www.simantics.org/SelectionView-1.2>
4 MOD = <http://www.simantics.org/Modeling-1.2>
6 ANNO = <http://www.simantics.org/Annotation-1.0> : L0.Ontology
8 L0.HasResourceClass "org.simantics.annotation.ontology.AnnotationResource"
11 TODO: This is what an annotation type should look like in the graph:
13 @template %property %value
14 %property --> %value <R L0.HasProperty : L0.TotalFunction
15 %value <T ANNO.Annotation
19 ANNO.Functions : L0.Library
21 ANNO.AnnotationType <T L0.Type : MOD.TypeWithChangeInformation
22 L0.HasDescription "An entity consisting of arbitrary properties."
23 >-- ANNO.AnnotationType.systemAnnotation ==> "Boolean" <R L0.HasProperty : L0.FunctionalRelation : SEL.GenericParameterType
24 L0.HasLabel "Is System Annotation?"
25 L0.HasDescription "If true, this annotation type and its instances should be hidden from user interfaces while still allowing programmatic use."
26 @L0.assert ANNO.AnnotationType.systemAnnotation false
28 ANNO.Annotation <T L0.Value : ANNO.AnnotationType : MOD.TypeWithChangeInformation
29 L0.HasDescription "Abstract base class for annotation object types."
31 @L0.assert L0.domainChildren ANNO.Functions.domainChildren
32 @L0.assert SEL.HasDisplayProperty
33 _ : SEL.DisplayProperty
34 @L0.assert L0.entityReplacer
36 L0.SCLValue.expression "copyAnnotationData"
37 L0.HasValueType "Resource -> Resource -> <WriteGraph> ()"
38 >-- ANNO.Annotation.HasEntry --> ANNO.Annotation <R L0.DependsOn
40 ANNO.Functions.domainChildren : L0.ExternalValue
41 L0.HasValueType "ValueAccessor"
43 ANNO.HasAnnotationPropertySubrelation <-- L0.IndexRoot --> L0.Relation <R L0.IsRelatedTo : L0.FunctionalRelation
44 L0.HasDescription """When a new annotation type is created, its annotation property relation will be made a subrelation of the relation type specified by this relation. If unspecified, the new annotation property relation inherits L0.HasProperty."""
46 ANNO.HasAnnotationTypeSupertype <-- L0.IndexRoot --> ANNO.AnnotationType <R L0.IsRelatedTo : L0.FunctionalRelation
47 L0.HasDescription """When a new annotation type is created, it inherits the type specified by this relation. If unspecified, the new annotation type inherits ANNO.Annotation."""