Home » railML newsgroups » railml.misc » References across several XML files
References across several XML files [message #2173] Sat, 13 April 2019 04:12 Go to next message
Jörg von Lingen is currently offline  Jörg von Lingen
Messages: 15
Registered: March 2016
Junior Member
Dear all,

during the conference in Linz the question about references in railML3.x was
raised. Currently the referencing in IS-IL is using the ID/IDREF mechanism of
XML or alternatively UUIDs. At least the first option can be validated only,
when reference and target are within the same XML file. However, in future
scenarios only parts of the information will be exchanged, e.g. a new timetable
will not repeat the complete infrastructure but needs referencing into it.

Thus the option of using the <designator> element available at
FunctionalInfrastructureEntity and EntityIL instead. When using an official
register the name shall be unique in the register. However, it may appear at
least twice when used for IS part and IL part, e.g. signalIS/designator and

There is another issue with using designator as it has two mandatory attributes
@register and @entry. Thus a reference to designator shall be always contain the
complete tuple of @register and @entry to be unambiguous.

What is your opinion on the topic of references?

Best regards,
Joerg v. Lingen - Interlocking Coordinator
Re: References across several XML files [message #2175 is a reply to message #2173] Mon, 15 April 2019 23:35 Go to previous messageGo to next message
Thomas Nygreen is currently offline  Thomas Nygreen
Messages: 60
Registered: February 2017
Dear Jörg,
dear all,

I believe that the inclusion of UUIDs as possible IDs and references and the general application of the designator concept are important improvements in railML 3.1 over railML 2.x. Furthermore I believe we should establish a best practice on when and how to use which method. I will add some more thoughts on that after Easter. I encourage the community to post yout views on Jörg's question.

Best regards,
Thomas Nygreen - Common coordinator

Best regards,
Thomas Nygreen
Railway capacity engineer
Re: [railML3] References across several XML files [message #2180 is a reply to message #2173] Tue, 16 April 2019 20:52 Go to previous message
christian.rahmig is currently offline  christian.rahmig
Messages: 216
Registered: January 2016
Senior Member
Dear Jörg, dear all,

Am 13.04.2019 um 04:12 schrieb Joerg von Lingen:
> [...] What is your opinion on the topic of references?

I think that we have to distinguish different types of references:
(1) references that are used only inside one railML file
(2) references from inside a file to "something" outside
(3) references from "something" outside to an element inside a file

For (1), ID/IDREF seems to be the best solution, because an XML scheme
validator can check for corrupt references (e.g. missing destinations or
double IDs).

For (2) and (3), we need "external IDs" and "external references". I
propose to define new attributes of type xs:string in order to allow for
any kind of ID or reference. Using UUIDs or GUIDs might be helpful (e.g.
when adressing data stored in data bases), but there are also cases,
where the external ID or reference shall be very simple.

Following this approach the railML model need to be modified only a
little bit:
* ID can remain like it is today
* apart from the IDREF based reference, a new (external) reference of
type xs:string shall be added.

You may ask: why don't you use the <designator>?
My answer: an element shall have only on ID that can be used for
adressing the element, but it may have an arbitrary number of
designators in different registers.

Best regards

Christian Rahmig - Infrastructure scheme coordinator
railML.org (Registry of Associations: VR 5750)
Phone Coordinator: +49 173 2714509; railML.org: +49 351 47582911
Altplauen 19h; 01187 Dresden; Germany www.railml.org
Previous Topic: More standard attributes for objects
Goto Forum:

Current Time: Wed Apr 24 08:46:31 CEST 2019