]> gerrit.simantics Code Review - simantics/platform.git/blobdiff - bundles/org.simantics.structural.ontology/graph/Structural.pgraph
Define ConnectionRelationType to make searching of instances possible
[simantics/platform.git] / bundles / org.simantics.structural.ontology / graph / Structural.pgraph
index 0393439f6c89781c09b891e83f1b0239122d8451..cf6f05ab2a087fcf9b2edac0178d415b97841ae4 100644 (file)
@@ -23,6 +23,7 @@ STR.ComponentType <T L0.Type
     >-- STR.ComponentType.HasDefaultPropertyRelationType <R L0.IsRelatedTo
     >-- STR.ComponentType.HasDefaultPropertyValueType <R L0.IsRelatedTo
     >-- STR.ComponentType.HasDefaultMonitorValueType --> STR.MonitorValueType <R L0.IsRelatedTo
+    @L0.assert L0X.HasGeneratedNamePrefix ""
 
 STR.MonitorValueType <T L0.Entity
 STR.MonitorValue <T L0.SCLValue : STR.MonitorValueType
@@ -35,6 +36,8 @@ STR.AbstractDefinedComponentType <T STR.ComponentType
 
 STR.DefinedComponentType <T STR.AbstractDefinedComponentType
 
+STR.ReplaceableDefinedComponentType <T STR.AbstractDefinedComponentType
+
 STR.ProceduralComponentType <T STR.AbstractDefinedComponentType
     >-- STR.ProceduralComponentType.code --> STR.ProceduralComponentTypeCode <R L0.HasProperty : L0.TotalFunction
     >-- STR.ProceduralComponentType.environment --> L0.SCLValue.Environment <R L0.IsRelatedTo : L0.FunctionalRelation
@@ -106,14 +109,18 @@ STR.Connection <T L0.Entity
 STR.ConnectionVariable <T STR.Variable <T STR.Connection
     //[STR.Binds all STR.ConnectionRelation]
 */
-STR.ConnectionRelation <T L0.Relation
+
+STR.Functions.connectionValueAccessor : L0.ExternalValue
+    L0.HasValueType "ValueAccessor"
+
+STR.ConnectionRelationType <T L0.Type
+
+STR.ConnectionRelation <T L0.Relation : STR.ConnectionRelationType
     @L0.assert L0.SharedRange STR.ConnectionRelation
     >-- STR.ConnectionRelation.connectionRequired --> L0.Boolean <R L0.HasProperty : L0.FunctionalRelation
     >-- STR.ConnectionRelation.equivalentConnectionPoint --> STR.ConnectionRelation <R L0.IsRelatedTo
         L0.InverseOf STR.ConnectionRelation.equivalentConnectionPoint
-    @L0.assert L0.valueAccessor 
-        STR.Functions.connectionValueAccessor : L0.ExternalValue
-            L0.HasValueType "ValueAccessor"
+    @L0.assert L0.valueAccessor STR.Functions.connectionValueAccessor
     @L0.assert L0.domainProperties L0.Functions.standardPropertyDomainProperties
     @L0.assert L0.domainChildren L0.Functions.standardPropertyDomainChildren            
 
@@ -259,6 +266,10 @@ STR.Component
   @L0.assert L0.domainChildren 
     STR.Functions.structuralChildDomainChildren : L0.ExternalValue
       L0.HasValueType "VariableMap"
+  @L0.assert L0.typeResource
+    _ : L0.SCLValue
+      L0.SCLValue.expression "structuralTypeResource"
+      L0.HasValueType "Variable -> Resource -> <ReadGraph> Resource"
 
 STR.Run
   @L0.assert L0.domainChildren 
@@ -268,10 +279,8 @@ STR.Run
 STR.Connection
   @L0.assert L0.domainProperties L0.Functions.standardPropertyDomainProperties
   @L0.assert L0.domainChildren L0.Functions.standardPropertyDomainChildren
-  @L0.assert L0.valueAccessor 
-    STR.Functions.connectionValueAccessor : L0.ExternalValue
-      L0.HasValueType "ValueAccessor"
-      
+  @L0.assert L0.valueAccessor STR.Functions.connectionValueAccessor
+
 STR.SCLValue <T L0.SCLValue
   @L0.assert L0.ConvertsToValueWith STR.Functions.computeExpression
   @L0.assert L0.SCLValue.environment
@@ -342,4 +351,10 @@ STR.ComponentTypeScript <T L0.Entity
 STR.ComponentType.Locked
     @L0.defTag
     L0.HasDomain STR.ComponentType
-    L0.HasDescription "Indicates that the component type is locked and cannot be opened for editing."
\ No newline at end of file
+    L0.HasDescription "Indicates that the component type is locked and cannot be opened for editing."
+    
+STR.TypeOverride <T L0.Entity
+    >-- STR.TypeOverride.HasOriginalType --> STR.ComponentType <R L0.IsRelatedTo : L0.TotalFunction
+    >-- STR.TypeOverride.HasReplacementType --> STR.ComponentType <R L0.IsRelatedTo : L0.TotalFunction 
+STR.HasTypeOverride --> STR.TypeOverride <R L0.IsRelatedTo    
\ No newline at end of file