IS:underCrossing

From railML 3 Wiki
Revision as of 12:40, 17 November 2023 by RailML Orga Ontology (talk | contribs) (added constraint and example)
Jump to navigation Jump to search

Introduction

Documentation

Syntax

Autoexport from the XML-Schema for element IS:underCrossing of railML® version 3.2
Documentation An under crossing describes a crossing, where something crosses under the railway line. The most common constructional type of an under crossing is a bridge.
Subschema infrastructure
Parents* underCrossings
Children allowedWeightLimit (0..*), areaLocation (0..*), crossesElement (0..*), designator (0..*), external (0..*), gmlLocations (0..*), isValid (0..*), length (0..*), linearLocation (0..*), name (0..*), networkLocation (0..*), spotLocation (0..*), typeDesignator (0..*)
Attributes:
  • belongsToParent: reference to a parent under 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; 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 under crossing: bridge or tunnel (obligatory; xs:string; patterns: other:w{2,})
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),

  • id: the identifier of the object; this can be either of type xs:ID or UUID (obligatory; 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:underCrossing of railML® version 3.1
Documentation An under crossing describes a crossing, where something crosses under the railway line. The most common constructional type of an under crossing is a bridge.
Subschema infrastructure
Parents* underCrossings
Children allowedWeightLimit (0..*), any (0..*), areaLocation (0..*), crossesElement (0..*), designator (0..*), external (0..*), gmlLocations (0..*), isValid (0..*), length (0..*), linearLocation (0..*), name (0..*), networkLocation (0..*), spotLocation (0..*)
Attributes:
  • constructionType: construction type of under crossing: bridge or tunnel (obligatory; xs:string; patterns: other:w{2,})
Possible values:
  • tunnel
  • bridge,

  • belongsToParent: reference to a parent under crossing (optional; 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),

  • id: the identifier of the object; this can be either of type xs:ID or UUID (obligatory; 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

The children have changed.

The attributes have been changed.

Semantics

https://development.railml.org/railml/version3/-/issues/255

Some basic modelling rules:

- It is possible to refer to an arbitrary number of "crossed elements" from one xCrossing

- the constructional realization (bridge or tunnel) of the xCrossing is implemented as attribute and shall not be included in the name of the functional infrastructure element

- 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 levelCrossing


Private-cloud-icon.png Proposed Semantic Constraint "IS:XXX":
 
should only have a <crossesElement> child of type railway when your railway line is crossing itself (not on the same level!).
 
Proposed on October 23rd 2023
FIXME: add Link to discussion!
Please, recognize our guidelines on semantic constraints


Best Practice / Examples

https://www.railml.org/forum/index.php?t=msg&goto=3014&&srch=overcrossing#msg_3014 in railML 3 a railway track crossing another railway track via a bridge can be modelled using the elements <overcrossing> and <underCrossing>.

Assume that in the following example Track A passes over Track B (whereas A and B shall be the IDs of NetElements).

<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>


Additional Information

Notes

Open Issues