Skip to content

Commit

Permalink
Merge branch 'hydraulic-release' of https://github.com/iTwin/bis-schemas
Browse files Browse the repository at this point in the history
 into hydraulic-release
  • Loading branch information
BenTWhite committed Dec 11, 2024
2 parents 173e731 + d85d638 commit 632e694
Show file tree
Hide file tree
Showing 18 changed files with 967 additions and 38 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
| * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
| * See LICENSE.md in the project root for license terms and full copyright notice.
======================================================================================= -->
<ECSchema schemaName="AecValueDefinitions" alias="aecvdef" version="01.00.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.2" displayLabel="Design Modeling Value Definitions" description="Schema declaring single logical value definitions used across AEC schemas.">
<ECSchema schemaName="AecValueDefinitions" alias="aecvdef" version="01.00.01" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.2" displayLabel="Design Modeling Value Definitions" description="Schema declaring single logical value definitions used across AEC schemas.">
<ECSchemaReference name="CoreCustomAttributes" version="01.00.03" alias="CoreCA"/>
<ECSchemaReference name="BisCustomAttributes" version="01.00.00" alias="bisCA"/>
<ECSchemaReference name="AecUnits" version="01.00.03" alias="AECU"/>
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- ==================================================================================
| * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
| * See LICENSE.md in the project root for license terms and full copyright notice.
======================================================================================= -->
<ECSchema schemaName="AecValueDefinitions" alias="aecvdef" version="01.00.00" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.2" displayLabel="Design Modeling Value Definitions" description="Schema declaring single logical value definitions used across AEC schemas.">
<ECSchemaReference name="CoreCustomAttributes" version="01.00.03" alias="CoreCA"/>
<ECSchemaReference name="BisCustomAttributes" version="01.00.00" alias="bisCA"/>
<ECSchemaReference name="AecUnits" version="01.00.03" alias="AECU"/>

<ECCustomAttributes>
<ProductionStatus xmlns="CoreCustomAttributes.01.00.03">
<SupportedUse>FieldTesting</SupportedUse>
</ProductionStatus>
<SchemaLayerInfo xmlns="BisCustomAttributes.01.00.00">
<Value>Common</Value>
</SchemaLayerInfo>
</ECCustomAttributes>

<ECStructClass typeName="BoundedPressureValue" description="Structure to be used by properties that capture a minimum and maximum numeric pressure values, representing lower and upper bound pressure values (inclusive). A set point pressure value can be provided as a typical pressure value for the property.">
<ECProperty propertyName="LowerBound" typeName="double" displayLabel="Lower Bound" kindOfQuantity="AECU:PRESSURE" />
<ECProperty propertyName="UpperBound" typeName="double" displayLabel="Upper Bound" kindOfQuantity="AECU:PRESSURE" />
<ECProperty propertyName="SetPoint" typeName="double" displayLabel="Set Point" kindOfQuantity="AECU:PRESSURE" />
</ECStructClass>

<ECStructClass typeName="BoundedTemperatureValue" description="Structure to be used by properties that capture a minimum and maximum numeric temperature values, representing lower and upper bound temperature values (inclusive). A set point temperature value can be provided as a typical temperature value for the property.">
<ECProperty propertyName="LowerBound" typeName="double" displayLabel="Lower Bound" kindOfQuantity="AECU:TEMPERATURE" />
<ECProperty propertyName="UpperBound" typeName="double" displayLabel="Upper Bound" kindOfQuantity="AECU:TEMPERATURE" />
<ECProperty propertyName="SetPoint" typeName="double" displayLabel="Set Point" kindOfQuantity="AECU:TEMPERATURE" />
</ECStructClass>
</ECSchema>
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
| * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
| * See LICENSE.md in the project root for license terms and full copyright notice.
======================================================================================= -->
<ECSchema schemaName="DistributionSystems" alias="dsys" version="01.00.02" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.2" description="A schema for defining distribution systems.">
<ECSchema schemaName="DistributionSystems" alias="dsys" version="01.00.03" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.2" description="A schema for defining distribution systems.">
<ECSchemaReference name="BisCore" version="01.00.14" alias="bis" />
<ECSchemaReference name="CoreCustomAttributes" version="01.00.03" alias="CoreCA"/>
<ECSchemaReference name="BisCustomAttributes" version="01.00.00" alias="bisCA"/>
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,152 @@
<?xml version="1.0" encoding="UTF-8"?>
<!-- ==================================================================================
| * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
| * See LICENSE.md in the project root for license terms and full copyright notice.
======================================================================================= -->
<ECSchema schemaName="DistributionSystems" alias="dsys" version="01.00.02" xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.2" description="A schema for defining distribution systems.">
<ECSchemaReference name="BisCore" version="01.00.14" alias="bis" />
<ECSchemaReference name="CoreCustomAttributes" version="01.00.03" alias="CoreCA"/>
<ECSchemaReference name="BisCustomAttributes" version="01.00.00" alias="bisCA"/>
<ECSchemaReference name="ECDbMap" version="02.00.02" alias="ecdbmap"/>

<ECCustomAttributes>
<ProductionStatus xmlns="CoreCustomAttributes.01.00.03">
<SupportedUse>FieldTesting</SupportedUse>
</ProductionStatus>
<SchemaLayerInfo xmlns="BisCustomAttributes.01.00.00">
<Value>Common</Value>
</SchemaLayerInfo>
</ECCustomAttributes>

<ECEntityClass typeName="DistributionSystem" modifier="none" displayLabel="Distribution System" description="A network designed to receive, store, maintain, distribute, or control the flow of a distribution media.">
<!-- Note: Should be considered abstract, but is concrete for legacy/compatibility reasons. -->
<BaseClass>bis:PhysicalSystem</BaseClass>
</ECEntityClass>

<ECEntityClass typeName="IDistributionElement" modifier="Abstract" displayLabel="Distribution Element" description="An interface that can be mixed-into a bis:PhysicalElement to indicate that it can be a member of a DistributionSystem.">
<BaseClass>bis:IParentElement</BaseClass>
<ECCustomAttributes>
<IsMixin xmlns="CoreCustomAttributes.01.00.03">
<AppliesToEntityClass>bis:PhysicalElement</AppliesToEntityClass>
</IsMixin>
</ECCustomAttributes>
</ECEntityClass>

<ECRelationshipClass typeName="DistributionSystemGroupsDistributionElements" strength="referencing" modifier="None" displayLabel="Distribution System Groups Distribution Elements" description="A relationship used to identify the dsys:IDistributionElements that are members of a DistributionSystem.">
<BaseClass>bis:PhysicalSystemGroupsMembers</BaseClass>
<Source multiplicity="(0..*)" roleLabel="groups" polymorphic="true">
<Class class="DistributionSystem"/>
</Source>
<Target multiplicity="(0..*)" roleLabel="is grouped by" polymorphic="true">
<Class class="IDistributionElement"/>
</Target>
</ECRelationshipClass>

<ECEntityClass typeName="IDistributionControlElement" modifier="Abstract" displayLabel="Distribution Control Element" description="An interface that can be mixed-into a bis:PhysicalElement to indicate that it is an IDistributionElement that controls other elements of a distribution system.">
<BaseClass>IDistributionElement</BaseClass>
<ECCustomAttributes>
<IsMixin xmlns="CoreCustomAttributes.01.00.03">
<AppliesToEntityClass>bis:PhysicalElement</AppliesToEntityClass>
</IsMixin>
</ECCustomAttributes>
</ECEntityClass>

<ECEntityClass typeName="IDistributionSensorElement" modifier="Abstract" displayLabel="Distribution Sensor Element" description="An interface that can be mixed-into a bis:PhysicalElement to indicate that it is an IDistributionElement that observes conditions that affect a distribution system.">
<BaseClass>IDistributionElement</BaseClass>
<ECCustomAttributes>
<IsMixin xmlns="CoreCustomAttributes.01.00.03">
<AppliesToEntityClass>bis:PhysicalElement</AppliesToEntityClass>
</IsMixin>
</ECCustomAttributes>
</ECEntityClass>

<ECEntityClass typeName="IDistributionFlowElement" modifier="Abstract" displayLabel="Distribution Flow Element" description="An interface that can be mixed-into a bis:PhysicalElement to indicate that it is an IDistributionElement that facilitates the distribution of energy or matter, such as air, water or power.">
<BaseClass>IDistributionElement</BaseClass>
<ECCustomAttributes>
<IsMixin xmlns="CoreCustomAttributes.01.00.03">
<AppliesToEntityClass>bis:PhysicalElement</AppliesToEntityClass>
</IsMixin>
</ECCustomAttributes>
</ECEntityClass>

<ECEntityClass typeName="IDistributionElementType" modifier="Abstract" displayLabel="Distribution Element Type" description="An interface that can be mixed-into a bis:PhysicalType that defines a shared set of properties whose values vary per-type of IDistributionElement rather than per-instance.">
<ECCustomAttributes>
<IsMixin xmlns="CoreCustomAttributes.01.00.03">
<AppliesToEntityClass>bis:PhysicalType</AppliesToEntityClass>
</IsMixin>
</ECCustomAttributes>
</ECEntityClass>

<ECRelationshipClass typeName="DistributionElementTypeUsesPortTypes" strength="referencing" modifier="Abstract" description="Relationship that associates an IDistributionElementType with the DistributionPortTypes it uses.">
<BaseClass>bis:ElementRefersToElements</BaseClass>
<Source multiplicity="(0..*)" polymorphic="true" roleLabel="uses">
<Class class="IDistributionElementType"/>
</Source>
<Target multiplicity="(0..*)" polymorphic="true" roleLabel="is used by">
<Class class="DistributionPortType"/>
</Target>
<ECProperty propertyName="PortCount" typeName="int" displayLabel="Port Count" description="Port-instance count of the referenced DistributionPortType used by the IDistributionElementType."/>
</ECRelationshipClass>

<ECEnumeration typeName="PortDirection" backingTypeName="int" isStrict="true">
<ECEnumerator name="Undefined" value="0" displayLabel="Undefined"/>
<ECEnumerator name="Input" value="1" displayLabel="Input"/>
<ECEnumerator name="Output" value="2" displayLabel="Output"/>
<ECEnumerator name="InputOrOutput" value="3" displayLabel="Input Or Output"/>
<ECEnumerator name="InputAndOutput" value="4" displayLabel="Input And Output"/>
</ECEnumeration>

<ECEntityClass typeName="DistributionPort" modifier="Abstract" displayLabel="Distribution Port" description="An inlet or outlet of a distribution element through which a particular substance may flow.">
<BaseClass>bis:SpatialLocationElement</BaseClass>
<ECProperty propertyName="Description" typeName="string" displayLabel="Description" description="A human-readable description of the Distribution Port"/>
<ECProperty propertyName="Direction" typeName="PortDirection" displayLabel="Direction" description="Direction of the port: e.g. Input, Output, InputOrOutput, InputAndOutput."/>
</ECEntityClass>

<ECRelationshipClass typeName="DistributionElementOwnsDistributionPorts" strength="embedding" modifier="Abstract" description="A relationship that relates child distribution ports to parent distribution element.">
<BaseClass>bis:ElementOwnsChildElements</BaseClass>
<Source multiplicity="(1..1)" roleLabel="owns" polymorphic="true">
<Class class="IDistributionElement"/>
</Source>
<Target multiplicity="(1..*)" roleLabel="is owned by" polymorphic="true">
<Class class="DistributionPort"/>
</Target>
</ECRelationshipClass>

<ECEntityClass typeName="DistributionPortType" modifier="Abstract" displayLabel="Distribution Port Type" description="Defines a shared set of properties whose values vary per-type of IDistributionElement rather than per-instance.">
<BaseClass>bis:SpatialLocationType</BaseClass>
</ECEntityClass>

<ECEntityClass typeName="PortConnection" modifier="None" displayLabel="Port Connection" description="An element that indicates a connection between 2 distribution ports.">
<BaseClass>bis:InformationRecordElement</BaseClass>
</ECEntityClass>

<ECRelationshipClass typeName="PortConnectsToPorts" strength="referencing" modifier="Abstract" description="Indicates that the DistributionPort is connected to other DistributionPorts.">
<BaseClass>bis:ElementRefersToElements</BaseClass>
<Source multiplicity="(0..*)" roleLabel="connects to" polymorphic="true">
<Class class="DistributionPort"/>
</Source>
<Target multiplicity="(0..*)" roleLabel="is connected by" polymorphic="true">
<Class class="DistributionPort"/>
</Target>
<ECNavigationProperty propertyName="PortConnection" relationshipName="PortConnectionObjectifiesConnection" direction="backward" description="The PortConnection instance objectifying this connection."/>
</ECRelationshipClass>

<ECRelationshipClass typeName="PortConnectionObjectifiesConnection" strength="referencing" modifier="None" description="Indicates that the connection between DistributionPorts is objectified by a PortConnection element.">
<Source multiplicity="(0..1)" roleLabel="objectifies" polymorphic="true">
<Class class="PortConnection"/>
</Source>
<Target multiplicity="(0..*)" roleLabel="is objectified by" polymorphic="true">
<Class class="PortConnectsToPorts"/>
</Target>
</ECRelationshipClass>

<ECRelationshipClass typeName="PhysicalElementRealizesConnection" strength="referencing" modifier="None" description="Indicates the Physical Element(s) that realize a Connection between DistributionPorts.">
<BaseClass>bis:ElementRefersToElements</BaseClass>
<Source multiplicity="(0..*)" roleLabel="realizes" polymorphic="true">
<Class class="bis:PhysicalElement"/>
</Source>
<Target multiplicity="(0..1)" roleLabel="is realized by" polymorphic="true">
<Class class="PortConnection"/>
</Target>
</ECRelationshipClass>
</ECSchema>
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
| * Copyright (c) Bentley Systems, Incorporated. All rights reserved.
| * See LICENSE.md in the project root for license terms and full copyright notice.
======================================================================================= -->
<ECSchema schemaName="NetworkTopology" alias="net" version="01.00.00" description="Base schema for Network Topology." xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.2">
<ECSchema schemaName="NetworkTopology" alias="net" version="01.00.01" description="Base schema for Network Topology." xmlns="http://www.bentley.com/schemas/Bentley.ECXML.3.2">
<ECSchemaReference name="CoreCustomAttributes" version="01.00.03" alias="CoreCA"/>
<ECSchemaReference name="BisCustomAttributes" version="01.00.00" alias="bisCA"/>
<ECSchemaReference name="BisCore" version="01.00.14" alias="bis"/>
Expand Down
Loading

0 comments on commit 632e694

Please sign in to comment.