|
|
Re: Interpreting "begin" and "end" in the sub elements <linearCoordinateBegin> and <linearCoordinateEnd> [message #3555 is a reply to message #3551] |
Wed, 09 April 2025 22:29  |
christian.rahmig
Messages: 505 Registered: January 2016
|
Senior Member |
|
|
Dear all,
it's time to clarify few things related to linear locations, which seem to miss proper documentation so far:
A <linearLocation> has an orientation. This orientation is defined by the <*Begin> and <*End> child elements or the @intrinsicCoordBegin and @intrinsicCoordEnd attributes of all the <associatedNetElement> instances that are at least partly covered by this <linearLocation>. In that context, it does not matter, whether the *Begin value is smaller or bigger than the *End value.
In particular: Both of the following (simple) examples are valid linear locations on one netElement:
(1a)
[0------ne_a1-------(lloc_begin)-------------(lloc_end)----- ---1 >
(2a)
[0------ne_a1-------(lloc_end)-------------(lloc_begin)----- ---1 >
Consequently, the orientation of the <linearLocation> is independent from the orientation of the <netElement>.
Now, what does that look like if the <linearLocation> covers multiple <netElement> elements (with changing orientation) via <associatedNetElement> instances. Adapting above examples looks like this:
(1b)
[0------ne_a1-------(lloc_begin1)--------(lloc_end1)1><1(lloc_begin2)----(lloc_end2)--------0]
(2b)
[0------ne_a1-------(lloc_end2)--------(lloc_begin2)1><1(lloc_end1)----(lloc_begin1)--------0]
The orientation of the covered <netElement>s did not change, but the orientation of the <linearLocation> did.
Now, what is the @applicationDirection of the <linearLocation>? Is it the same like the orientation of the <linearLocation>? No, but it can match with it. The @applicationDirection describes the direction of driving for which the functional infrastructure element is valid. Think of a <speedSection>: This linear element has clearly an application direction. Now, think of a <platformEdge>: This linear element has no specific application direction, because trains can use this platform edge no matter from which side they come. However, the <linearLocation> of the <platformEdge> has an orientation defined by *Begin and *End values.
The remaining question is: What is the reference of @applicationDirection value? Should it be the orientation of the <linearLocation> defined by *Begin and *End values? Or should it be the orientation of the <netElement> covered by the <associatedNetElement> with the lowest @sequence number?
To answer this question, I am happy to hear/read your opinions...
Best regards
Christian
PS: Yes, there is a semantic constraint related to a <linearLocation> ranging over several <associatedNetElement> instances. It says that there must be no gap between the *End value of the first <associatedNetElement> and the *Begin value of the next <associatedNetElement>...
Christian Rahmig – Infrastructure scheme coordinator
railML.org (Registry of Associations: VR 5750)
Altplauen 19h; 01187 Dresden; Germany www.railML.org
|
|
|