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>
11 DN = <http://www.simantics.org/DistrictNetwork-1.0> : L0.Ontology
13 L0.Ontology.global true
14 L0.HasResourceClass "org.simantics.district.network.ontology.DistrictNetworkResource"
16 // ----------------------------------------------------------------------------
18 DN.SCLMain : L0.SCLModule
19 L0.SCLModule.definition
21 include "Simantics/District/SCLMain"
24 // ----------------------------------------------------------------------------
26 defProperty : L0.Template
27 @template %subject %label %range
28 %subject <R L0.HasProperty : SEL.GenericParameterType
29 L0.HasLabel %label : L0.String
32 // ----------------------------------------------------------------------------
34 DN.Diagram <T DIA.Diagram
36 DN.Connection <T DIA.Connection
37 DN.Element <T DIA.Element : L0.Type
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
83 >-- DN.Edge.HasElevation
84 @defProperty "Elevation" L0.Double
86 @defProperty "Length" L0.Double
88 >-- DN.Edge.HasDiameter
89 @defProperty "Diameter" L0.Double
90 >-- DN.Edge.HasOuterDiameter
91 @defProperty "Outer Diameter" L0.Double
92 >-- DN.Edge.HasNominalMassFlow
93 @defProperty "Nominal Mass Flow" L0.Double
94 >-- DN.Edge.HasFlowArea
95 @defProperty "Flow Area" L0.Double
96 >-- DN.Edge.HasKReturn
97 @defProperty "K Return" L0.Double
98 >-- DN.Edge.HasKSupply
99 @defProperty "K Supply" L0.Double
100 >-- DN.Edge.HasTGround
101 @defProperty "T Ground" L0.Double
102 @L0.assert DN.Edge.HasDiameter 0.1
103 @L0.assert DN.Edge.HasOuterDiameter 0.11
105 // ----------------------------------------------------------------------------
107 DN.EdgeDefaultMapping <R L0.HasProperty : DN.EdgeMappingParameterType
108 L0.HasLabel "Default Edge mapping"
110 DN.VertexDefaultMapping <R L0.HasProperty : DN.VertexMappingParameterType
111 L0.HasLabel "Default Vertex mapping"
113 // ----------------------------------------------------------------------------
115 DN.Functions : L0.Library
117 DN.VertexMappingParameterType <T SEL.GenericParameterType
118 @L0.assert SEL.HasDisplayValue
120 SEL.HasEnumerationValues DN.Functions.enumerationValues : L0.Function
121 SEL.HasCustomModifier DN.Functions.defaultVertexMappingModifier : L0.Function
123 DN.EdgeMappingParameterType <T SEL.GenericParameterType
124 @L0.assert SEL.HasDisplayValue
126 SEL.HasEnumerationValues DN.Functions.enumerationValues
127 SEL.HasCustomModifier DN.Functions.defaultEdgeMappingModifier : L0.Function
129 DN.MappingParameterType <T SEL.GenericParameterType
130 @L0.assert SEL.HasDisplayValue
132 SEL.HasEnumerationValues DN.Functions.enumerationValues
133 SEL.HasCustomModifier DN.Functions.mappingModifier : L0.Function
135 // ----------------------------------------------------------------------------
137 DN.HasMapping <R L0.HasProperty : DN.MappingParameterType
138 L0.HasLabel "Mapping"
140 DN.HasId --> L0.String <R L0.HasProperty : SEL.GenericParameterType
148 DN.HasInLayerTag <R L0.HasProperty
151 // For associating typical diagram source and instance structures with each other
152 DN.Diagram.MappedDiagram <R L0.IsWeaklyRelatedTo
153 L0.InverseOf DN.Diagram.MappedFromDiagram <R L0.IsWeaklyRelatedTo
154 DN.MappedComponent <R L0.IsWeaklyRelatedTo
155 L0.InverseOf DN.MappedFromElement <R L0.IsWeaklyRelatedTo
157 DN.Diagram.trackChangesEnabled <R L0.HasProperty : SEL.GenericParameterType
158 L0.HasRange L0.Boolean
159 L0.HasLabel "Track changes"
161 DN.Diagram.splitToMultipleEnabled <R L0.HasProperty : SEL.GenericParameterType
162 L0.HasRange L0.Boolean
163 L0.HasLabel "Split To Multiple Diagrams"
165 DN.AddLayerToDNDiagramTemplate <T L0.Template
167 DN.EPSG_4326 : DN.SpatialRefSystem
168 L0.HasLabel "EPSG:4326"
171 DN.SpatialRefSystem <T L0.Property
174 DN.HasSpatialRefSystem <R L0.HasProperty : SEL.GenericParameterType
175 L0.HasRange DN.SpatialRefSystem
176 L0.HasLabel "Spatial Reference System"
178 DN.HasSRID <R L0.HasProperty
179 L0.HasRange L0.Integer
181 DN.HasSRTEXT <R L0.HasProperty
182 L0.HasRange L0.String
184 DN.Functions.compositeInstantiator : L0.ExternalValue
186 DN.Composite <T STR.Composite
187 STR.Composite.instantiationFunction DN.Functions.compositeInstantiator
188 @L0.assert MOD.HasModelingTemplate
189 _ : MOD.DiagramTemplate
190 MOD.HasDiagramType DN.Diagram
191 @L0.assert MOD.HasModelingTemplate
192 _ : DN.AddLayerToDNDiagramTemplate
194 DN.HasStartVertex <R L0.DependsOn
196 L0.HasRange DN.Vertex
197 L0.InverseOf DN.HasStartVertex_Inverse <R L0.IsRelatedTo
199 DN.HasEndVertex <R L0.DependsOn
201 L0.HasRange DN.Vertex
202 L0.InverseOf DN.HasEndVertex_Inverse <R L0.IsRelatedTo
204 // ----------------------------------------------------------------------------
207 DN.Mapping <T L0.Library
209 DN.Functions.convertToValue : L0.ExternalValue
211 DN.Mapping.Base <T L0.Value
212 >-- DN.Mapping.Id --> L0.String <R L0.HasProperty
213 >-- DN.Mapping.ComponentType --> STR.ComponentType <R L0.DependsOn
214 >-- DN.Mapping.Terminals --> DN.Mapping.TerminalPair <R L0.HasProperty
215 @L0.assert L0.ConvertsToValueWith DN.Functions.convertToValue
217 DN.Mapping.Terminal <T L0.Entity
218 L0.HasRange L0.String
220 DN.Mapping.TerminalPair <T L0.Property
221 >-- DN.Mapping.InputTerminal --> DN.Mapping.Terminal <R L0.HasProperty
222 >-- DN.Mapping.OutputTerminal --> DN.Mapping.Terminal <R L0.HasProperty
224 DN.Mapping.VertexMapping <T DN.Mapping.Base
226 >-- DN.Mapping.VertexMapping.ElevationAttribute --> L0.String <R L0.HasProperty
227 >-- DN.Mapping.VertexMapping.SupplyTemperatureAttribute --> L0.String <R L0.HasProperty
228 >-- DN.Mapping.VertexMapping.ReturnTemperatureAttribute --> L0.String <R L0.HasProperty
229 >-- DN.Mapping.VertexMapping.SupplyPressureAttribute --> L0.String <R L0.HasProperty
230 >-- DN.Mapping.VertexMapping.ReturnPressureAttribute --> L0.String <R L0.HasProperty
231 >-- DN.Mapping.VertexMapping.DeltaPressureAttribute --> L0.String <R L0.HasProperty
232 >-- DN.Mapping.VertexMapping.DeltaTemperatureAttribute --> L0.String <R L0.HasProperty
233 >-- DN.Mapping.VertexMapping.XAttribute --> L0.String <R L0.HasProperty
234 >-- DN.Mapping.VertexMapping.YAttribute --> L0.String <R L0.HasProperty
236 >-- DN.Mapping.VertexMapping.dpAttribute --> L0.String <R L0.HasProperty
237 >-- DN.Mapping.VertexMapping.dtAttribute --> L0.String <R L0.HasProperty
238 >-- DN.Mapping.VertexMapping.HeatPowerAttribute --> L0.String <R L0.HasProperty
239 >-- DN.Mapping.VertexMapping.NominalHeadMAttribute --> L0.String <R L0.HasProperty
240 >-- DN.Mapping.VertexMapping.NominalHeadBAttribute --> L0.String <R L0.HasProperty
241 >-- DN.Mapping.VertexMapping.NominalFlowAttribute --> L0.String <R L0.HasProperty
242 >-- DN.Mapping.VertexMapping.MaximumHeadMAttribute --> L0.String <R L0.HasProperty
244 >-- DN.Mapping.VertexMapping.HeatLoadDsAttribute --> L0.String <R L0.HasProperty
245 >-- DN.Mapping.VertexMapping.AddressAttribute --> L0.String <R L0.HasProperty
246 >-- DN.Mapping.VertexMapping.MassFlowAttribute --> L0.String <R L0.HasProperty
247 >-- DN.Mapping.VertexMapping.VolFlowAttribute --> L0.String <R L0.HasProperty
248 >-- DN.Mapping.VertexMapping.VelocityAttribute --> L0.String <R L0.HasProperty
249 >-- DN.Mapping.VertexMapping.FlowAreaAttribute --> L0.String <R L0.HasProperty
250 >-- DN.Mapping.VertexMapping.ValvePositionAttribute --> L0.String <R L0.HasProperty
251 >-- DN.Mapping.VertexMapping.NominalPressureLossAttribute --> L0.String <R L0.HasProperty
252 >-- DN.Mapping.VertexMapping.NominalMassFlowAttribute --> L0.String <R L0.HasProperty
254 DN.Mapping.EdgeMapping <T DN.Mapping.Base
255 >-- DN.Mapping.EdgeMapping.LengthAttribute --> L0.String <R L0.HasProperty
256 >-- DN.Mapping.EdgeMapping.DiameterAttribute --> L0.String <R L0.HasProperty
257 >-- DN.Mapping.EdgeMapping.OuterDiameterAttribute --> L0.String <R L0.HasProperty
258 >-- DN.Mapping.EdgeMapping.NominalMassFlowAttribute --> L0.String <R L0.HasProperty
259 >-- DN.Mapping.EdgeMapping.FlowAreaAttribute --> L0.String <R L0.HasProperty
260 >-- DN.Mapping.EdgeMapping.KReturnAttribute --> L0.String <R L0.HasProperty
261 >-- DN.Mapping.EdgeMapping.KSupplyAttribute --> L0.String <R L0.HasProperty
262 >-- DN.Mapping.EdgeMapping.TGroundAttribute --> L0.String <R L0.HasProperty
263 >-- DN.Mapping.EdgeMapping.ElevationAttribute --> L0.String <R L0.HasProperty
266 // Allowed connection types
267 DN.SupplyConnectionType <T STR.ConnectionType
269 DN.SupplyInConnectionType : DN.SupplyConnectionType : STR.InputDirection
270 STR.SupportsDirection DN.SupplyOutConnectionType
271 STR.ConnectionType.isUserSelectable true
273 DN.SupplyOutConnectionType : DN.SupplyConnectionType : STR.OutputDirection
274 STR.SupportsDirection DN.SupplyInConnectionType
275 STR.ConnectionType.isUserSelectable true
277 DN.ReturnConnectionType <T STR.ConnectionType
279 DN.ReturnInConnectionType : DN.ReturnConnectionType : STR.InputDirection
280 STR.SupportsDirection DN.ReturnOutConnectionType
281 STR.ConnectionType.isUserSelectable true
283 DN.ReturnOutConnectionType : DN.ReturnConnectionType : STR.OutputDirection
284 STR.SupportsDirection DN.ReturnInConnectionType
285 STR.ConnectionType.isUserSelectable true