RoadRailAlignment Schema
Alias: rralign
Version: 2.0.4
Base schema for the Alignment domain in light of Road and Rail applications.
This schema contains the main classes to capture Alignment information primarily used in Road & Rail disciplines.
The following class-diagram depicts the main classes and relationships in the RoadRailAlignment schema:

The following instance-diagram depicts an example of a typical usage of the classes from the RoadRailAlignment schema:

Table of contents
Entity Classes
Alignment (Alignment) Sealed EntityClass 
Reference system to position elements mainly for linear construction works. Provides concrete implementation of an ILinearElement mix-in in the context of Road and Rail disciplines.
Base Class: BisCore:SpatialLocationElement
Alignment instances shall be contained in a SpatialLocationModel or a PhysicalModel, that typically submodel a SpatialLocationPartition or a PhysicalPartition respectively.
If there is any need to organize Alignment instances that drive the design of a linear asset (i.e. Design Alignments) into a separate model further down the model-hierarchy of a BIS repository, it can be done by using a SpatialLocationModel model that submodels a DesignAlignments instance at a higher level.
If there is a need to standardize the categories associated with Alignment instances in an organization, the RoadRailAlignment BIS domain suggests the usage of the Domain-ranked Alignment and Linear categories for Design and Secondary Alignments respectively.
An Alignment shall always have an associated HorizontalAlignment, but VerticalAlignments are optional. When an Alignment has one or more associated VerticalAlignments, it refers to the one used to describe its profile as being the Main Vertical.
The Alignment class inherits its LengthValue property from the ILinearElement mix-in. In the case of Alignments, such property shall store its horizontal length rather than its 3D length. Such horizontal length is computed from the associated HorizontalAlignment instance and cached into the LengthValue property of the Alignment.
An Alignment stores its visible geometry, typically a 3D approximation calculated as a stroked line-string, in its GeometryStream encoded as a Path.
Equivalent to IfcAlignment. The 3D approximation stored in its GeometryStream is equivalent to an IfcGradientCurve.
Properties
| Name | Description | Type | Extended Type |
|---|---|---|---|
| StartStation | double | ||
| StartValue | double | ||
| LengthValue | Length measure value for the Alignment. | double | |
| Horizontal | navigation | ||
| MainVertical | navigation |
Inherited properties
| Name | Description | Type | Extended Type |
|---|---|---|---|
| Model | The bis:Model that contains this bis:Element. | navigation | |
| LastMod | The last modified time of the bis:Element. This is maintained by the core framework and should not be set directly by applications. | dateTime | |
| CodeSpec | The CodeSpec property identifies the bis:CodeSpec used to generate and validate the code value for this bis:Element. The combination of CodeSpec, CodeScope, and CodeValue properties must be unique for each bis:Element instance. | navigation | |
| CodeScope | The CodeScope property identifies the bis:Element that provides the uniqueness scope for the code value. The combination of CodeSpec, CodeScope, and CodeValue properties must be unique for each bis:Element instance. | navigation | |
| CodeValue | Nullable string property that holds the actual text of an Element's Code. The combination of CodeSpec, CodeScope, and CodeValue properties must be unique for each bis:Element instance. | string | |
| UserLabel | An optional friendly name given by the user (as opposed to the formal name stored in the CodeValue property). | string | |
| Parent | The parent bis:Element that owns this bis:Element. | navigation | |
| FederationGuid | The GUID used to federate this bis:Element across repositories. | binary | BeGuid |
| JsonProperties | A string property that users and/or applications can use to persist ad hoc JSON values. | string | Json |
| Category | The bis:SpatialCategory used to categorize this bis:GeometricElement3d | navigation | |
| InSpatialIndex | If true, this element will have an entry in the Spatial Index. | boolean | |
| Origin | The placement origin of this bis:Element. | point3d | |
| Yaw | The Yaw angle (in degrees) of the orientation of this bis:Element. | double | |
| Pitch | The Pitch angle (in degrees) of the orientation of this bis:Element. | double | |
| Roll | The Roll angle (in degrees) of the orientation of this bis:Element. | double | |
| BBoxLow | The 'low' point of the element-aligned bounding box of this bis:Element. | point3d | |
| BBoxHigh | The 'high' point of the element-aligned bounding box of this bis:Element. | point3d | |
| GeometryStream | Binary stream used to persist the geometry of this bis:Element. | binary | GeometryStream |
| TypeDefinition | Points to an instance of some specialization of TypeDefinition, which holds property values that vary per-type rather than per-instance of this Element. | navigation | |
| LinearElementSource | Source element providing this Linear-Element. | navigation |
AlignmentStation (Alignment Station) Sealed EntityClass 
Well-known location along a Linear-Element, with a specific Station value assigned to it.
Base Class: LinearReferencing:ReferentElement
AlignmentStations shall be used to map distances along from start measurements with station values along an Alignment, without forcing the use of relative linear-location measurements. That is, absolute measurements on or after the location of an AlignmentStation along an Alignment can still be mapped to station values at runtime without actually persisting them in the corresponding lr:DistanceExpression.DistanceAlongFromReferent attribute.
AlignmentStations are linearly-located elements along an Alignment. They shall carry the distance along measurement in a LinearlyReferencedAtLocation aspect whereas the mapped station value shall be stored in their Station property. Alignments shall define its initial station value in their StartStation property.
Equivalent to IfcReferent with a non-zero StartDistance attribute and relative measurements used by linear-locations referencing it.
Properties
| Name | Description | Type | Extended Type |
|---|---|---|---|
| Station | double |
Inherited properties
| Name | Description | Type | Extended Type |
|---|---|---|---|
| Model | The bis:Model that contains this bis:Element. | navigation | |
| LastMod | The last modified time of the bis:Element. This is maintained by the core framework and should not be set directly by applications. | dateTime | |
| CodeSpec | The CodeSpec property identifies the bis:CodeSpec used to generate and validate the code value for this bis:Element. The combination of CodeSpec, CodeScope, and CodeValue properties must be unique for each bis:Element instance. | navigation | |
| CodeScope | The CodeScope property identifies the bis:Element that provides the uniqueness scope for the code value. The combination of CodeSpec, CodeScope, and CodeValue properties must be unique for each bis:Element instance. | navigation | |
| CodeValue | Nullable string property that holds the actual text of an Element's Code. The combination of CodeSpec, CodeScope, and CodeValue properties must be unique for each bis:Element instance. | string | |
| UserLabel | An optional friendly name given by the user (as opposed to the formal name stored in the CodeValue property). | string | |
| Parent | The parent bis:Element that owns this bis:Element. | navigation | |
| FederationGuid | The GUID used to federate this bis:Element across repositories. | binary | BeGuid |
| JsonProperties | A string property that users and/or applications can use to persist ad hoc JSON values. | string | Json |
| Category | The bis:SpatialCategory used to categorize this bis:GeometricElement3d | navigation | |
| InSpatialIndex | If true, this element will have an entry in the Spatial Index. | boolean | |
| Origin | The placement origin of this bis:Element. | point3d | |
| Yaw | The Yaw angle (in degrees) of the orientation of this bis:Element. | double | |
| Pitch | The Pitch angle (in degrees) of the orientation of this bis:Element. | double | |
| Roll | The Roll angle (in degrees) of the orientation of this bis:Element. | double | |
| BBoxLow | The 'low' point of the element-aligned bounding box of this bis:Element. | point3d | |
| BBoxHigh | The 'high' point of the element-aligned bounding box of this bis:Element. | point3d | |
| GeometryStream | Binary stream used to persist the geometry of this bis:Element. | binary | GeometryStream |
| TypeDefinition | Points to an instance of some specialization of TypeDefinition, which holds property values that vary per-type rather than per-instance of this Element. | navigation | |
| ReferencedElement | navigation |
AlignmentType (Alignment Type) EntityClass 
Defines a shared set of properties whose values vary per-type of Alignment rather than per-instance.
Base Class: BisCore:SpatialLocationType
Inherited properties
| Name | Description | Type | Extended Type |
|---|---|---|---|
| Model | The bis:Model that contains this bis:Element. | navigation | |
| LastMod | The last modified time of the bis:Element. This is maintained by the core framework and should not be set directly by applications. | dateTime | |
| CodeSpec | The CodeSpec property identifies the bis:CodeSpec used to generate and validate the code value for this bis:Element. The combination of CodeSpec, CodeScope, and CodeValue properties must be unique for each bis:Element instance. | navigation | |
| CodeScope | The CodeScope property identifies the bis:Element that provides the uniqueness scope for the code value. The combination of CodeSpec, CodeScope, and CodeValue properties must be unique for each bis:Element instance. | navigation | |
| CodeValue | Nullable string property that holds the actual text of an Element's Code. The combination of CodeSpec, CodeScope, and CodeValue properties must be unique for each bis:Element instance. | string | |
| UserLabel | An optional friendly name given by the user (as opposed to the formal name stored in the CodeValue property). | string | |
| Parent | The parent bis:Element that owns this bis:Element. | navigation | |
| FederationGuid | The GUID used to federate this bis:Element across repositories. | binary | BeGuid |
| JsonProperties | A string property that users and/or applications can use to persist ad hoc JSON values. | string | Json |
| IsPrivate | If true, this bis:DefinitionElement should not be displayed in the GUI. | boolean | |
| Recipe | navigation |
Instances of AlignmentType provide an additional classification that can be applied to Alignments.
Equivalent to IfcAlignmentTypeEnum.
DesignAlignments EntityClass 
Entry-point element into an AlignmentModel containing Alignments used for design purposes in given Spatial Model.
Base Class: BisCore:SpatialLocationElement
Inherited properties
| Name | Description | Type | Extended Type |
|---|---|---|---|
| Model | The bis:Model that contains this bis:Element. | navigation | |
| LastMod | The last modified time of the bis:Element. This is maintained by the core framework and should not be set directly by applications. | dateTime | |
| CodeSpec | The CodeSpec property identifies the bis:CodeSpec used to generate and validate the code value for this bis:Element. The combination of CodeSpec, CodeScope, and CodeValue properties must be unique for each bis:Element instance. | navigation | |
| CodeScope | The CodeScope property identifies the bis:Element that provides the uniqueness scope for the code value. The combination of CodeSpec, CodeScope, and CodeValue properties must be unique for each bis:Element instance. | navigation | |
| CodeValue | Nullable string property that holds the actual text of an Element's Code. The combination of CodeSpec, CodeScope, and CodeValue properties must be unique for each bis:Element instance. | string | |
| UserLabel | An optional friendly name given by the user (as opposed to the formal name stored in the CodeValue property). | string | |
| Parent | The parent bis:Element that owns this bis:Element. | navigation | |
| FederationGuid | The GUID used to federate this bis:Element across repositories. | binary | BeGuid |
| JsonProperties | A string property that users and/or applications can use to persist ad hoc JSON values. | string | Json |
| Category | The bis:SpatialCategory used to categorize this bis:GeometricElement3d | navigation | |
| InSpatialIndex | If true, this element will have an entry in the Spatial Index. | boolean | |
| Origin | The placement origin of this bis:Element. | point3d | |
| Yaw | The Yaw angle (in degrees) of the orientation of this bis:Element. | double | |
| Pitch | The Pitch angle (in degrees) of the orientation of this bis:Element. | double | |
| Roll | The Roll angle (in degrees) of the orientation of this bis:Element. | double | |
| BBoxLow | The 'low' point of the element-aligned bounding box of this bis:Element. | point3d | |
| BBoxHigh | The 'high' point of the element-aligned bounding box of this bis:Element. | point3d | |
| GeometryStream | Binary stream used to persist the geometry of this bis:Element. | binary | GeometryStream |
| TypeDefinition | Points to an instance of some specialization of TypeDefinition, which holds property values that vary per-type rather than per-instance of this Element. | navigation |
A DesignAlignments instance shall be used when there is a need to organize Alignment instances that drive the design of a linear asset (i.e. Design Alignments) into a separate model further down the model-hierarchy of a BIS repository. In that case, Alignments are organized into a SpatialLocationModel model that submodels a DesignAlignments instance at a higher level.
A DesignAlignments instance, by default, shall use the Domain-ranked Alignment category.
HorizontalAlignment (Horizontal Alignment) EntityClass 
Detailing of an Alignment horizontally (Top/Plan view).
Base Class: BisCore:SpatialLocationElement
A HorizontalAlignment instance shall be contained in a Plan-projection SpatialLocationModel submodel of either a SpatialLocationPartition or a HorizontalAlignments instance. It shall be associated with one Alignment instance via the AlignmentRefersToHorizontal relationship.
A HorizontalAlignment typically has the same CodeValue and Category as its associated Alignment instance.
A HorizontalAlignment stores its visual geometry separately from geometry used for linear-referencing and design purposes, although the two could be identical. The former shall be stored either in its GeometryStream or via child GraphicalElement3d instances, whereas the latter shall be stored in the HorizontalGeometry property, encoded as a Path. Each curve primitive in such Path describes a segment along the HorizontalAlignment as follows:
- Linear segments shall be encoded as LineSegment3ds.
- Circular arc segments shall be encoded as Arc3ds.
- Transition segments (spirals) shall be encoded as TransitionSpiral3ds.
The Z-coordinate of all of these primitives shall be zero.
Equivalent to IfcAlignment.Axis set to either an IfcGradientCurve (via its BaseCurve attribute), an IfcCompositeCurve or an IfcPolyline.
Individual segments along the HorizontalAlignment encoded as a Path are equivalent to IfcCompositeCurveSegments with the following Parent Curves:
- Linear segments encoded as LineSegment3d are equivalent to IfcPolyline.
- Circular arc segments encoded as Arc3d are equivalent to IfcTrimmedCurve based on an IfcCircle.
- Transition segments (spirals) encoded as TransitionSpiral3d are equivalent to the corresponding IfcSpiral subclasses as follows:
| TransitionSpiral3d subclass | TransitionSpiral3d subtype | IFC-equivalent |
|---|---|---|
| IntegratedSpiral3d | "clothoid" | IfcClothoid |
| IntegratedSpiral3d | "cosine" | IfcCosine |
| IntegratedSpiral3d | "sine" | IfcSine |
| IntegratedSpiral3d | "biquadratic" | IfcSecondOrderPolynomialSpiral |
| IntegratedSpiral3d | "bloss" | IfcThirdOrderPolynomialSpiral |
| IntegratedSpiral3d | "vienna" | IfcSeventhOrderPolynomialSpiral |
| DirectSpiral3d | any | Not Available |
Properties
| Name | Description | Type | Extended Type |
|---|---|---|---|
| HorizontalGeometry | Bentley.Geometry.Common.IGeometry |
Inherited properties
| Name | Description | Type | Extended Type |
|---|---|---|---|
| Model | The bis:Model that contains this bis:Element. | navigation | |
| LastMod | The last modified time of the bis:Element. This is maintained by the core framework and should not be set directly by applications. | dateTime | |
| CodeSpec | The CodeSpec property identifies the bis:CodeSpec used to generate and validate the code value for this bis:Element. The combination of CodeSpec, CodeScope, and CodeValue properties must be unique for each bis:Element instance. | navigation | |
| CodeScope | The CodeScope property identifies the bis:Element that provides the uniqueness scope for the code value. The combination of CodeSpec, CodeScope, and CodeValue properties must be unique for each bis:Element instance. | navigation | |
| CodeValue | Nullable string property that holds the actual text of an Element's Code. The combination of CodeSpec, CodeScope, and CodeValue properties must be unique for each bis:Element instance. | string | |
| UserLabel | An optional friendly name given by the user (as opposed to the formal name stored in the CodeValue property). | string | |
| Parent | The parent bis:Element that owns this bis:Element. | navigation | |
| FederationGuid | The GUID used to federate this bis:Element across repositories. | binary | BeGuid |
| JsonProperties | A string property that users and/or applications can use to persist ad hoc JSON values. | string | Json |
| Category | The bis:SpatialCategory used to categorize this bis:GeometricElement3d | navigation | |
| InSpatialIndex | If true, this element will have an entry in the Spatial Index. | boolean | |
| Origin | The placement origin of this bis:Element. | point3d | |
| Yaw | The Yaw angle (in degrees) of the orientation of this bis:Element. | double | |
| Pitch | The Pitch angle (in degrees) of the orientation of this bis:Element. | double | |
| Roll | The Roll angle (in degrees) of the orientation of this bis:Element. | double | |
| BBoxLow | The 'low' point of the element-aligned bounding box of this bis:Element. | point3d | |
| BBoxHigh | The 'high' point of the element-aligned bounding box of this bis:Element. | point3d | |
| GeometryStream | Binary stream used to persist the geometry of this bis:Element. | binary | GeometryStream |
| TypeDefinition | Points to an instance of some specialization of TypeDefinition, which holds property values that vary per-type rather than per-instance of this Element. | navigation |
HorizontalAlignments EntityClass 
Horizontal/Top perspective on Alignments in an AlignmentModel that will be broken down in more detail in a separate HorizontalAlignmentModel.
Base Class: BisCore:SpatialLocationElement
Inherited properties
| Name | Description | Type | Extended Type |
|---|---|---|---|
| Model | The bis:Model that contains this bis:Element. | navigation | |
| LastMod | The last modified time of the bis:Element. This is maintained by the core framework and should not be set directly by applications. | dateTime | |
| CodeSpec | The CodeSpec property identifies the bis:CodeSpec used to generate and validate the code value for this bis:Element. The combination of CodeSpec, CodeScope, and CodeValue properties must be unique for each bis:Element instance. | navigation | |
| CodeScope | The CodeScope property identifies the bis:Element that provides the uniqueness scope for the code value. The combination of CodeSpec, CodeScope, and CodeValue properties must be unique for each bis:Element instance. | navigation | |
| CodeValue | Nullable string property that holds the actual text of an Element's Code. The combination of CodeSpec, CodeScope, and CodeValue properties must be unique for each bis:Element instance. | string | |
| UserLabel | An optional friendly name given by the user (as opposed to the formal name stored in the CodeValue property). | string | |
| Parent | The parent bis:Element that owns this bis:Element. | navigation | |
| FederationGuid | The GUID used to federate this bis:Element across repositories. | binary | BeGuid |
| JsonProperties | A string property that users and/or applications can use to persist ad hoc JSON values. | string | Json |
| Category | The bis:SpatialCategory used to categorize this bis:GeometricElement3d | navigation | |
| InSpatialIndex | If true, this element will have an entry in the Spatial Index. | boolean | |
| Origin | The placement origin of this bis:Element. | point3d | |
| Yaw | The Yaw angle (in degrees) of the orientation of this bis:Element. | double | |
| Pitch | The Pitch angle (in degrees) of the orientation of this bis:Element. | double | |
| Roll | The Roll angle (in degrees) of the orientation of this bis:Element. | double | |
| BBoxLow | The 'low' point of the element-aligned bounding box of this bis:Element. | point3d | |
| BBoxHigh | The 'high' point of the element-aligned bounding box of this bis:Element. | point3d | |
| GeometryStream | Binary stream used to persist the geometry of this bis:Element. | binary | GeometryStream |
| TypeDefinition | Points to an instance of some specialization of TypeDefinition, which holds property values that vary per-type rather than per-instance of this Element. | navigation |
A HorizontalAlignments instance shall be used when there is a need to organize HorizontalAlignment instances into a separate model further down the model-hierarchy of a BIS repository. In that case, HorizontalAlignment instances can be contained in a SpatialLocationModel model that submodels a HorizontalAlignments instance at a higher level.
Each HorizontalAlignments instance shall set its CodeValue property to "Horizontal Alignments", and by default, shall use the Domain-ranked Alignment category.
VerticalAlignment (Vertical Alignment) EntityClass 
Detailing of a Alignment or a portion of it, vertically along its path.
Base Class: BisCore:GeometricElement2d
A VerticalAlignment instance shall be contained in a VerticalAlignmentModel submodel of the Alignment instance it is associated with. Only one VerticalAlignment instance is considered being the Main Vertical for a given Alignment. Other VerticalAlignments associated with the same Alignment are typically used to describe the profile of assets designed along the same Alignment, e.g. the profile of the bottom of a Road ditch.
A VerticalAlignment by default use the Domain-ranked Vertical Alignment Category.
A VerticalAlignment stores its visual geometry separately from geometry used for linear-referencing and design purposes, although the two could be identical. The former shall be stored either in its GeometryStream or via child GraphicalElement2d instances, whereas the latter shall be stored in the VerticalGeometry property, encoded as a Path. Each curve primitive in such Path describes a segment along the VerticalAlignment as follows:
- Linear segments shall be encoded as LineSegment3ds.
- Circular arc segments shall be encoded as Arc3ds.
- Transition segments (parabolic) shall be encoded as BSplineCurve3ds.
The X-coordinate of all of these primitives shall indicate distance along measurements in terms of the corresponding HorizontalAlignment. That is, an X-coordinate = 0.0 corresponds to the start location of its HorizontalAlignment. Y-coordinates shall indicate elevation at such location. Z-coordinate of all of these primitives shall be zero.
It is not uncommon for a VerticalAlignment instance to capture elevations only for a partial range of its corresponding HorizontalAlignment instance. Note that the opposite situation, a VerticalAlignment instance capturing elevations before or after the range of its corresponding HorizontalAlignment, while possible in theory is typically considered invalid in practice. This schema leaves the decision to validate against such case to particular implementations, however.
Equivalent to IfcAlignment.Axis set to an IfcGradientCurve (via its Segments attribute).
Individual segments along the VerticalAlignment encoded as a Path are equivalent to IfcCurveSegments.
Properties
| Name | Description | Type | Extended Type |
|---|---|---|---|
| VerticalGeometry | Geometry primitives accurately describing the vertical alignment. X-values mean distance-along the HorizontalAlignment; Y-values provide elevation information; Z-values are always zero. | Bentley.Geometry.Common.IGeometry |
Inherited properties
| Name | Description | Type | Extended Type |
|---|---|---|---|
| Model | The bis:Model that contains this bis:Element. | navigation | |
| LastMod | The last modified time of the bis:Element. This is maintained by the core framework and should not be set directly by applications. | dateTime | |
| CodeSpec | The CodeSpec property identifies the bis:CodeSpec used to generate and validate the code value for this bis:Element. The combination of CodeSpec, CodeScope, and CodeValue properties must be unique for each bis:Element instance. | navigation | |
| CodeScope | The CodeScope property identifies the bis:Element that provides the uniqueness scope for the code value. The combination of CodeSpec, CodeScope, and CodeValue properties must be unique for each bis:Element instance. | navigation | |
| CodeValue | Nullable string property that holds the actual text of an Element's Code. The combination of CodeSpec, CodeScope, and CodeValue properties must be unique for each bis:Element instance. | string | |
| UserLabel | An optional friendly name given by the user (as opposed to the formal name stored in the CodeValue property). | string | |
| Parent | The parent bis:Element that owns this bis:Element. | navigation | |
| FederationGuid | The GUID used to federate this bis:Element across repositories. | binary | BeGuid |
| JsonProperties | A string property that users and/or applications can use to persist ad hoc JSON values. | string | Json |
| Category | The bis:DrawingCategory used to categorize this bis:GeometricElement2d instance. | navigation | |
| Origin | The placement origin of this bis:Element. | point2d | |
| Rotation | The placement rotation (in degrees) of this bis:Element. | double | |
| BBoxLow | The 'low' point of the element-aligned bounding box of this bis:Element. | point2d | |
| BBoxHigh | The 'high' point of the element-aligned bounding box of this bis:Element. | point2d | |
| GeometryStream | Binary stream used to persist the geometry of this bis:Element. | binary | GeometryStream |
| TypeDefinition | Points to an instance of some specialization of TypeDefinition, which holds property values that vary per-type rather than by instance of this Element. | navigation |
VerticalAlignmentModel EntityClass 
Container for all Vertical Alignments breaking down an Alignment.
Base Class: BisCore:GeometricModel2d
Inherited properties
| Name | Description | Type | Extended Type |
|---|---|---|---|
| ParentModel | The parent bis:Model contains the bis:Element that this bis:Model is sub-modeling. | navigation | |
| ModeledElement | The bis:Element that this bis:Model is sub-modeling. This bis:Model models the same Entity as the sub-Modeled bis:Element, but at a finer granularity. | navigation | |
| IsPrivate | If IsPrivate is true then this bis:Model should not appear in lists shown to the user. | boolean | |
| IsTemplate | If IsTemplate is true then this bis:Model is used as a template for creating new instances. | boolean | |
| JsonProperties | A string property that users and/or applications can use to persist ad hoc JSON values. | string | Json |
| LastMod | The last time any element in this Model was modified. | dateTime | |
| GeometryGuid | A GUID that changes whenever any element in this GeometricModel has a change to its geometry. | binary | BeGuid |
| GlobalOrigin | The actual coordinates of (0,0) in modeling coordinates. An offset applied to all modeling coordinates. | point2d |
Relationship Classes
AlignmentIsOfType RelationshipClass 
A type-instance relation; one that indicates that the specific Alignment is an instance of the defined AlignmentType.
Base Class: BisCore:SpatialLocationIsOfType
Strength: Referencing
Strength Direction: Forward
Source
Target
AlignmentOwnsReferents RelationshipClass 
Relationship definitiong ownership from an Alignment to its child Referents.
Base Class: BisCore:ElementOwnsChildElements
Strength: Embedding
Strength Direction: Forward
Source
Target
AlignmentRefersToHorizontal Sealed RelationshipClass 
Relationship enabling an Alignment to refer to its Horizontal alignment.
Strength: Referencing
Strength Direction: Forward
Source
Target
AlignmentRefersToMainVertical Sealed RelationshipClass 
Relationship enabling an Alignment to refer to its main Vertical alignment.
Strength: Referencing
Strength Direction: Forward
Source
Target
HorizontalAlignmentOwnsSegmentGraphics RelationshipClass 
Relationship definitiong ownership from a HorizontalAlignment to child bis:GraphicalElement3d's, when control over the symbology of its segments is achieved via separate bis:Element's.
Base Class: BisCore:ElementOwnsChildElements
Strength: Embedding
Strength Direction: Forward
The HorizontalAlignmentOwnsSegmentGraphics relationship is used when the visual geometry (also referred to as symbology) of a HorizontalAlignment is captured via child bis:GraphicalElement3d instances. That strategy enables control over symbology settings via the default SubCategory of the associated SpatialCategory for each graphical segment.
Source
Target
HorizontalModelBreaksDownAlignments Sealed RelationshipClass 
Relationship enabling break-down of an AlignmentModel (3d) into a 2d model focusing on Horizontal/Plan-view of them.
Base Class: BisCore:ModelModelsElement
Strength: Embedding
Strength Direction: Backward
Source
Target
SpatialLocationModelBreaksDownDesignAlignments Sealed RelationshipClass 
Relates a bis:SpatialLocationModel to the DesignAlignments that it sub-models.
Base Class: BisCore:ModelModelsElement
Strength: Embedding
Strength Direction: Backward
Source
Target
VerticalAlignmentOwnsSegmentGraphics RelationshipClass 
Relationship definitiong ownership from a VerticalAlignment to child bis:GraphicalElement2d's, when control over the symbology of its segments is achieved via separate bis:Element's.
Base Class: BisCore:ElementOwnsChildElements
Strength: Embedding
Strength Direction: Forward
The VerticalAlignmentOwnsSegmentGraphics relationship is used when the visual geometry (also referred to as symbology) of a VerticalAlignment is captured via child bis:GraphicalElement2d instances. That strategy enables control over symbology settings via the default SubCategory of the associated DrawingCategory for each graphical segment.
Source
Target
VerticalModelBreaksDownAlignment Sealed RelationshipClass 
Relationship enabling break-downs of an Alignment into Vertical-Alignments.
Base Class: BisCore:ModelModelsElement
Strength: Embedding
Strength Direction: Backward
Source
Target
Kind Of Quantities
ANGLE (Road & Rail Angle) KindOfQuantity 
DEPRECATED: Refer to KindOfQuantities defined in the new CivilUnits schema instead
Relative Error: 0.0001
Persistence Unit: RAD
Presentation Formats
- DefaultRealU(2) [ ARC_DEG ]
- AngleDMS
AREA (Road & Rail Area) KindOfQuantity 
DEPRECATED: Refer to KindOfQuantities defined in the new CivilUnits schema instead
Relative Error: 0.0001
Persistence Unit: SQ_M
Presentation Formats
- DefaultRealU(2) [ SQ_M ]
- DefaultRealU(2) [ SQ_FT ]
BEARING (Road & Rail Bearing) KindOfQuantity 
DEPRECATED: Refer to KindOfQuantities defined in the new CivilUnits schema instead
Relative Error: 0.0001
Persistence Unit: RAD
Presentation Formats
LENGTH (Road & Rail Alignment Length) KindOfQuantity 
DEPRECATED: Refer to KindOfQuantities defined in the new CivilUnits schema instead
Relative Error: 0.0001
Persistence Unit: M
Presentation Formats
- DefaultRealU(2) [ M ]
- DefaultRealU(2) [ FT ]
SLOPE (Road & Rail Slope) KindOfQuantity 
DEPRECATED: Refer to KindOfQuantities defined in the new CivilUnits schema instead
Relative Error: 0.0001
Persistence Unit: M_PER_M
Presentation Formats
- DefaultRealU(2) [ M_PER_M ]
- DefaultRealU(2) [ FT_PER_FT ]
STATION (Road & Rail Station) KindOfQuantity 
DEPRECATED: Refer to KindOfQuantities defined in the new CivilUnits schema instead
Relative Error: 0.0001
Persistence Unit: M
Presentation Formats
- StationZ_1000_3 [ M ]
- StationZ_100_2 [ FT ]
- DefaultRealU(2) [ M ]
- DefaultRealU(2) [ FT ]
VELOCITY (Road & Rail Velocity) KindOfQuantity 
DEPRECATED: Refer to KindOfQuantities defined in the new CivilUnits schema instead
Relative Error: 0.0001
Persistence Unit: M_PER_SEC
Presentation Formats
- DefaultRealU(2) [ KM_PER_HR ]
- DefaultRealU(2) [ MPH ]
Last Updated: 28 October, 2025