Skip to content

Commit 81eaaac

Browse files
StephanePoulindiegoalexdiaznaveedkhan8067
authored
Publishing CSPhysical version 01.00.02. (#420)
* Publish version 01.00.02 of CSPhysical schema. The version add the definitions for the ConceptStation rail elements. * Update schema inventory --------- Co-authored-by: Diego Diaz <[email protected]> Co-authored-by: naveedkhan8067 <[email protected]>
1 parent 2ec6caa commit 81eaaac

File tree

2 files changed

+171
-0
lines changed

2 files changed

+171
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,157 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!-- ==================================================================================
3+
| * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
4+
| * See LICENSE.md in the project root for license terms and full copyright notice.
5+
======================================================================================= -->
6+
<ECSchema schemaName="CSPhysical" alias="csp" version="01.00.01" description="iModel Connector schema capturing application data from ConceptStation." xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.2">
7+
8+
<ECSchemaReference name="BisCore" version="01.00.14" alias="bis"/>
9+
<ECSchemaReference name="CoreCustomAttributes" version="01.00.03" alias="CoreCA"/>
10+
<ECSchemaReference name="BisCustomAttributes" version="01.00.00" alias="bisCA"/>
11+
<ECSchemaReference name="AecUnits" version="01.00.03" alias="AECU"/>
12+
<ECSchemaReference name="CSUnits" version="01.00.00" alias="csu"/>
13+
14+
<ECCustomAttributes>
15+
<ProductionStatus xmlns="CoreCustomAttributes.01.00.03">
16+
<SupportedUse>Production</SupportedUse>
17+
</ProductionStatus>
18+
<SchemaLayerInfo xmlns="BisCustomAttributes.01.00.00">
19+
<Value>Application</Value>
20+
</SchemaLayerInfo>
21+
</ECCustomAttributes>
22+
<ECEntityClass typeName="ConceptStationPhysicalElement" modifier="Abstract" displayLabel="ConceptStation Physical Element" description="Base class for ConceptStation elements.">
23+
<BaseClass>bis:PhysicalElement</BaseClass>
24+
</ECEntityClass>
25+
<ECEntityClass typeName="SegmentAssembly" modifier="Abstract" displayLabel="Segment Assembly" description="Base class for groups of components, such as road segments, transition segments, intersections, etc.">
26+
<BaseClass>ConceptStationPhysicalElement</BaseClass>
27+
<BaseClass>bis:IParentElement</BaseClass>
28+
<ECCustomAttributes>
29+
<HiddenClass xmlns="CoreCustomAttributes.01.00.00"/>
30+
</ECCustomAttributes>
31+
<ECProperty propertyName="StartStation" displayLabel="Start Station" typeName="double" kindOfQuantity="csu:STATION" description="The starting station of the assembly along the associated alignment."/>
32+
<ECProperty propertyName="EndStation" displayLabel="End Station" typeName="double" kindOfQuantity="csu:STATION" description="The ending station of the assembly along the associated alignment."/>
33+
</ECEntityClass>
34+
<ECEntityClass typeName="RoadSegment" modifier="Sealed" displayLabel="Road Segment" description="A physical stretch of roadway that groups all components across its width.">
35+
<BaseClass>SegmentAssembly</BaseClass>
36+
</ECEntityClass>
37+
<ECEntityClass typeName="TransitionSegment" modifier="Sealed" displayLabel="Transition Segment" description="A physical stretch of roadway whose composition of components changes from one end to the other.">
38+
<BaseClass>SegmentAssembly</BaseClass>
39+
</ECEntityClass>
40+
<ECEntityClass typeName="Intersection" modifier="Sealed" displayLabel="Intersection" description="A physical stretch of roadway where two or more legs intersect.">
41+
<BaseClass>SegmentAssembly</BaseClass>
42+
</ECEntityClass>
43+
<ECEntityClass typeName="BridgeSegment" modifier="Sealed" displayLabel="Bridge Segment" description="A physical stretch of bridge that groups all components across its width.">
44+
<BaseClass>SegmentAssembly</BaseClass>
45+
</ECEntityClass>
46+
<ECEntityClass typeName="TunnelSegment" modifier="Sealed" displayLabel="Tunnel Segment" description="A physical stretch of tunnel that groups all components across its width.">
47+
<BaseClass>SegmentAssembly</BaseClass>
48+
</ECEntityClass>
49+
<ECEntityClass typeName="HyperloopSegment" modifier="Sealed" displayLabel="Hyperloop Segment" description="A physical stretch of hyperloop that groups all components across its width.">
50+
<BaseClass>SegmentAssembly</BaseClass>
51+
</ECEntityClass>
52+
<ECEntityClass typeName="Furniture" modifier="Sealed" displayLabel="Furniture" description="A physical piece of furniture.">
53+
<BaseClass>ConceptStationPhysicalElement</BaseClass>
54+
</ECEntityClass>
55+
<ECEntityClass typeName="Culvert" modifier="Sealed" displayLabel="Culvert" description="A physical culvert structure.">
56+
<BaseClass>ConceptStationPhysicalElement</BaseClass>
57+
</ECEntityClass>
58+
<ECEntityClass typeName="SurfaceArea" modifier="Sealed" displayLabel="Surface Area" description="A physical structure covering an area.">
59+
<BaseClass>ConceptStationPhysicalElement</BaseClass>
60+
</ECEntityClass>
61+
62+
<!-- Rail schema definintions -->
63+
<ECEntityClass typeName="OLECantilever" modifier="Sealed" displayLabel="OLE Cantilever" description="A physical OLE Cantilever structure.">
64+
<BaseClass>ConceptStationPhysicalElement</BaseClass>
65+
</ECEntityClass>
66+
<ECEntityClass typeName="OLEStructure" modifier="Sealed" displayLabel="OLE Structure" description="A physical OLE Structure.">
67+
<BaseClass>ConceptStationPhysicalElement</BaseClass>
68+
</ECEntityClass>
69+
<ECEntityClass typeName="WireSpan" modifier="Sealed" displayLabel="Wire Span" description="A physical WireSpan structure.">
70+
<BaseClass>ConceptStationPhysicalElement</BaseClass>
71+
</ECEntityClass>
72+
<ECEntityClass typeName="CorridorSegment" modifier="Sealed" displayLabel="Corridor Segment" description="A physical stretch of railway that groups all components across its width.">
73+
<BaseClass>SegmentAssembly</BaseClass>
74+
</ECEntityClass>
75+
<ECEntityClass typeName="TrackSegment" modifier="Sealed" displayLabel="Track Segment" description="A physical stretch of railway that groups all components across its width.">
76+
<BaseClass>SegmentAssembly</BaseClass>
77+
</ECEntityClass>
78+
<ECEntityClass typeName="TurnoutIntersection" modifier="Sealed" displayLabel="Turnout" description="A physical stretch of railway where two or more legs intersect.">
79+
<BaseClass>SegmentAssembly</BaseClass>
80+
</ECEntityClass>
81+
82+
<ECEntityClass typeName="PayItemQuantityAspect" displayLabel="Pay Item Quantity Aspect" description="A bis:ElementMultiAspect that stores common pay item data for ConceptStation elements.">
83+
<BaseClass>bis:ElementMultiAspect</BaseClass>
84+
<ECProperty propertyName="UnitCodeGroupLabel" displayLabel="Category" typeName="string" description="The label of the unit cost group."/>
85+
<ECProperty propertyName="QuantityCode" displayLabel="Code" typeName="string" description="The code of the quantity."/>
86+
<ECProperty propertyName="QuantityLabel" displayLabel="Item" typeName="string" description="The label of the quantity."/>
87+
<ECProperty propertyName="QuantityValue" displayLabel="Quantity" typeName="double" description="The value of the quantity."/>
88+
<ECProperty propertyName="Rate" displayLabel="Rate" typeName="double" description="The rate per unit."/>
89+
<ECProperty propertyName="Cost" displayLabel="Cost" typeName="double" kindOfQuantity="csu:CURRENCY" description="The cost of the quantity."/>
90+
</ECEntityClass>
91+
<ECRelationshipClass typeName="ConceptStationPhysicalElementOwnsPayItemQuantityAspects" strength="embedding" modifier="None">
92+
<BaseClass>bis:ElementOwnsMultiAspects</BaseClass>
93+
<Source multiplicity="(1..1)" roleLabel="owns" polymorphic="true">
94+
<Class class="ConceptStationPhysicalElement"/>
95+
</Source>
96+
<Target multiplicity="(0..*)" roleLabel="is owned by" polymorphic="true">
97+
<Class class="PayItemQuantityAspect"/>
98+
</Target>
99+
</ECRelationshipClass>
100+
<ECEntityClass typeName="PayItemLengthAspect" displayLabel="Pay Item Length Aspect" description="A bis:ElementMultiAspect that stores common pay item data in terms of lengths of segments.">
101+
<BaseClass>PayItemQuantityAspect</BaseClass>
102+
<ECProperty propertyName="QuantityValue" displayLabel="Quantity" typeName="double" kindOfQuantity="AECU:LENGTH" description="The length of the segment."/>
103+
<ECProperty propertyName="Rate" displayLabel="Rate" typeName="double" description="The rate per unit length."/>
104+
</ECEntityClass>
105+
<ECRelationshipClass typeName="ConceptStationPhysicalElementOwnsPayItemLengthAspects" strength="embedding" modifier="None">
106+
<BaseClass>bis:ElementOwnsMultiAspects</BaseClass>
107+
<Source multiplicity="(1..1)" roleLabel="owns" polymorphic="true">
108+
<Class class="ConceptStationPhysicalElement"/>
109+
</Source>
110+
<Target multiplicity="(0..*)" roleLabel="is owned by" polymorphic="true">
111+
<Class class="PayItemLengthAspect"/>
112+
</Target>
113+
</ECRelationshipClass>
114+
<ECEntityClass typeName="PayItemAreaAspect" displayLabel="Pay Item Area Aspect" description="A bis:ElementMultiAspect that stores common pay item data in terms of areas of segments.">
115+
<BaseClass>PayItemQuantityAspect</BaseClass>
116+
<ECProperty propertyName="QuantityValue" displayLabel="Quantity" typeName="double" kindOfQuantity="AECU:AREA" description="The area of the segment."/>
117+
<ECProperty propertyName="Rate" displayLabel="Rate" typeName="double" description="The rate per unit area."/>
118+
</ECEntityClass>
119+
<ECRelationshipClass typeName="ConceptStationPhysicalElementOwnsPayItemAreaAspects" strength="embedding" modifier="None">
120+
<BaseClass>bis:ElementOwnsMultiAspects</BaseClass>
121+
<Source multiplicity="(1..1)" roleLabel="owns" polymorphic="true">
122+
<Class class="ConceptStationPhysicalElement"/>
123+
</Source>
124+
<Target multiplicity="(0..*)" roleLabel="is owned by" polymorphic="true">
125+
<Class class="PayItemAreaAspect"/>
126+
</Target>
127+
</ECRelationshipClass>
128+
<ECEntityClass typeName="PayItemVolumeAspect" displayLabel="Pay Item Volume Aspect" description="A bis:ElementMultiAspect that stores common pay item data in terms of volumes of segments.">
129+
<BaseClass>PayItemQuantityAspect</BaseClass>
130+
<ECProperty propertyName="QuantityValue" displayLabel="Quantity" typeName="double" kindOfQuantity="AECU:VOLUME" description="The volume of the segment."/>
131+
<ECProperty propertyName="Rate" displayLabel="Rate" typeName="double" description="The rate per unit volume."/>
132+
</ECEntityClass>
133+
<ECRelationshipClass typeName="ConceptStationPhysicalElementOwnsPayItemVolumeAspects" strength="embedding" modifier="None">
134+
<BaseClass>bis:ElementOwnsMultiAspects</BaseClass>
135+
<Source multiplicity="(1..1)" roleLabel="owns" polymorphic="true">
136+
<Class class="ConceptStationPhysicalElement"/>
137+
</Source>
138+
<Target multiplicity="(0..*)" roleLabel="is owned by" polymorphic="true">
139+
<Class class="PayItemVolumeAspect"/>
140+
</Target>
141+
</ECRelationshipClass>
142+
<ECEntityClass typeName="PayItemCountAspect" displayLabel="Pay Item Count Aspect" description="A bis:ElementMultiAspect that stores common pay item data in terms of counts for segments.">
143+
<BaseClass>PayItemQuantityAspect</BaseClass>
144+
<ECProperty propertyName="QuantityValue" displayLabel="Quantity" typeName="double" description="The count of the segment."/>
145+
<ECProperty propertyName="Rate" displayLabel="Rate" typeName="double" description="The rate per unit count."/>
146+
</ECEntityClass>
147+
<ECRelationshipClass typeName="ConceptStationPhysicalElementOwnsPayItemCountAspects" strength="embedding" modifier="None">
148+
<BaseClass>bis:ElementOwnsMultiAspects</BaseClass>
149+
<Source multiplicity="(1..1)" roleLabel="owns" polymorphic="true">
150+
<Class class="ConceptStationPhysicalElement"/>
151+
</Source>
152+
<Target multiplicity="(0..*)" roleLabel="is owned by" polymorphic="true">
153+
<Class class="PayItemCountAspect"/>
154+
</Target>
155+
</ECRelationshipClass>
156+
157+
</ECSchema>

Diff for: SchemaInventory.json

+14
Original file line numberDiff line numberDiff line change
@@ -4920,6 +4920,20 @@
49204920
"date": "4/20/2022",
49214921
"dynamic": "No",
49224922
"approved": "Yes"
4923+
},
4924+
{
4925+
"name": "CSPhysical",
4926+
"path": "Domains\\4-Application\\Connectors\\ConceptStation\\Released\\CSPhysical.01.00.01.ecschema.xml",
4927+
"released": true,
4928+
"version": "01.00.01",
4929+
"comment": "",
4930+
"verifier": "",
4931+
"sha1": "8f15a2ef64bb4eaca6ff4b0fb4d2ab52f9bb7145",
4932+
"verified": "Yes",
4933+
"author": "Stephane.Poulin",
4934+
"date": "1/20/2025",
4935+
"dynamic": "No",
4936+
"approved": "Yes"
49234937
}
49244938
],
49254939
"BisCustomAttributes": [

0 commit comments

Comments
 (0)