| [railML3] Where does a under|overCrossing crossesElement? [message #3990] |
Wed, 06 May 2026 12:04  |
Mathias Vanden Auweele
Messages: 174 Registered: February 2025 Location: Brussels
|
Senior Member |
|
|
Hello,
In the case when an under or overcrossing has a crossesElement that refers to a netElement, we should be able to state where that netelement is crossed.
This is needed for schematic track layout use case. When you draw the under|overcrossing over|under the crossesElement netElement, you need to know where that happens (is it before or after that signal?). Else the result might not be good.
Proposal: add the possibility to add a spot|linear location to <crossesElement>
Mathias Vanden Auweele
Railway data freelancer
https://matdata.eu
Brussels, Belgium
[Updated on: Thu, 07 May 2026 19:57] Report message to a moderator
|
|
|
|
|
|
| Re: [railML3] Where does a under|overCrossing crossesElement? [message #4022 is a reply to message #4010] |
Fri, 29 May 2026 12:41   |
christian.rahmig
Messages: 590 Registered: January 2016
|
Senior Member |
|
|
Dear Mathias and Dominik,
thank you for sharing your thoughts on that topic.
I was wondering if we need any model extension at all... so let's have a look at the situation: We have an over- or underCrossing of our railway track with another part of our railway network (because only then I can have the reference to the netElement via \\crossesElement\@ref attribute). So, as the crossed netElement is also modelled, it should be also linked with infrastructure elements built on it. In particular, the overCrossing on my one netElement becomes an underCrossing on my other netElement and vice versa. And of course, this over-/underCrossing needs to be located on the netElement using intrinsic or linear coordinates, too, like it needs to be done with signals etc. So, basically I have all the information already in the model. The only thing missing is maybe a reference from the overCrossing to the underCrossing telling me that both elements describe the same infrastructure element, but from different (track) perspective.
What do you think about it?
Best regards
Christian
Christian Rahmig – Infrastructure schema coordinator
railML.org (Registry of Associations: VR 5750)
Altplauen 19h; 01187 Dresden; Germany www.railML.org
|
|
|
|
|
|
|
|
| Re: [railML3] Where does a under|overCrossing crossesElement? [message #4093 is a reply to message #4090] |
Thu, 13 August 2026 15:36   |
Thomas Nygreen
Messages: 137 Registered: March 2008
|
Senior Member |
|
|
Dear Dominik,
According to the reference register overCrossing/crossesElement/@ref and underCrossing/crossesElement/@ref expect a netElement id. (While levelCrossing/crossesElement/@ref expects the id of a functional infrastructure element that is not a levelCrossing.) I refer to Christian for any discussion on changing that.
But if the crossing structures being lengthy was the only issue, could you not create partial under/overCrossings specific to the crossing location and link them to the longer one with @belongsToParent? In some cases you would have to do that anyway (a tunnel crossing over another tunnel or a bridge crossing under another bridge). As a simple example, if an <overCrossing id="oc1" constructionType="bridge"> <crossesElement id="oc1ce1" type="valley"/> <crossesElement id="oc1ce2" type="railway" ref="ne2"/>, you could instead let <overCrossing id="oc1" constructionType="bridge"> <crossesElement id="oc1ce1" type="valley"/> and <overCrossing id="oc2" belongsToParent="oc1" constructionType="bridge"> <crossesElement id="oc2ce1" type="railway" ref="ne2"/>, and use oc2 to place the crossing point within oc1. (For simplicity I only showed the reference in one direction.)
Best regards,
Thomas
Thomas Nygreen – Common Schema Coordinator
railML.org (Registry of Associations: VR 5750)
Altplauen 19h; 01187 Dresden; Germany www.railML.org
[Updated on: Mon, 07 September 2026 16:00] Report message to a moderator
|
|
|
|
| Re: [railML3] Where does a under|overCrossing crossesElement? [message #4147 is a reply to message #4093] |
Tue, 01 September 2026 18:36   |
Mathias Vanden Auweele
Messages: 174 Registered: February 2025 Location: Brussels
|
Senior Member |
|
|
I want to retract my early statement that referring to another over|underCrossing would work. Dominik has given a good explanation of that to which I agree.
@Thomas, creating child elements specifically for this construct seems to be a very complicated solution.
And you say that under|overCrossing/crosseselement/@ref expects a netelement according to the schema. In that case, the wiki might need to be clarified as it currently states "reference to the ID of an element that is also part of the railway infrastructure" https://wiki3.railml.org/wiki/IS:crossesElement . Which I believe is not clearly referring to netelements as a possibility
Mathias Vanden Auweele
Railway data freelancer
https://matdata.eu
Brussels, Belgium
|
|
|
|
| Re: [railML3] Where does a under|overCrossing crossesElement? [message #4175 is a reply to message #4147] |
Mon, 07 September 2026 18:27   |
Thomas Nygreen
Messages: 137 Registered: March 2008
|
Senior Member |
|
|
Dear Mathias,
The schema simply requires a reference, which is why the reference register was created. The rules in the reference register expect this reference to point to a netElement. I agree that this is not clear from the documentation, which is why I'm bringing it up. Referring to a netElement or referring to an over/underCrossing is also a critical difference in the statements made by Christian and Dominik, respectively, about the current state. The documentation should probably be clarified even if the reference rules are changed.
Regarding complexity, I don't see much of a difference between adding *Location children to crossesElement or providing the same locations in a linked partial over/underCrossing. It produces the same number of relations. Compared to Dominik's proposal to add a pair of locations to each crossesElement, the partial over/underCrossings actually seem simpler to me. However, I don't think a pair at each end is necessary (because I don't expect the same over/underCrossing to cross the same other over/underCrossing more than once). So I don't have a strong preference either way. Partial over/underCrossings have the benefit of already being available in all 3.x versions, though, either as a common model for all 3.x verions or as a fallback for already published ones. And as mentioned in my previous post, a tunnel crossing over another tunnel already has a part that is an overCrossing, and a bridge crossing under another bridge has a part that is an underCrossing.
Best regards,
Thomas
Thomas Nygreen – Common Schema Coordinator
railML.org (Registry of Associations: VR 5750)
Altplauen 19h; 01187 Dresden; Germany www.railML.org
|
|
|
|
| Re: [railML3] Where does a under|overCrossing crossesElement? [message #4180 is a reply to message #4175] |
Thu, 10 September 2026 13:32   |
Dominik Looser
Messages: 66 Registered: March 2020
|
Member |
|
|
Hi,
Thank you Thomas for the clarification that <crossesElement> should actually reference a netElement. This should be documented/communicated more prominently.
With that in mind, I think an additional attribute "@intrinsicCoordOnCrossedElement" (or similar) on <crossesElement> would suffice.
Quote:because I don't expect the same over/underCrossing to cross the same other over/underCrossing more than once
If we have a double-track overcrossing (modelled as one object) crossing a double-track undercrossing (modelled as one object) we actually have 4 intersections, and at least 4 netElements involved. Referencing the netElement instead of the other xCrossing helps narrow down the correct placement, but we still need a position to at least know the order of the intersections.
Best regards,
Dominik Looser
[Updated on: Thu, 10 September 2026 13:46] Report message to a moderator
|
|
|
|
| Re: [railML3] Where does a under|overCrossing crossesElement? [message #4181 is a reply to message #4180] |
Thu, 10 September 2026 18:32  |
Thomas Nygreen
Messages: 137 Registered: March 2008
|
Senior Member |
|
|
Hi again,
A question: does anyone need this for more than schematic drawings? Specifically, does anyone need the full linear locations of the intersection?
@Dominik: Good point. As long as each over/underCrossing does not cross a netElement more than once, one position for each crossesElement should be enough. If referencing from over/underCrossings to other over/underCrossings, I agree that you would either need a pair or segment them into parts.
-Thomas
Thomas Nygreen – Common Schema Coordinator
railML.org (Registry of Associations: VR 5750)
Altplauen 19h; 01187 Dresden; Germany www.railML.org
|
|
|
|