--- /dev/null
+L0 = <http://www.simantics.org/Layer0-1.1>
+P3D = <http://www.simantics.org/Plant3D-0.1>
+
+
+P3D.Builtin : L0.Library
+
+P3D.Builtin.GeometryProvider <T L0.Entity
+P3D.Builtin.NozzleGeometryProvider : P3D.Builtin.GeometryProvider
+P3D.Builtin.HorizontalTankGeometryProvider : P3D.Builtin.GeometryProvider
+P3D.Builtin.VerticalTankGeometryProvider : P3D.Builtin.GeometryProvider
+P3D.Builtin.StraightGeometryProvider : P3D.Builtin.GeometryProvider
+P3D.Builtin.ElbowGeometryProvider : P3D.Builtin.GeometryProvider
+P3D.Builtin.ReducerGeometryProvider : P3D.Builtin.GeometryProvider
+P3D.Builtin.PumpGeometryProvider : P3D.Builtin.GeometryProvider
+P3D.Builtin.BallValveGeometryProvider : P3D.Builtin.GeometryProvider
+P3D.Builtin.CheckValveGeometryProvider : P3D.Builtin.GeometryProvider
+P3D.Builtin.CapGeometryProvider : P3D.Builtin.GeometryProvider
+
+
+P3D.Builtin.ConcentricReducer <T P3D.InlineComponent : P3D.InlineComponent
+ @L0.assert P3D.hasGeometry P3D.Builtin.ReducerGeometryProvider
+ @L0.tag P3D.SizeChangeComponent
+ @L0.tag P3D.FixedLengthInlineComponent
+ @L0.tag P3D.DualConnectedComponent
+// HasRotationAngle "0.0" : Double
+// HasControlPoint
+// _ : SizeChangeControlPoint
+P3D.Builtin.EccentricReducer <T P3D.InlineComponent : P3D.InlineComponent
+ @L0.tag P3D.OffsetComponent
+ @L0.tag P3D.SizeChangeComponent
+ @L0.tag P3D.FixedLengthInlineComponent
+ @L0.tag P3D.DualConnectedComponent
+// HasRotationAngle "0.0" : Double
+// HasControlPoint
+// _ : SizeChangeControlPoint : OffsettingPoint
+P3D.Builtin.Elbow <T P3D.TurnComponent : P3D.TurnComponent
+ @L0.tag P3D.VariableAngleTurnComponent
+ @L0.tag P3D.DualConnectedComponent
+ @L0.assert P3D.hasGeometry P3D.Builtin.ElbowGeometryProvider
+// HasLength "0.0" : Double
+// HasTurnRadius "0.0" : Double
+// HasTurnAngle "0.0" : Double
+// HasControlPoint
+// _ : VariableAngleTurnControlPoint
+P3D.Builtin.Straight <T P3D.InlineComponent : P3D.InlineComponent
+ @L0.tag P3D.DualConnectedComponent
+ @L0.tag P3D.VariableLengthInlineComponent
+ @L0.assert P3D.hasGeometry P3D.Builtin.StraightGeometryProvider
+// HasLength "0.0" : Double
+// HasControlPoint
+// _ : VariableLengthControlPoint
+P3D.Builtin.BranchSplitComponent <T P3D.InlineComponent : P3D.InlineComponent
+ @L0.tag P3D.CodeComponent
+ @L0.tag P3D.FixedLengthInlineComponent
+ @L0.tag P3D.NonVisibleComponent
+// HasLength "0.0" : Double
+// HasControlPoint
+// _ : BranchControlPoint
+//P3D.Builtin.Vessel : P3D.Equipment
+// @L0.tag L0.Abstract
+//P3D.Builtin.VerticalVessel <T P3D.Builtin.Vessel
+ //[HasHeight card "1"]
+//P3D.Builtin.HorizontalVessel <T P3D.Builtin.Vessel
+ //[HasLength card "1"]
+
+
+P3D.Builtin.Nozzle <T P3D.Nozzle : P3D.Nozzle
+ @L0.assert P3D.hasGeometry P3D.Builtin.NozzleGeometryProvider
+P3D.Builtin.HorizontalTank <T P3D.Equipment : P3D.Equipment
+ @L0.assert P3D.hasGeometry P3D.Builtin.HorizontalTankGeometryProvider
+ @L0.assert P3D.hasParameter
+ _ :P3D.Parameter
+ L0.HasName "radius" : L0.String
+ P3D.hasParameterValue 0.2 : L0.Double
+ @L0.assert P3D.hasParameter
+ _ :P3D.Parameter
+ L0.HasName "length" : L0.String
+ P3D.hasParameterValue 1.0 : L0.Double
+P3D.Builtin.VerticalTank <T P3D.Equipment : P3D.Equipment
+ @L0.assert P3D.hasGeometry P3D.Builtin.VerticalTankGeometryProvider
+ @L0.assert P3D.hasParameter
+ _ :P3D.Parameter
+ L0.HasName "radius" : L0.String
+ P3D.hasParameterValue 0.2 : L0.Double
+ @L0.assert P3D.hasParameter
+ _ :P3D.Parameter
+ L0.HasName "height" : L0.String
+ P3D.hasParameterValue 1.0 : L0.Double
+P3D.Builtin.Pump <T P3D.Equipment : P3D.Equipment
+ @L0.assert P3D.hasGeometry P3D.Builtin.PumpGeometryProvider
+ @L0.assert P3D.hasParameter
+ _ :P3D.Parameter
+ L0.HasName "width" : L0.String
+ P3D.hasParameterValue 0.25 : L0.Double
+ @L0.assert P3D.hasParameter
+ _ :P3D.Parameter
+ L0.HasName "length" : L0.String
+ P3D.hasParameterValue 0.5 : L0.Double
+
+P3D.Builtin.BallValve <T P3D.InlineComponent : P3D.InlineComponent
+ @L0.tag P3D.DualConnectedComponent
+ @L0.tag P3D.FixedLengthInlineComponent
+ @L0.assert P3D.hasGeometry P3D.Builtin.BallValveGeometryProvider
+ @L0.assert P3D.hasParameter
+ _ :P3D.Parameter
+ L0.HasName "radius" : L0.String
+ P3D.hasParameterValue 0.1 : L0.Double
+
+P3D.Builtin.CheckValve <T P3D.InlineComponent : P3D.InlineComponent
+ @L0.tag P3D.DualConnectedComponent
+ @L0.tag P3D.FixedLengthInlineComponent
+ @L0.assert P3D.hasGeometry P3D.Builtin.CheckValveGeometryProvider
+ @L0.assert P3D.hasParameter
+ _ :P3D.Parameter
+ L0.HasName "radius" : L0.String
+ P3D.hasParameterValue 0.1 : L0.Double
+
+P3D.Builtin.Cap <T P3D.EndComponent : P3D.InlineComponent
+ @L0.assert P3D.hasGeometry P3D.Builtin.CapGeometryProvider
+ @L0.assert P3D.hasParameter
+ _ :P3D.Parameter
+ L0.HasName "radius" : L0.String
+ P3D.hasParameterValue 0.1 : L0.Double
+