IS:overCrossing

From railML 3 Wiki
Jump to navigation Jump to search

Introduction

Documentation

Syntax

Autoexport from the XML-Schema for element IS:overCrossing of railML® version 3.3
    
Description structure, where something crosses over the railway line. From constructional point of view an over crossing can be a bridge or a tunnel.
Subschema infrastructure
Parents*

overCrossings

Children

name (0..*), isValid (0..*), areaLocation (0..*), linearLocation (0..*), spotLocation (0..*), gmlLocation (0..*), networkLocation (0..*), designator (0..*), typeDesignator (0..*), elementState (0..*), crossesElement (0..*), allowedLoadingGauge (0..*), length (0..*), tunnelResistance (0..1)

Attributes:
  • belongsToParent: reference to a parent over crossing

    - if some information exists in parent and child, then information in child overwrites it in child

    - if some information exists only in parent, then child inherits this information from parent (optional: tRef : xs:IDREF),

  • constructionType: construction type of over crossing: bridge or tunnel (obligatory: tCrossingConstructionTypeExt : xs:string: patterns: other:\w{2,}; consider Use of tOtherEnumerationValue too.)
Possible values:
  • bridge: a structure built to span a physical obstacle (such as a body of water, valley, road, or railway) without blocking the way underneath.
  • tunnel: underground passageway, dug through surrounding soil, earth or rock, and enclosed except for the entrance and exit, commonly at each end.
  • movableBridge: A special movable bridge (undercrossing) which is used for railway traffic passing a waterway underneath the railway line in normal position but allows for temporarily being moved out of the way of the vessels. It is then not passable by trains.
    The normal position is locked and supervised by interlocking system. The other control of the bridge is outside the interlocking system.,

  • verbalConstraint: verbal formulation for any kind of further constraint that applies for using the overCrossing or underCrossing (optional: xs:string : xs:string),

  • id: the file-internal ID of the object (obligatory: tID : xs:ID): compare: Dev:Identities
*Notice:
Elements may have different parent elements. As a consequence they may be used in different contexts.
Please, consider this as well as a user of this Wiki as when developing this documentation further.
Aspects that are only relevant with respect to one of several parents should be explained exclusively in the documentation of the respective parent element.


 

Autoexport from the XML-Schema for element IS:overCrossing of railML® version 3.2
    
Description An over crossing describes a crossing, where something crosses over the railway line. From constructional point of view an over crossing can be a bridge or a tunnel.
Subschema infrastructure
Parents*

overCrossings

Children

name (0..*), isValid (0..*), areaLocation (0..*), linearLocation (0..*), spotLocation (0..*), gmlLocations (0..*), networkLocation (0..*), designator (0..*), external (0..*), typeDesignator (0..*), crossesElement (0..*), allowedLoadingGauge (0..*), length (0..*)

Attributes:
  • belongsToParent: reference to a parent over crossing

    - if some information exists in parent and child, then information in child overwrites it in child

    - if some information exists only in parent, then child inherits this information from parent (optional: tRef : xs:string: patterns: (urn:uuid: )?[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}|\{[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}\}),

  • constructionType: construction type of over crossing: bridge or tunnel (obligatory: tCrossingConstructionTypeExt : xs:string: patterns: other:\w{2,}; consider Use of tOtherEnumerationValue too.)
Possible values:
  • bridge: a structure built to span a physical obstacle (such as a body of water, valley, road, or railway) without blocking the way underneath [wikipedia].
  • tunnel: underground passageway, dug through surrounding soil, earth or rock, and enclosed except for the entrance and exit, commonly at each end [wikipedia].
  • movableBridge: A special movable bridge (undercrossing) which is used for railway traffic passing a waterway underneath the railway line in normal position but allows for temporarily being moved out of the way of the vessels. It is then not passable by trains.
    The normal position is locked and supervised by interlocking system. The other control of the bridge is outside the interlocking system.,

  • verbalConstraint: verbal formulation for any kind of further constraint that applies for using the overCrossing or underCrossing (optional: xs:string : xs:string),

  • id: the identifier of the object; this can be either of type xs:ID or UUID (obligatory: tID : xs:string: patterns: (urn:uuid: )?[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}|\{[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}\}): compare: Dev:Identities
*Notice:
Elements may have different parent elements. As a consequence they may be used in different contexts.
Please, consider this as well as a user of this Wiki as when developing this documentation further.
Aspects that are only relevant with respect to one of several parents should be explained exclusively in the documentation of the respective parent element.


 

Autoexport from the XML-Schema for element IS:overCrossing of railML® version 3.1
    
Description An over crossing describes a crossing, where something crosses over the railway line. From constructional point of view an over crossing can be a bridge or a tunnel.
Subschema infrastructure
Parents*

overCrossings

Children

name (0..*), isValid (0..*), areaLocation (0..*), linearLocation (0..*), spotLocation (0..*), gmlLocations (0..*), networkLocation (0..*), designator (0..*), external (0..*), crossesElement (0..*), allowedLoadingGauge (0..*), length (0..*), any (0..*)

Attributes:
  • constructionType: construction type of over crossing: bridge or tunnel (obligatory: tCrossingConstructionTypeExt : xs:string: patterns: other:\w{2,}; consider Use of tOtherEnumerationValue too.)
Possible values:
  • tunnel
  • bridge,

  • belongsToParent: reference to a parent over crossing (optional: tRef : xs:IDREF: patterns: (urn:uuid: )?[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}|\{[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}\}),

  • verbalConstraint: verbal formulation for any kind of further constraint that applies for using the overCrossing or underCrossing (optional: xs:string : xs:string),

  • id: the identifier of the object; this can be either of type xs:ID or UUID (obligatory: tID : xs:ID: patterns: (urn:uuid: )?[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}|\{[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}\}): compare: Dev:Identities
*Notice:
Elements may have different parent elements. As a consequence they may be used in different contexts.
Please, consider this as well as a user of this Wiki as when developing this documentation further.
Aspects that are only relevant with respect to one of several parents should be explained exclusively in the documentation of the respective parent element.


 


Changes 3.1→3.2

There exists an overview of all changes between railML® 3.1 and railML® 3.2 on page Dev:Changes/3.2.

The children have been changed.

The attributes have been changed.

Changes 3.2→3.3

There exists an overview of all changes between railML® 3.2 and railML® 3.3 on page Dev:Changes/3.3.

The element documentation has been changed.

The children have been changed.

The attributes have been changed.

Semantics

Some basic modelling rules:

- It is possible to refer to an arbitrary number of <crossesElement> from one xCrossing (link to the railML® website)

- the constructional realization (bridge or tunnel) of the xCrossing is implemented as attribute and shall not be included in the name of the <functionalInfrastructure>

- if "something" crosses under the railway track/line, it shall be named an <underCrossing>

- if "something" crosses over the railway track/line, it shall be named an <overCrossing>

- if "something" crosses the railway track/line at same level (usually only roads, streets and ways), it shall be named <levelCrossingIS>

Best Practice / Examples

General approach

Example

in railML® 3 a railway <track> crossing another railway <track> via a bridge can be modelled using the elements <overCrossing> and <underCrossing> [1].

Assume that in the following example, as in the image above, <track> A passes over <track> B (whereas A and B shall be the IDs of <netElement>).

<overcrossing id="ocr1" constructionType="bridge">
<spotLocation netElementRef="B" ... />
<crossesElement type="railway" ref="A" ... />
</overcrossing>

...

<underCrossing id="ucr1" constructionType="bridge">
<spotLocation netElementRef="A" ... />
<crossesElement type="railway" ref="B" ... />
</underCrossing>

Tunnel on a single- vs. double-track line

Introduction

Variant Variant1 Variant2a Variant2b Variant3
Modelling 1 tunnel ; 1 areaLocation 1 tunnel ; 2 linearLocation (per track) 2 tunnels + 1 parent tunnel ; 2 linearLocation (per tunnel) 1 tunnel ; 1 linearLocation

Please see real world example of:

Code examples

Overview
Variant1 vs Variant2a Variant2a vs Variant2b Variant2b vs Variant3 Variant1 vs Invalid variant
Variant 1
        <overCrossing id="ov01" constructionType="tunnel">
          <areaLocation id="ov01_aloc01">
            <associatedNetElement netElementRef="x0.4" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="7950.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="10250.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="x0.5" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="7950.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="10250.0"/>
            </associatedNetElement>
          </areaLocation>
          <areaLocation id="ov01_aloc02">
            <associatedNetElement netElementRef="x1.4" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="7950.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="10250.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="x1.5" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="7950.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="10250.0"/>
            </associatedNetElement>
          </areaLocation>
          <areaLocation id="ov01_aloc03">
            <associatedNetElement netElementRef="x2.2" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="7950.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="10250.0"/>
            </associatedNetElement>
          </areaLocation>
        </overCrossing>
Variant 2a
        <overCrossing id="lc01" constructionType="tunnel">
          <linearLocation id="lc01_lloc01"
                          applicationDirection="both">
            <associatedNetElement netElementRef="x0.4" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01"
                                     measure="7950.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01"
                                   measure="10250.0"/>
            </associatedNetElement>
          </linearLocation>
          <linearLocation id="lc01_lloc02"
                          applicationDirection="both">
            <associatedNetElement netElementRef="x0.5" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01"
                                     measure="7950.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01"
                                   measure="10250.0"/>
            </associatedNetElement>
          </linearLocation>
          <linearLocation id="lc01_lloc03"
                          applicationDirection="both">
            <associatedNetElement netElementRef="x1.4" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01"
                                     measure="7950.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01"
                                   measure="10250.0"/>
            </associatedNetElement>
          </linearLocation>
          <linearLocation id="lc01_lloc04"
                          applicationDirection="both">
            <associatedNetElement netElementRef="x1.5" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01"
                                     measure="7950.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01"
                                   measure="10250.0"/>
            </associatedNetElement>
          </linearLocation>
          <linearLocation id="lc01_lloc05"
                          applicationDirection="both">
            <associatedNetElement netElementRef="x2.2" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01"
                                     measure="7950.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01"
                                   measure="10250.0"/>
            </associatedNetElement>
          </linearLocation>
        </overCrossing>
Variant 2b
        <overCrossing id="lc01" belongsToParent="lc03" constructionType="tunnel">
          <linearLocation id="lc01_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="x0.4" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="7950.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="10250.0"/>
            </associatedNetElement>
          </linearLocation>
          <linearLocation id="lc01_lloc03" applicationDirection="both">
            <associatedNetElement netElementRef="x1.4" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="7950.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="10250.0"/>
            </associatedNetElement>
          </linearLocation>
          <linearLocation id="lc01_lloc05" applicationDirection="both">
            <associatedNetElement netElementRef="x2.2" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="7950.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="10250.0"/>
            </associatedNetElement>
          </linearLocation>
        </overCrossing>
        <overCrossing id="lc02" belongsToParent="lc03" constructionType="tunnel">
          <linearLocation id="lc02_lloc02" applicationDirection="both">
            <associatedNetElement netElementRef="x0.5" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="7950.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="10250.0"/>
            </associatedNetElement>
          </linearLocation>
          <linearLocation id="lc02_lloc04" applicationDirection="both">
            <associatedNetElement netElementRef="x1.5" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="7950.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="10250.0"/>
            </associatedNetElement>
          </linearLocation>
          <linearLocation id="lc02_lloc05" applicationDirection="both">
            <associatedNetElement netElementRef="x2.2" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="7950.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="10250.0"/>
            </associatedNetElement>
          </linearLocation>
        </overCrossing>
        <overCrossing id="lc03" constructionType="tunnel"/>
Variant 3
      <overCrossings>
        <overCrossing id="lc01" constructionType="tunnel">
          <linearLocation id="lc01_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="x0.4" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="7950.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="10250.0"/>
            </associatedNetElement>
          </linearLocation>
          <linearLocation id="lc01_lloc03" applicationDirection="both">
            <associatedNetElement netElementRef="x1.4"  keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="7950.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="10250.0"/>
            </associatedNetElement>
          </linearLocation>
          <linearLocation id="lc01_lloc05" applicationDirection="both">
            <associatedNetElement netElementRef="x2.2" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="7950.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="10250.0"/>
            </associatedNetElement>
          </linearLocation>
        </overCrossing>
Invalid variant
        <overCrossing id="lc01" constructionType="tunnel">
          <linearLocation id="lc01_lloc01" applicationDirection="both">
            <associatedNetElement netElementRef="x0.4" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="7950.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="10250.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="x0.5" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="7950.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="10250.0"/>
            </associatedNetElement>
          </linearLocation>
          <linearLocation id="lc01_lloc02" applicationDirection="both">
            <associatedNetElement netElementRef="x1.4" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="7950.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="10250.0"/>
            </associatedNetElement>
            <associatedNetElement netElementRef="x1.5" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="7950.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="10250.0"/>
            </associatedNetElement>
          </linearLocation>
          <linearLocation id="lc01_lloc03" applicationDirection="both">
            <associatedNetElement netElementRef="x2.2" keepsOrientation="true">
              <linearCoordinateBegin positioningSystemRef="lps01" measure="7950.0"/>
              <linearCoordinateEnd positioningSystemRef="lps01" measure="10250.0"/>
            </associatedNetElement>
          </linearLocation>
        </overCrossing>

Additional Information

Notes

See photos in <crossesElement> for sharpening the conceptualization (understanding) of the definition of this element.


Additional Information

🗒️ This segment provides background information that is not relevant for the certification process.  


Semantics section was requested by [tickets 1]. Examples were reviewed by the coordinator (link to the railML® website) of the Infrastructure subschema on 2025-11-11.

Open Issues

References

  1. Modelling of bridges railML® forum post (link to the railML® website)

Affected Tickets