Opentransportdata.swiss

TripRequest

Originally published at: https://opentransportdata.swiss/de/cookbook/triprequest/
Die TripRequest ist ein Open Service. TripRequest ist eine spezielle Form der Fahrtprognose und wird über VDV431 TripRequest abgebildet. Es ist wichtig zu verstehen, dass diese Plattform nur ein Subset der Möglichkeiten von TripRequest umsetzt. Die untenstehende Dokumentation erläutert TripRequest und die Umsetzung durch die SBB. Fachliche BeschreibungWichtige KonzepteTechnische AspekteAPI-ExplorerAuthorisierung und Open ServicesURL für den AufrufBeispiel einer…

Wenn ich TripRequests auf Bus & Tram-Haltestellen mache sieht das Destination-Tag praktisch immer (hab noch kein Gegenbeispiel gefunden) insofern komisch aus, als dass DestinationStopPointRef leer ist und beim DestinationText.Text komische Sonderzeichen hinter dem Haltestellen namen kommen.

Bsp. Request:

 <?xml version="1.0" encoding="UTF-8"?>
<ns2:Trias xmlns:ns2="http://www.vdv.de/trias" xmlns="http://www.siri.org.uk/siri" xmlns:ns3="http://www.ifopt.org.uk/acsb" xmlns:ns4="http://www.ifopt.org.uk/ifopt" xmlns:ns5="http://datex2.eu/schema/1_0/1_0" version="1.1">
   <ns2:ServiceRequest>
      <RequestTimestamp>2017-05-27T14:38:19.891+02:00</RequestTimestamp>
      <RequestorRef>fiasim.ch</RequestorRef>
      <ns2:RequestPayload>
         <ns2:TripRequest>
            <ns2:Origin>
               <ns2:LocationRef>
                  <ns2:StopPointRef>8589002</ns2:StopPointRef>
               </ns2:LocationRef>
               <ns2:DepArrTime>2017-05-27T14:38:19.890+02:00</ns2:DepArrTime>
            </ns2:Origin>
            <ns2:Destination>
               <ns2:LocationRef>
                  <ns2:StopPointRef>8507050</ns2:StopPointRef>
               </ns2:LocationRef>
            </ns2:Destination>
            <ns2:Params>
               <ns2:NumberOfResults>10</ns2:NumberOfResults>
               <ns2:InterchangeLimit>0</ns2:InterchangeLimit>
            </ns2:Params>
         </ns2:TripRequest>
      </ns2:RequestPayload>
   </ns2:ServiceRequest>
</ns2:Trias>

Das Service-Tag sieht dann z.B. so aus:

                          <Service>
                           <OperatingDayRef>2017-05-27</OperatingDayRef>
                           <JourneyRef>odp:06008::R:j17:12541:12541</JourneyRef>
                           <LineRef>odp:06008::R</LineRef>
                           <DirectionRef>return</DirectionRef>
                           <Mode>
                              <PtMode>tram</PtMode>
                              <TramSubmode>undefined</TramSubmode>
                              <Name>
                                 <Text>Tram</Text>
                                 <Language>DE</Language>
                              </Name>
                           </Mode>
                           <PublishedLineName>
                              <Text>8</Text>
                              <Language>DE</Language>
                           </PublishedLineName>
                           <OperatorRef>odp:827</OperatorRef>
                           <OriginText>
                              <Text />
                              <Language>DE</Language>
                           </OriginText>
                           <DestinationStopPointRef />
                           <DestinationText>
                              <Text>Bern Brünnen Westside, Bahnhof                    &amp;#xD;</Text>
                              <Language>DE</Language>
                           </DestinationText>
                        </Service>

Wenn die Abfrage aber auf Zugshalte gemacht wird, stimmt es offenbar meist:

                        <Service>
                           <OperatingDayRef>2017-05-27</OperatingDayRef>
                           <JourneyRef>odp:80050:Y:H:j17:4175:4175</JourneyRef>
                           <LineRef>odp:80050:Y:H</LineRef>
                           <DirectionRef>outward</DirectionRef>
                           <Mode>
                              <PtMode>rail</PtMode>
                              <RailSubmode>undefined</RailSubmode>
                              <Name>
                                 <Text>RegioExpress</Text>
                                 <Language>DE</Language>
                              </Name>
                           </Mode>
                           <PublishedLineName>
                              <Text />
                              <Language>DE</Language>
                           </PublishedLineName>
                           <OperatorRef>odp:33</OperatorRef>
                           <Attribute>
                              <Text>
                                 <Text>LÖTSCHBERGER</Text>
                                 <Language>DE</Language>
                              </Text>
                              <Code />
                              <Mandatory>false</Mandatory>
                           </Attribute>
                           <Attribute>
                              <Text>
                                 <Text>Billettkauf im Zug möglich (mit Zuschlag)</Text>
                                 <Language>DE</Language>
                              </Text>
                              <Code />
                              <Mandatory>false</Mandatory>
                           </Attribute>
                           <Attribute>
                              <Text>
                                 <Text>1 Zug-2 Ziele: bitte Anschriften beachten</Text>
                                 <Language>DE</Language>
                              </Text>
                              <Code />
                              <Mandatory>false</Mandatory>
                           </Attribute>
                           <Attribute>
                              <Text>
                                 <Text>Reservierung möglich</Text>
                                 <Language>DE</Language>
                              </Text>
                              <Code />
                              <Mandatory>false</Mandatory>
                           </Attribute>
                           <OriginText>
                              <Text />
                              <Language>DE</Language>
                           </OriginText>
                           <DestinationStopPointRef>8507483</DestinationStopPointRef>
                           <DestinationText>
                              <Text>Spiez</Text>
                              <Language>DE</Language>
                           </DestinationText>
                        </Service>

Gibt es ein Update dazu? Das Problem besteht leider noch immer…

Hallo! Ja, das gibt es:
Das Feld DestinationStopPointRef ist ein optionales Feld in Trias. In der neusten Version (nächster Release, Datum noch nicht bekannt) wurde die Ausgabe so geändert, dass das optionale Feld DestinationStopPointRef bei der Ausgabe weggelassen wird, wenn es nicht befüllt werden kann.