Can I take a cycle on this train?

From Open Rail Data Wiki
Revision as of 11:01, 16 October 2012 by Harry Wood (talk | contribs) (Harry Wood moved page Talk:Can I take a cycle on this train? to Can I take a cycle on this train?: oopse move to 'main' namespace)
Jump to navigation Jump to search

Can I take a cycle on this train?

We'd like to be able to determine if

  1. Yes, I can take a bicycle on board
  2. No, I can't or
  3. I need to book my bike in advance

This information has recently been collated for the UK at http://www.nationalrail.co.uk/passenger_services/cyclists/2012CyclingbyTrain.pdf.

As part of LOCO2's Off the Rails hackday we began to codify the information in this PDF into a format that can be used to programatically determine which restrictions apply to carrying my bike. The idea is that you only use the information in a train's SCHEDULE record and the information in this Google Fusion Table:

If the service is a Rail Replacement Bus then No, you can't take a bike.

Pseudo-code

function CanCarryBike()
{
  SELECT * FROM BikeRules WHERE Operating_Co IS atoc_code

  foreach rule in rules {
    if (joining station or leaving station in rule.Stations
       AND eval(rule.Logic)) {
      return rule.Bike;
    }
  }
  return 'Yes';
}

Use-case

Our goal is to enable a route-finder like http://www.opentraintimes.com/ to have a

 [x] with a bike

checkbox that would avoid routes and times where bikes are not allowed.

Folding bikes

Please note that you can always carry a folded-up folding bike inside a bag on any train in the UK.