]> gerrit.simantics Code Review - simantics/3d.git/blob - org.simantics.plant3d.ontology/graph/plant3d.pgraph
Support for fillets and chamfers
[simantics/3d.git] / org.simantics.plant3d.ontology / graph / plant3d.pgraph
1 L0 = <http://www.simantics.org/Layer0-1.1>
2 PROJ = <http://www.simantics.org/Project-1.2>
3 SIM = <http://www.simantics.org/Simulation-1.1>
4 //STR = <http://www.simantics.org/Structural-1.2>
5 G3D = <http://www.simantics.org/G3D-0.1>
6
7 P3D = <http://www.simantics.org/Plant3D-0.1> : L0.Ontology
8     @L0.new
9     L0.HasResourceClass "org.simantics.plant3d.ontology.Plant3D" : L0.String
10     
11 P3D.ImportedOntologies : PROJ.NamespaceRequirement
12     L0.HasDescription "Specifies the ontologies required by a Plant3D Feature." : L0.String
13     PROJ.RequiresNamespace
14         "http://www.simantics.org/Layer0-1.0" : L0.URI
15         "http://www.simantics.org/Simulation-1.0" : L0.URI
16         
17 P3D.Node <T G3D.Node 
18   
19 P3D.Plant <T G3D.RootNode <T P3D.Node
20
21
22 P3D.childen <R G3D.children
23
24 P3D.hasGeometry <R L0.IsWeaklyRelatedTo
25    
26 P3D.LibraryComponent <T P3D.Node
27
28 P3D.Equipment <T P3D.LibraryComponent
29
30 P3D.PipeRun <T P3D.Node
31
32 P3D.PipelineComponent <T P3D.LibraryComponent
33
34 P3D.Nozzle <T P3D.LibraryComponent
35     //[HasPipeDiameter card "1"]
36     //[HasLength card "1"]
37
38 P3D.PipelineComponentTag <R L0.IsWeaklyRelatedTo
39
40 P3D.SingleConnectedComponent <R P3D.PipelineComponentTag 
41     L0.HasDescription "A component that is connected to only one component" : L0.String
42 P3D.DualConnectedComponent <R P3D.PipelineComponentTag 
43     L0.HasDescription "A component that is connected to two components" : L0.String
44 P3D.MultiConnectedComponent <R P3D.PipelineComponentTag 
45     L0.HasDescription "A component that is connected to more than two components" : L0.String
46
47 P3D.InlineComponent <T P3D.PipelineComponent
48     L0.HasDescription "Component that connects to two or more components, and maintains direction of (main) pipe run. Centerline of main pipeline may have offset: with offset there is two control points for main pipeline, and without offset, there is only one control point for main pipeline. The component may also join two pipe runs together: then there is always one control point for one pipe run." : L0.String
49     //[HasLength card "1"]
50 P3D.EndComponent <T P3D.PipelineComponent
51     L0.HasDescription "Component that ends the pipe run Component may contain other control points" : L0.String
52 P3D.TurnComponent <T P3D.PipelineComponent
53     L0.HasDescription "Component that changes direction of the pipeline Component that connects to two or more components, and specifies connectivity of main pipe run. Is base type for elbows, pipe bends, etc., but also for components that won't maintain main pipeline direction (inline component). CHECK!!!" : L0.String
54     //[HasTurnAngle card "1"]
55     
56 P3D.FixedLengthInlineComponent <R P3D.PipelineComponentTag
57     L0.HasDescription "Inline component that has fixed length" : L0.String
58     //[HasRotationAngle card "1"]
59 P3D.VariableLengthInlineComponent <R P3D.PipelineComponentTag
60     L0.HasDescription "Inline component whose length can be changed" : L0.String
61 P3D.FixedAngleTurnComponent <R P3D.PipelineComponentTag
62     L0.HasDescription "Turn Component that has specific turning angle that cannot be changed" : L0.String
63     //[HasRotationAngle card "1"]
64 P3D.VariableAngleTurnComponent <R P3D.PipelineComponentTag
65     L0.HasDescription "Turn Component whose turning angle can be modified Contains always one control point (there are no contradictory cases / how to calculate?)" : L0.String
66     //[HasTurnRadius card "1"]
67 P3D.SizeChangeComponent <R P3D.PipelineComponentTag
68     L0.HasDescription "Component that changes pipe run along main pipeline. (Spec change)" : L0.String
69 P3D.OffsetComponent<R P3D.PipelineComponentTag
70     L0.HasDescription "Component that offsets the center of piperun." : L0.String  
71 P3D.CodeComponent <T P3D.PipelineComponentTag
72     L0.HasDescription "Compoenent that cannot be added directly by user" : L0.String
73 P3D.NonVisibleComponent <R P3D.PipelineComponentTag
74     L0.HasDescription "(Pseudo) Component that cannot bee seen." : L0.String
75
76     
77
78
79 // relation and property definitions
80
81 P3D.Connects <R L0.IsWeaklyRelatedTo
82     L0.HasDomain P3D.PipelineComponent
83     L0.HasRange P3D.PipelineComponent
84 P3D.HasNext <R P3D.Connects
85     L0.HasDescription "Next point in the piperun" : L0.String
86     L0.InverseOf P3D.NextInverse <R L0.IsWeaklyRelatedTo
87 P3D.HasPrevious <R P3D.Connects
88     L0.HasDescription "Previous point in the piperun" : L0.String
89     L0.InverseOf P3D.PreviousInverse <R L0.IsWeaklyRelatedTo
90 // connections for branches (Objmap requires separate relations!?)
91 P3D.HasBranch0 <R P3D.Connects
92 P3D.HasBranch1 <R P3D.Connects
93 P3D.HasBranch2 <R P3D.Connects
94 P3D.HasBranch3 <R P3D.Connects
95 P3D.HasBranch4 <R P3D.Connects
96 P3D.HasBranch5 <R P3D.Connects
97 P3D.HasBranch6 <R P3D.Connects
98 P3D.HasBranch7 <R P3D.Connects
99 P3D.HasBranch8 <R P3D.Connects
100 P3D.HasBranch9 <R P3D.Connects
101     
102 P3D.HasPipeDiameter <R G3D.hasNonTransformation
103     L0.HasRange L0.Double
104 //P3D.HasLength <R G3D.hasNonTransformation
105 //    L0.HasRange L0.Double
106 //P3D.HasTurnAngle <R G3D.hasNonTransformation
107 //    L0.HasRange L0.Double
108 //P3D.HasRotationAngle <R G3D.hasTransformation
109 //    L0.HasRange L0.Double
110 //P3D.HasOffset <R L0.HasProperty
111 //    L0.HasRange L0.Double
112 //HasRelativePosition <R HasProperty
113 //    HasRange [Position]
114 //HasRelativeDirection <R HasProperty
115 //    HasRange [Tuple3]
116 //HasDirection <R HasProperty
117 //    HasRange [Tuple3]  
118 P3D.HasTurnRadius <R G3D.hasNonTransformation
119     L0.HasRange L0.Double   
120 P3D.IsReversed <R L0.HasProperty
121     L0.HasRange L0.Boolean
122 P3D.HasTurnAxis <R G3D.hasTransformation
123     L0.HasRange G3D.Tuple3D
124     
125 P3D.HasNozzleDefinition <R L0.HasProperty
126     L0.HasDomain P3D.Equipment
127     L0.HasRange P3D.Nozzle
128     L0.HasDescription "This relation is used to connect nozzles to equipment in the template. For instantiated equipment nozzles must be connected with HasNozzle relation." : L0.String  
129 P3D.HasNozzle <R G3D.children
130     L0.InverseOf P3D.NozzleOf
131     L0.HasDomain P3D.Equipment
132     L0.HasRange P3D.Nozzle
133     L0.HasDescription "Used to connect nozzles to equipment." : L0.String
134 P3D.HasNozzleRestriction <R L0.HasProperty
135     L0.HasDescription "Used in template equipment to restrict amount of nozzles. If template has as many nozzleDefinitions that maximum count in this restriction, user cannot add new nozzles to the equipment instance." : L0.String
136
137 P3D.HasNozzleId <R L0.HasProperty
138     L0.HasDomain P3D.Nozzle
139     L0.HasRange L0.Integer
140
141 P3D.HasPipeRun <R L0.IsWeaklyRelatedTo
142     L0.HasDomain P3D.Nozzle
143     L0.HasRange P3D.PipeRun
144     
145 P3D.HasAlternativePipeRun <R L0.IsRelatedTo
146     L0.HasDomain P3D.PipelineComponent
147     L0.HasRange P3D.PipeRun
148     
149 P3D.Parameter <T L0.Entity
150     
151 P3D.hasParameter <R L0.IsRelatedTo
152    L0.HasDomain P3D.Node
153    L0.HasRange P3D.Parameter    
154     
155 P3D.hasParameterValue <R L0.IsRelatedTo : L0.FunctionalRelation
156    L0.HasDomain P3D.Parameter
157    L0.HasRange L0.Literal
158