Home » railML newsgroups » railML.infrastructure » [railML3]crossesElement/[railML2.5]crossedElement (Extension for road types)
[railML3]crossesElement/[railML2.5]crossedElement [message #2987] Sun, 03 April 2022 10:15 Go to next message
Torben Brand is currently offline  Torben Brand
Messages: 156
Registered: March 2016
Senior Member
The Norwegian IM Bane NOR maps the following type of elements that a level crossing crosses in its asset management system (BaneData) and needs to exchange these with the Norwegian railway sector and international. The table (I miss tables in the forum... Rolling Eyes ) also contains suggested extended and existing values for railML3.2 crossesElement@type and railML2.5 crossedElement@type.

Type (en);Type (no);Type (de);crossesElement@type;crossedElement@type
national road;riksveg;Bundesstrasse;other:primary;other:primary
county road;fylkesveg;Landesstrasse;other:secondary;other:secondary
municipal road;kommunal veg;Kreisstrasse/Gemeindestrasse;other:tertiary;other:tertia ry
private road with public access;privat veg med allmenn ferdsel; Privatweg mit öffentlichen Zugang;other:permissive;other:permissive
private road with no public access;privat veg uten allmenn ferdsel;Privatweg ohne öffentlichen Zugang;other:private;other:private
footpath;gangvei;Fussweg;footway;highway:footway

PS. I've added a pdf for easier reading of the table.
Further descriptions of the road types can be found in [3].

For later versions of railML the prefix "other:" should be removed. The suggested values are based on the following deductions:

1. Existing values in railML3 are listed in wiki page [1]. Existing values in railML2.5 are missing in wiki page [2], but are contained in the XSD. The railML2.5 values are the same as in railML3.2 but with the prefix "highway:" in addition for the relevant items here. It seems that the values are based on Openstreetmap keys and also contain values for bridges (which are not relevant for level crossings). This missing information should be added to both wikis.

2. The existing values for type of car roads in both railML3 and railML2 are only "motorway" and "road". "motorway" seems overkill and irrelevant for level crossings as a level crossing (hopefully) will never be crossed by an Autobahn! "road" on the other hand means in openStreetmap terms "unknown road type". In our use case we know the road type and would thus loose information.

3. Based on the openstreetmap key wiki pages for highway [3] and access [4] we derive the values suggested above.

4. The private road with or without public access is a combined value of road type and access type. Openstreetmap allows combined values [5]. The combined values would then be: "highway:service;access=permissive" and "highway:service;acces=private". Access "permissive" and "private" are only valid for private owned roads. Private owned roads cannot be of type "primary/secondary/tertiary/unclassified". Then we are left with the use either as "service" or "road" for an unknown type. If mapped explicit I would suggest type "service" as the type would be the only relevant one in our use case for private roads (usually agricultural but also industrial access road). But I concluded to use a simpler value without the use of multiple/combined values. This as "permissive" and "private" both indicate private owned roads.

5. For railML2.5 I suggest to use the same simple construct as in railML3 and not use the prefix "highway:"

If the railML community agrees to these values the Norwegian railway sector will use them in our Norwegian extensions for railML2.4nor.

[1] https://wiki3.railml.org/wiki/IS:crossesElement#3.2

[2] https://wiki2.railml.org/wiki/IS:crossedElement_crossedEleme nts_levelCrossing

[3] https://wiki.openstreetmap.org/wiki/Key:highway

[4] https://wiki.openstreetmap.org/wiki/Key:access

[5] https://wiki.openstreetmap.org/wiki/Multiple_values

[Updated on: Tue, 05 April 2022 08:48]

Report message to a moderator

Re: [railML3]crossesElement/[railML2.5]crossedElement [message #3012 is a reply to message #2987] Fri, 10 June 2022 14:13 Go to previous message
christian.rahmig is currently offline  christian.rahmig
Messages: 436
Registered: January 2016
Senior Member
Dear Torben,

thank you very much for your detailed analysis of the "crossed/crosses element topic" in railML 2 and railML 3. I agree with you that we should try to harmonize the model approaches in both version baselines. In particular, I suggest to stay close to the implementation of <crossesElement>@type in railML 3.2.

Concerning the modelling: railML 3.2 should contain all the required values. If not, please let us know, which values are you missing. Since the enumeration is extendable, you are free to add new values following the general rules of schema extension.

Concerning the documentation: railML 2 schema documentation links very detailed to OpenStreetMap documentation. This detailed documentation is missing in railML 2 Wiki. Therefore, I filed a Git issue [1] for railML 2.x pointing at the missing documentation. Specifically, the detailed schema enumeration value documentation shall be copied into the wiki. In parallel, best practice examples of different types of crossed elements including code snippets could be very helpful for implementation. Therefore, I want to ask the whole railML infrastructure community: If you have real practical (best practice) examples that you can export into the railML format, we will be very happy to see them integrated in our railML 2 wiki.

[1] https://development.railml.org/railml/version2/-/issues/480

Best regards
Christian


Christian Rahmig – Infrastructure scheme coordinator
railML.org (Registry of Associations: VR 5750)
Altplauen 19h; 01187 Dresden; Germany www.railML.org
Previous Topic: [railML2] Single and double derailer
Next Topic: [railML3] Modelling of bridges
Goto Forum:
  


Current Time: Fri Mar 29 08:06:58 CET 2024