]> gerrit.simantics Code Review - simantics/district.git/blob - org.simantics.district.network.ontology/graph/DistrictNetwork.pgraph
Added Edge.ThicknessProperty for generic edge-thickness styling
[simantics/district.git] / org.simantics.district.network.ontology / graph / DistrictNetwork.pgraph
1 L0 = <http://www.simantics.org/Layer0-1.1>
2 DIA = <http://www.simantics.org/Diagram-2.2>
3 STR = <http://www.simantics.org/Structural-1.2>
4 MOD = <http://www.simantics.org/Modeling-1.2>
5 VP = <http://www.simantics.org/Viewpoint-1.2>
6 IMAGE = <http://www.simantics.org/Image2-1.2>
7 SEL = <http://www.simantics.org/SelectionView-1.2>
8 SEL_UI = <http://www.simantics.org/SelectionViewUI-1.1>
9 G2D = <http://www.simantics.org/G2D-1.1>
10
11 DN = <http://www.simantics.org/DistrictNetwork-1.0> : L0.Ontology
12     @L0.new
13     L0.Ontology.global true
14     L0.HasResourceClass "org.simantics.district.network.ontology.DistrictNetworkResource"
15
16 // ----------------------------------------------------------------------------
17
18 DN.SCLMain : L0.SCLModule
19     L0.SCLModule.definition
20         """
21         include "Simantics/District/SCLMain"
22         """
23
24 // ----------------------------------------------------------------------------
25
26 defProperty : L0.Template
27     @template %subject %label %range
28         %subject <R L0.HasProperty : SEL.GenericParameterType
29             L0.HasLabel %label : L0.String
30             L0.HasRange %range
31
32 // ----------------------------------------------------------------------------
33
34 DN.Diagram <T DIA.Diagram
35 DN.Layer <T DIA.Layer
36 DN.Connection <T DIA.Connection
37 DN.Element <T DIA.Element : L0.Type
38
39 DN.Vertex <T DN.Element
40     >-- DN.Vertex.HasElevation
41         @defProperty "Elevation" L0.Double
42     >-- DN.Vertex.HasAddress
43         @defProperty "Address" L0.String
44     >-- DN.Vertex.HasSupplyTemperature
45         @defProperty "Supply Temperature" L0.Double 
46     >-- DN.Vertex.HasReturnTemperature 
47         @defProperty "Return Temperature" L0.Double
48     >-- DN.Vertex.HasSupplyPressure
49         @defProperty "Supply Pressure" L0.Double 
50     >-- DN.Vertex.HasReturnPressure
51         @defProperty "Return Pressure" L0.Double 
52     >-- DN.Vertex.HasDeltaPressure
53         @defProperty "Delta pressure" L0.Double 
54     >-- DN.Vertex.HasDeltaTemperature
55         @defProperty "Delta temperature" L0.Double 
56     >-- DN.Vertex.HasHeatPower
57         @defProperty "Heat Power" L0.Double 
58     >-- DN.Vertex.HasNominalHeadM
59         @defProperty "NominalHeadM" L0.Double 
60     >-- DN.Vertex.HasNominalHeadB
61         @defProperty "NominalHeadB" L0.Double 
62     >-- DN.Vertex.HasNominalFlow
63         @defProperty "Nominal Flow" L0.Double 
64     >-- DN.Vertex.HasMaximumHeadM
65         @defProperty "Maximum head M" L0.Double 
66     >-- DN.Vertex.HasHeatLoadDs
67         @defProperty "Heat Load ds" L0.Double 
68     >-- DN.Vertex.HasMassFlow
69         @defProperty "Mass Flow" L0.Double 
70     >-- DN.Vertex.HasVolFlow
71         @defProperty "Vol Flow" L0.Double 
72     >-- DN.Vertex.HasVelocity
73         @defProperty "Velocity" L0.Double 
74     >-- DN.Vertex.HasFlowArea
75         @defProperty "Flow Area" L0.Double 
76     >-- DN.Vertex.HasValvePosition
77         @defProperty "Valve position" L0.Double 
78     >-- DN.Vertex.HasNominalPressureLoss
79         @defProperty "Nominal Pressure Loss" L0.Double 
80     @L0.assert DN.Vertex.HasElevation 0.0
81
82 DN.Edge <T DN.Element
83     >-- DN.Edge.HasLength 
84         @defProperty "Length" L0.Double
85         L0.readOnly true
86     >-- DN.Edge.HasDiameter
87         @defProperty "Diameter" L0.Double
88     >-- DN.Edge.HasOuterDiameter
89         @defProperty "Outer Diameter" L0.Double
90     >-- DN.Edge.HasNominalMassFlow
91         @defProperty "Nominal Mass Flow" L0.Double
92     >-- DN.Edge.HasFlowArea
93         @defProperty "Flow Area" L0.Double
94     >-- DN.Edge.HasKReturn
95         @defProperty "K Return" L0.Double
96     >-- DN.Edge.HasKSupply
97         @defProperty "K Supply" L0.Double
98     >-- DN.Edge.HasTGround
99         @defProperty "T Ground" L0.Double
100     @L0.assert DN.Edge.HasDiameter 0.1
101     @L0.assert DN.Edge.HasOuterDiameter 0.11
102
103 // ----------------------------------------------------------------------------
104
105 DN.EdgeDefaultMapping <R L0.HasProperty : DN.EdgeMappingParameterType
106     L0.HasLabel "Default Edge mapping"
107
108 DN.VertexDefaultMapping <R L0.HasProperty : DN.VertexMappingParameterType
109     L0.HasLabel "Default Vertex mapping"
110
111 // ----------------------------------------------------------------------------
112
113 DN.Functions : L0.Library
114
115 DN.VertexMappingParameterType <T SEL.GenericParameterType
116   @L0.assert SEL.HasDisplayValue
117     _ : SEL.DisplayValue
118       SEL.HasEnumerationValues DN.Functions.enumerationValues : L0.Function
119       SEL.HasCustomModifier DN.Functions.defaultVertexMappingModifier : L0.Function
120
121 DN.EdgeMappingParameterType <T SEL.GenericParameterType
122   @L0.assert SEL.HasDisplayValue
123     _ : SEL.DisplayValue
124       SEL.HasEnumerationValues DN.Functions.enumerationValues
125       SEL.HasCustomModifier DN.Functions.defaultEdgeMappingModifier : L0.Function
126
127 DN.MappingParameterType <T SEL.GenericParameterType
128   @L0.assert SEL.HasDisplayValue
129     _ : SEL.DisplayValue
130       SEL.HasEnumerationValues DN.Functions.enumerationValues
131       SEL.HasCustomModifier DN.Functions.mappingModifier : L0.Function
132
133 // ----------------------------------------------------------------------------
134
135 DN.HasMapping <R L0.HasProperty : DN.MappingParameterType
136     L0.HasLabel "Mapping"
137
138 DN.HasId --> L0.String <R L0.HasProperty : SEL.GenericParameterType
139     L0.HasLabel "Id"
140     L0.readOnly false
141
142 DN.InLayer
143     @L0.defTag 
144     @L0.tag L0.Abstract
145
146 DN.HasInLayerTag <R L0.HasProperty
147     L0.HasRange L0.Tag
148
149 // For associating typical diagram source and instance structures with each other
150 DN.Diagram.MappedDiagram <R L0.IsWeaklyRelatedTo
151     L0.InverseOf DN.Diagram.MappedFromDiagram <R L0.IsWeaklyRelatedTo
152 DN.MappedComponent <R L0.IsWeaklyRelatedTo
153     L0.InverseOf DN.MappedFromElement <R L0.IsWeaklyRelatedTo
154
155 DN.AddLayerToDNDiagramTemplate <T L0.Template
156
157 DN.EPSG_4326 : DN.SpatialRefSystem
158     L0.HasLabel "EPSG:4326"
159     DN.HasSRID 4326
160     DN.HasSRTEXT _ : L0.String
161         @L0.loadString "epsg/EPSG_4326"
162
163 DN.SpatialRefSystem <T L0.Entity
164
165 DN.HasSpatialRefSystem <R L0.HasProperty
166     L0.HasRange DN.SpatialRefSystem
167
168 DN.HasSRID <R L0.HasProperty
169     L0.HasRange L0.Integer
170
171 DN.HasSRTEXT <R L0.HasProperty
172     L0.HasRange L0.String
173
174 DN.Functions.compositeInstantiator : L0.ExternalValue
175
176 DN.Composite <T STR.Composite
177     STR.Composite.instantiationFunction DN.Functions.compositeInstantiator
178     @L0.assert MOD.HasModelingTemplate
179         _ : MOD.DiagramTemplate
180             MOD.HasDiagramType DN.Diagram
181     @L0.assert MOD.HasModelingTemplate
182         _ : DN.AddLayerToDNDiagramTemplate
183
184 DN.HasStartVertex <R L0.DependsOn
185     L0.HasDomain DN.Edge
186     L0.HasRange DN.Vertex
187     L0.InverseOf DN.HasStartVertex_Inverse <R L0.IsRelatedTo
188
189 DN.HasEndVertex <R L0.DependsOn
190     L0.HasDomain DN.Edge
191     L0.HasRange DN.Vertex
192     L0.InverseOf DN.HasEndVertex_Inverse <R L0.IsRelatedTo
193
194 // ----------------------------------------------------------------------------
195
196 // Component MAPPING
197 DN.Mapping <T L0.Library
198
199 DN.Functions.convertToValue : L0.ExternalValue
200
201 DN.Mapping.Base <T L0.Value
202   @L0.assert L0.ConvertsToValueWith DN.Functions.convertToValue
203
204 DN.Mapping.Terminal <T L0.Entity
205
206 DN.Mapping.TerminalPair <T L0.Entity
207     >-- DN.Mapping.InputTerminal --> DN.Mapping.Terminal <R L0.HasProperty
208     >-- DN.Mapping.OutputTerminal --> DN.Mapping.Terminal <R L0.HasProperty
209
210 DN.Mapping.VertexMapping <T DN.Mapping.Base
211     // Common
212     >-- DN.Mapping.Id --> L0.String <R L0.HasProperty
213     >-- DN.Mapping.ComponentType --> STR.ComponentType <R L0.DependsOn
214     >-- DN.Mapping.VertexMapping.ElevationAttribute --> L0.String <R L0.HasProperty
215     >-- DN.Mapping.VertexMapping.SupplyTemperatureAttribute --> L0.String <R L0.HasProperty
216     >-- DN.Mapping.VertexMapping.ReturnTemperatureAttribute --> L0.String <R L0.HasProperty
217     >-- DN.Mapping.VertexMapping.SupplyPressureAttribute --> L0.String <R L0.HasProperty
218     >-- DN.Mapping.VertexMapping.ReturnPressureAttribute --> L0.String <R L0.HasProperty
219     >-- DN.Mapping.VertexMapping.DeltaPressureAttribute --> L0.String <R L0.HasProperty
220     >-- DN.Mapping.VertexMapping.DeltaTemperatureAttribute --> L0.String <R L0.HasProperty
221     >-- DN.Mapping.Terminals --> DN.Mapping.TerminalPair <R L0.HasProperty
222     // Production
223     >-- DN.Mapping.VertexMapping.dpAttribute --> L0.String <R L0.HasProperty
224     >-- DN.Mapping.VertexMapping.dtAttribute --> L0.String <R L0.HasProperty
225     >-- DN.Mapping.VertexMapping.HeatPowerAttribute --> L0.String <R L0.HasProperty
226     >-- DN.Mapping.VertexMapping.NominalHeadMAttribute --> L0.String <R L0.HasProperty
227     >-- DN.Mapping.VertexMapping.NominalHeadBAttribute --> L0.String <R L0.HasProperty
228     >-- DN.Mapping.VertexMapping.NominalFlowAttribute --> L0.String <R L0.HasProperty
229     >-- DN.Mapping.VertexMapping.MaximumHeadMAttribute --> L0.String <R L0.HasProperty
230     // Consumers
231     >-- DN.Mapping.VertexMapping.HeatLoadDsAttribute --> L0.String <R L0.HasProperty
232     >-- DN.Mapping.VertexMapping.AddressAttribute --> L0.String <R L0.HasProperty
233     >-- DN.Mapping.VertexMapping.MassFlowAttribute --> L0.String <R L0.HasProperty
234     >-- DN.Mapping.VertexMapping.VolFlowAttribute --> L0.String <R L0.HasProperty
235     >-- DN.Mapping.VertexMapping.VelocityAttribute --> L0.String <R L0.HasProperty
236     >-- DN.Mapping.VertexMapping.FlowAreaAttribute --> L0.String <R L0.HasProperty
237     >-- DN.Mapping.VertexMapping.ValvePositionAttribute --> L0.String <R L0.HasProperty
238     >-- DN.Mapping.VertexMapping.NominalPressureLossAttribute --> L0.String <R L0.HasProperty
239     >-- DN.Mapping.VertexMapping.NominalMassFlowAttribute --> L0.String <R L0.HasProperty
240
241 DN.Mapping.EdgeMapping <T DN.Mapping.Base
242     >-- DN.Mapping.Id
243     >-- DN.Mapping.ComponentType
244     >-- DN.Mapping.EdgeMapping.LengthAttribute --> L0.String <R L0.HasProperty
245     >-- DN.Mapping.EdgeMapping.DiameterAttribute --> L0.String <R L0.HasProperty
246     >-- DN.Mapping.EdgeMapping.OuterDiameterAttribute --> L0.String <R L0.HasProperty
247     >-- DN.Mapping.EdgeMapping.NominalMassFlowAttribute --> L0.String <R L0.HasProperty
248     >-- DN.Mapping.EdgeMapping.FlowAreaAttribute --> L0.String <R L0.HasProperty
249     >-- DN.Mapping.EdgeMapping.KReturnAttribute --> L0.String <R L0.HasProperty
250     >-- DN.Mapping.EdgeMapping.KSupplyAttribute --> L0.String <R L0.HasProperty
251     >-- DN.Mapping.EdgeMapping.TGroundAttribute --> L0.String <R L0.HasProperty
252     >-- DN.Mapping.Terminals