|
|
Line 52: |
Line 52: |
| │ net │ │ net │ │ │ │ │ │ │ │ │ │ │ │ │ | | │ net │ │ net │ │ │ │ │ │ │ │ │ │ │ │ │ |
| │ element │ │ element │ │ net │ │ net │ │ net │ │ net │ │ net │ │ net │ | | │ element │ │ element │ │ net │ │ net │ │ net │ │ net │ │ net │ │ net │ |
| │ 1.1.1 │ │ 1.1.1 │ │ element │ │ element │ │ element │ │ element │ │ element │ │ element │ | | │ 1.1.1 │ │ 1.1.2 │ │ element │ │ element │ │ element │ │ element │ │ element │ │ element │ |
| └───────────┘ └───────────┘ └───────────┘ └───────────┘ └───────────┘ └───────────┘ └───────────┘ └───────────┘ | | └───────────┘ └───────────┘ └───────────┘ └───────────┘ └───────────┘ └───────────┘ └───────────┘ └───────────┘ |
| │ │ │ │ │ │ | | │ │ │ │ │ │ |
Revision as of 09:58, 4 March 2024
Introduction
Documentation
Syntax
Autoexport from the XML-Schema for element IS:netElement of railML ® version 3.3
|
Documentation
|
The NetElement type is derived from the RailTopoModel class PositioningNetElement.
|
Subschema
|
infrastructure
|
Parents*
|
netElements
|
Children
|
associatedPositioningSystem (1..*), designator (0..*), elementCollectionOrdered (0..1), elementCollectionUnordered (0..1), isValid (0..*), name (0..*)
|
Attributes:
- length: length of the NetElement in metres (optional;
xs:decimal ),
- id: the identifier of the object; this can be either of type xs:ID or UUID (obligatory;
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:netElement of railML ® version 3.2
|
Documentation
|
The NetElement type is derived from the RailTopoModel class PositioningNetElement.
|
Subschema
|
infrastructure
|
Parents*
|
netElements
|
Children
|
associatedPositioningSystem (1..*), designator (0..*), elementCollectionOrdered (0..*), elementCollectionUnordered (0..*), isValid (0..*), name (0..*), relation (0..*)
|
Attributes:
- length: length of the NetElement in metres (optional;
xs:decimal ),
- 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:netElement of railML ® version 3.1
|
Documentation
|
The NetElement type is derived from the RailTopoModel class PositioningNetElement.
|
Subschema
|
infrastructure
|
Parents*
|
netElements
|
Children
|
associatedPositioningSystem (1..*), elementCollectionOrdered (0..*), elementCollectionUnordered (0..*), isValid (0..*), name (0..*), relation (0..*)
|
Attributes:
- length: length of the NetElement in metres (optional;
xs:decimal ),
- 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
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 children have been changed.
The attributes have been changed.
Semantics
This concept is explained on the RailTopoModel wiki at TOPO:Topological structure (network)
|
Proposed Semantic Constraint "IS:008": Aggregation of net elements should follow the tree data structure. See figure below.
This means that no two (mesoscopic) net elements can aggregate same (microscopic) net element.
In other words, (microscopic) net element can be aggregated by at most one (mesoscopic) net element.
Compare #xxx
Proposed on February 26th 2021 Discuss this semantic constraint Please, recognize our guidelines on semantic constraints
|
|
|
Proposed Semantic Constraint "IS:009": Linear (geometric) coordinates (explicit or implicit, e.g. calculated as a sum of the coordinate of beginning and the length of the net element) of the same place represented at different levels of aggregation should have the same value. In the figure below (linear) coordinate the coordinate of e.g. end of ne1 should be same as one of ne1.2.
Compare #xxx
Proposed on February 26th 2021 Discuss this semantic constraint Please, recognize our guidelines on semantic constraints
|
|
|
Proposed Semantic Constraint "IS:010": Difference of linear coordinates if the beginning and end of net elements, represented by intrinsic coordinates 0 and 1 correspondingly, should equal the the @length of net element if all are present in the data.
Compare #xxx
Proposed on February 26th 2021 Discuss this semantic constraint Please, recognize our guidelines on semantic constraints
|
|
┌──────────────────────────────────────────────────────────┐ ┌───────────────────────────────────────────────────────┐
│ │ │ │
│ net element 1 │ │ net element │
│ │ │ │
│ │ │ │
└──────────────────────────────────────────────────────────┘ └───────────────────────────────────────────────────────┘
disjoint set disjoint set
┌───────────────────────────────────────────────────────────────┐ ┌────────────────────────────────────────────────────────────┐
│ │ │ │
┌──────────────────────────┐ ┌──────────────────────────┐ ┌──────────────────────────┐ ┌──────────────────────────┐
│ │ │ │ │ │ │ │
│ net element 1.1 │ │ net element 1.2 │ │ net element │ │ net element │
│ │ │ │ │ │ │ │
│ │ │ │ │ │ │ │
└──────────────────────────┘ └──────────────────────────┘ └──────────────────────────┘ └──────────────────────────┘
┌───────────┐ ┌───────────┐ ┌───────────┐ ┌───────────┐ ┌───────────┐ ┌───────────┐ ┌───────────┐ ┌───────────┐
│ net │ │ net │ │ │ │ │ │ │ │ │ │ │ │ │
│ element │ │ element │ │ net │ │ net │ │ net │ │ net │ │ net │ │ net │
│ 1.1.1 │ │ 1.1.2 │ │ element │ │ element │ │ element │ │ element │ │ element │ │ element │
└───────────┘ └───────────┘ └───────────┘ └───────────┘ └───────────┘ └───────────┘ └───────────┘ └───────────┘
│ │ │ │ │ │
└────────────────────────────┘ └─────────────────────────────┘ └───────────────────────────┘
disjoint set disjoint set disjoint set
Best Practice / Examples
Additional Information
Notes
Usually parent net element is referred as "aggregating" net element and child is referred as "aggregated" net element. In the figure above on the highest level of aggregation (e.g. macroscopic) ne1 is aggregating net element and ne1.1 is aggregated net element. On the second level of aggregation (e.g. mesoscopic) ne1.1 is aggregating net element and ne1.1.1 is an aggregated net element.
Open Issues