Route=shuttle_train - deprecation of 13/11 year old (never activated) proposal

Yeah, true. Is there actually a train between Hamburg-Altona and Sylt carrying cars or only between Niebüll and Sylt?

For the others:

I think, if the purpose of the train, the service provided is simply and only carrying cars, … where other routes would cause a huge detour? A first guess/definition for “shuttle”?

Maybe the connection between Hamburg and Sylt does not exist anymore, see DB Autozug – Geschichte und heutiges Angebot. :cry:

The Lötschberg-Simplon transition is called Kandersteg-Iselle in the timetable and missing in OSM. :wink:

If we want to use it for shuttle buses transporting foot and bicycle through a tunnel which is prohibit to use for them, we have to be carefully choosing words, I guess.

The purpose for the public transportation service is to provide a route where other routes would cause a huge detour caused by water, mountain ranges or a tunnel not allowed for certain transport modes. Usually these type=route run regularly on short intervals and often do not demand a reservation.

I just found service=car_shuttle listed under Key:service - OpenStreetMap Wiki.

Basically good, except that service is used for so many different things…

I see:

  • service=car;night;motor_cycle for the (ex-)train between Munich and Hamburg
  • service=car_shuttle;motor_cycle_shuttle for the train between Niebüll and Sylt

Is this a strange mix of different values?

1 Like

Yes, I do not like the mix of values myself and I just wanted to mention it.

Off-topic

Actually, I was looking for a tag to describe a bus route which primary purpose is to transport pupils to school. I do not like bus=school as bus=* is an access tag. service=school does not work properly as it is either a regular or an express bus. I have used service:type=bus but I think I might switch to service:designation=bus.

The proposal Proposed features/Differentiation for routes of public transport - OpenStreetMap Wiki proposed something like public_transport:type=car_shuttle for this, but unfortunately, the proposal is inactive. Also, the value car_shuttle is unfavorable maybe, because there is the “vehicle type” car in it and this should better be tagged in motorcar=yes or something. But what should the value then be? Would you say just shuttle is sufficient?

(And what should the key be?)

yes: shuttle=yes

plus: additional set of keys for the types of vehicle they can support

  • foot=yes as default when anyone can join the ride
  • foot=no if only passengers of vehicles can take a ride
1 Like

Ironically I was thinking of a similar service at Brú na Bóinne and the value of including such information for people with limited mobility. Such a possibility also suggests shuttle=yes would allow more flexibility to handle other use cases.

Okay, well, then we only need someone who can define shuttle=yes well, so that it is as clear as possible when to use it and when not.

Any volunteers? :rofl:

Well, as the initiator of this thread I shouldn’t “duck and cover”.

I’ll set up a proposal page in the wiki on how shuttle services can be mapped as relations. Maybe some of you can review and help before scheduling it for the proposal process.
Some ideas

  • invalidating the old “proposal”
  • based on public transport relations - preferably PTv2
  • adding
    • shuttle=yes
    • shuttle:xxx=*
    • reservation:xxx=*
    • fee=*
  • listing affected existing tools, …
  • QA aspects
1 Like

Just checked some routing engines:

  • OSRM seems to base on route=shuttle_train on ways (for “car” only)

    • does route through Eurotunnel (has extra ways based on route=shuttle_train, no railway=track)
    • does not route to Sylt (has only relation with route=shuttle_train based on railway=track only)
  • GraphHopper neither routes through Eurotunnel nor via train to Sylt

    • seems to not use the “proposal”
  • Valhalla neither routes through Eurotunnel nor via train to Sylt

    • seems to not use the “proposal”
  • osm2po

    • I’m in discussion with the maintainer, seems that this one ignores relations at all but uses ways as stated in the “proposal”
3 Likes

Hopefully, there can be found a solution with which routers are aible to take relations (for example then with shuttle=yes or something) into account, too, in the future.

To clarify:

The core routing engines (the C++/Java code that does the calculations) are already capable of reading route relations, and making routing decisions based on whether a way is a member of a particular route relation or not. This applies to OSRM, Graphhopper and Valhalla.

This however is not the entire story. An instance of a routing engine - for example, the OSRM instance at routing.openstreetmap.de, which is the one used by osm.org - has its own “weightings” or “profile”. These are the settings which determine whether a particular way is considered for routing at all, and how highly it’s weighted.

For example, although both cycle.travel and routing.openstreetmap.de are running OSRM, cycle.travel considers cycle route relations as a factor when calculating its weightings, but routing.openstreetmap.de (AFAIK) doesn’t.

So if you want a type of route relation to be considered by a particular instance of an online router, you need to identify who’s running that instance, and contact (/send your patch to) them.

(Slight footnote: Some instances might be using the default weightings, and those default weightings might be maintained as part of the core engine repository.)

3 Likes

Note that routers have to figure out at which points the transition road/rail can take place.

The underlying roads are connected to the rails at every railway crossing.

The original first version of shuttle_train solved this by having the way connected to the road network only on the transition points. The similarity to ferry routes was the inspiration to do a similar thing for the Sylt-Shuttle.

Is was never meant to be a nice solution, but a simple/working solution.

Yeah, that’s true. But mapping a way in parallel to the tracks, not being connected to crossing highways (avoiding transition points) is really not a good idea.

There’s a special tag for the transfer/transition from highway to railway: Node railway=car_shuttle. So using this, we have a short (one element) positive list of valid transfer points from highway to railway and vice versa.

1 Like