RoutingTripPattern Data Type

The split between TripPattern and RoutingTripPattern is done for the following technical reasons: - The RTP is accessed frequently during the Raptor search, and we want it to be as small as possible to load/access it in the cache and CPU for performance reasons. - Also, we deduplicate these so a RTP can be reused by more than one TP. - This also provide explicit documentation on witch fields are used during a search and witch are not.

Properties
name data type description
pattern TripPattern
boardingPossible BitSet
alightingPossible BitSet
wheelchairAccessible BitSet

Example

{
  "pattern" : {
    "name" : "...",
    "route" : {
      "agency" : { },
      "operator" : { },
      "branding" : { },
      "groupsOfRoutes" : [ { }, { } ],
      "shortName" : "...",
      "longName" : { },
      "mode" : "COACH",
      "description" : "...",
      "gtfsType" : 12345,
      "gtfsSortOrder" : 12345,
      "netexSubmode" : { },
      "url" : "...",
      "color" : "...",
      "textColor" : "...",
      "bikesAllowed" : "ALLOWED",
      "flexibleLineType" : "...",
      "name" : "...",
      "id" : { }
    },
    "mode" : "COACH",
    "stopPattern" : {
      "size" : 12345
    },
    "geometry" : {
      "coordinate" : { },
      "boundary" : { },
      "empty" : true,
      "boundaryDimension" : 12345,
      "coordinateSequence" : { },
      "coordinates" : [ { }, { } ],
      "ring" : true,
      "length" : 12345.0,
      "numPoints" : 12345,
      "closed" : true,
      "startPoint" : { },
      "endPoint" : { },
      "geometryType" : "...",
      "dimension" : 12345,
      "envelope" : { },
      "rectangle" : true,
      "centroid" : { },
      "simple" : true,
      "interiorPoint" : { },
      "factory" : { },
      "valid" : true,
      "precisionModel" : { },
      "envelopeInternal" : { },
      "area" : 12345.0,
      "userData" : { },
      "numGeometries" : 12345,
      "SRID" : 12345
    },
    "stops" : [ {
      "id" : { },
      "geometry" : { },
      "lon" : 12345.0,
      "parentStation" : { },
      "netexVehicleSubmode" : { },
      "wheelchairAccessibility" : "POSSIBLE",
      "stationOrStopId" : { },
      "code" : "...",
      "timeZone" : "...",
      "lat" : 12345.0,
      "platformCode" : "...",
      "fareZones" : [ { }, { } ],
      "index" : 12345,
      "description" : { },
      "gtfsVehicleType" : "TRAM",
      "name" : { },
      "partOfStation" : true,
      "coordinate" : { },
      "url" : { },
      "priority" : "RECOMMENDED",
      "firstZoneAsString" : "..."
    }, {
      "id" : { },
      "geometry" : { },
      "lon" : 12345.0,
      "parentStation" : { },
      "netexVehicleSubmode" : { },
      "wheelchairAccessibility" : "NO_INFORMATION",
      "stationOrStopId" : { },
      "code" : "...",
      "timeZone" : "...",
      "lat" : 12345.0,
      "platformCode" : "...",
      "fareZones" : [ { }, { } ],
      "index" : 12345,
      "description" : { },
      "gtfsVehicleType" : "MONORAIL",
      "name" : { },
      "partOfStation" : true,
      "coordinate" : { },
      "url" : { },
      "priority" : "DISCOURAGED",
      "firstZoneAsString" : "..."
    } ],
    "direction" : "CLOCKWISE",
    "scheduledTimetable" : {
      "pattern" : { },
      "tripTimes" : [ { }, { } ],
      "frequencyEntries" : [ { }, { } ],
      "serviceDate" : "...",
      "direction" : "ANTICLOCKWISE",
      "representativeTripTimes" : { }
    },
    "createdByRealtimeUpdater" : true,
    "originalTripPattern" : { },
    "tripHeadsign" : { },
    "feedId" : "...",
    "routingTripPattern" : {
      "pattern" : { },
      "boardingPossible" : { },
      "alightingPossible" : { },
      "wheelchairAccessible" : { }
    },
    "id" : {
      "feedId" : "...",
      "id" : "..."
    }
  },
  "boardingPossible" : {
    "empty" : true
  },
  "alightingPossible" : {
    "empty" : true
  },
  "wheelchairAccessible" : {
    "empty" : true
  }
}