IS:netRelation

From railML 3 Wiki
Jump to navigation Jump to search

Introduction

Documentation

Syntax

Autoexport from the XML-Schema for element IS:netRelation of railML® version 3.3
    
Description The NetRelation type is derived from the RailTopoModel class RTM_Relation.
Subschema infrastructure
Parents*

netRelations

Children

name (0..*), isValid (0..*), elementA (1..1), elementB (1..1)

Attributes:
  • navigability: physical possibility to travel between net element A and B and the direction (obligatory: tNavigability : xs:string)
Possible values:
  • AB: it's possible to go from elementA to elementB and not vice versa
  • BA: it's possible to go from elementB to elementA and not vice versa
  • Both: it's possible to go from elementB to elementA and vice versa
  • None: it's not possible to go from elementB to elementA and vice versa,

  • positionOnA: the information at which end of the elementA the relation is valid (optional: tUsage : xs:integer)
Possible values:
  • 0: beginning of netElement
  • 1: end of netElement,

  • positionOnB: the information at which end of the elementB the relation is valid (optional: tUsage : xs:integer)
Possible values:
  • 0: beginning of netElement
  • 1: end of netElement,

  • 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:netRelation of railML® version 3.2
    
Description The NetRelation type is derived from the RailTopoModel class RTM_Relation.
Subschema infrastructure
Parents*

netRelations

Children

name (0..*), isValid (0..*), elementA (1..1), elementB (1..1)

Attributes:
  • navigability: physical possibility to travel between net element A and B and the direction (optional: tNavigability : xs:string)
Possible values:
  • AB: it's possible to go from elementA to elementB and not vice versa
  • BA: it's possible to go from elementB to elementA and not vice versa
  • Both: it's possible to go from elementB to elementA and vice versa
  • None: it's not possible to go from elementB to elementA and vice versa,

  • positionOnA: the information at which end of the elementA the relation is valid (optional: tUsage : xs:integer)
Possible values:
  • 0: beginning of netElement
  • 1: end of netElement,

  • positionOnB: the information at which end of the elementB the relation is valid (optional: tUsage : xs:integer)
Possible values:
  • 0: beginning of netElement
  • 1: end of netElement,

  • 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:netRelation of railML® version 3.1
    
Description The NetRelation type is derived from the RailTopoModel class PositionedRelation.
Subschema infrastructure
Parents*

netRelations

Children

name (0..*), isValid (0..*), elementA (1..1), elementB (1..1)

Attributes:
  • navigability: This attribute is not documented in the schema! (optional: tNavigability : xs:string)
Possible values:
  • None
  • Both
  • BA
  • AB,

  • positionOnA: This attribute is not documented in the schema! (optional: tUsage : xs:integer)
Possible values:
  • 1
  • 0,

  • positionOnB: This attribute is not documented in the schema! (optional: tUsage : xs:integer)
Possible values:
  • 1
  • 0,

  • 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 element documentation has been changed.

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 attributes have been changed.

Semantics

Proposed Semantic Constraint "IS:015":
 
There must be no "inverse" net relations in the topology, i.e. if "nr1 elemeneA ne1", "nr1 elementB ne2" and "nr2 elemeneA ne2", "nr2 elementB ne1" then topology is not valid. See invalid code below – Compare
 
Proposed on 22 April 2021
FIXME add Link to discussion in the railML® forum!


Please, recognize our guidelines on semantic constraints 

Proposed Semantic Constraint "IS:026":
 
Each <netRelation> must belong to exactly one <level>.
 
Proposed on 27 February 2025
Please, discuss this semantic constraint in the railML® forum topic New semantic constraint restricting RTM:level, IS:netElement and IS:netRelation (link to the railML® website)".

Please, recognize our guidelines on semantic constraints 

Best Practice / Examples

Please refer for an example to IS:topology.

Additional Information

Notes

<netRelations>
<!-- invalid topology -->
	<netRelation id="nr1">
		<elementA ref="ne1"/>
		<elementB ref="ne2"/>
	</netRelation>
	<netRelation id="nr2">
		<elementA ref="ne2"/>
		<elementB ref="ne1"/>
	</netRelation>
</netRelations>

Open Issues