#AutoTranslate
Description rapide
La TripInfoRequest permet de demander des détails supplémentaires sur un «Journey» (convoi). Le «Journey» se réfère toujours au parcours complet, du point de départ de la liaison jusqu’à la destination finale, indépendamment de la partie du parcours qui est réellement d’intérêt. Un scénario courant pour la TripInfoRequest est celui où l’on se trouve sur un trajet et où l’on passe bientôt à une autre liaison à un arrêt afin de vérifier les possibilités de correspondance de la course suivante et d’interroger les éventuels retards ou modifications de l’horaire. Bien entendu, cette possibilité peut également être utilisée pour le trajet en cours afin de vérifier si la correspondance souhaitée est encore possible et combien de temps il reste pour le transfert.
Description technique
Explorateur de l’API
Vous pouvez personnaliser les requêtes selon vos souhaits et essayer les modèles dans l’API ouverte – lien direct vers l’explorateur d’API.
TripInfo Request
L’information centrale pour envoyer une TripInfoRequest est la JourneyRef et l’OperatingDayRef, c’est-à-dire une référence à un Journey précis à une date calendaire. La JourneyRef figure dans la Response d’une autre requête (p. ex. TripRequest ou StopEventRequest). De plus amples détails sur la structure d’une TripInfoRequest peuvent être consultés dans la description de la OJPTripInfoRequestStructure au niveau du VDV en voici un exemple: TripInfoRequest:
<OJP xmlns="http://www.vdv.de/ojp" xmlns:siri="http://www.siri.org.uk/siri" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xsi:schemaLocation="http://www.vdv.de/ojp" version="2.0">
<OJPRequest>
<siri:ServiceRequest>
<siri:ServiceRequestContext>
<siri:Language>de</siri:Language>
</siri:ServiceRequestContext>
<siri:RequestTimestamp>2025-02-18T15:41:28.717Z</siri:RequestTimestamp>
<siri:RequestorRef>SKIPlus</siri:RequestorRef>
<OJPTripInfoRequest>
<siri:RequestTimestamp>2025-02-18T15:41:28.717Z</siri:RequestTimestamp>
<span class="crayon-r "> <siri:MessageIdentifier></span><span class="crayon-i ">SER-1a</span><span class="crayon-r "></siri:MessageIdentifier></span>
<JourneyRef>ch:1:sjyid:100001:975-001</JourneyRef>
<OperatingDayRef>2025-02-18</OperatingDayRef>
<Params>
<UseRealtimeData>explanatory</UseRealtimeData>
<IncludeCalls>true</IncludeCalls>
<IncludeService>true</IncludeService>
</Params>
</OJPTripInfoRequest>
</siri:ServiceRequest>
</OJPRequest>
</OJP>Description des paramètres
Les éléments des OJPTripInfoRequestStructure et TripInfoParamStructure:
| Élément | Cardinalité | Description | Exemple |
|---|---|---|---|
siri:RequestTimestamp | 1:1 | Timestamp de la requête. De préférence en heure UTC. |
<siri:RequestTimestamp>2025-02-18T15:41:28.717Z</siri:RequestTimestamp> |
siri:MessageIdentifier | 0:1 | Identifiant de l’annonce. De préférence en ordre croissant. |
<siri:MessageIdentifier>SER-1a</siri:MessageIdentifier> |
JourneyRef | -1:1 | Référence à la course.La référence peut être déterminée via une TripRequest ou une StopEventRequest. |
<JourneyRef>ch:1:sjyid:100001:975-001</JourneyRef>
|
OperatingDayRef | -1:1 | Au format AAAA-MM-JJ |
<OperatingDayRef>2026-06-23</OperatingDayRef> |
TrainNumber | -1:1 | Cet attribut n’est pas disponible, mais est fourni s’il est disponible. |
n.c. |
OperatorRef | -1:1 | Cet attribut n’est pas disponible, mais est fourni s’il est disponible. |
n.c. |
siri:VehicleRef | -1:1 | Cet attribut n’est pas disponible. | n.c. |
TimeOfOperation | -1:1 | Cet attribut n’est pas disponible. | n.c. |
Params | 0:1 | Autres paramètres pour la demande | |
Params/UseRealTimeData | 0:1 | Détermine comment le Realtime est pris en compte, full = tout; explanatory = y compris les événements tardifs et supprimés Connexions (variante la plus détaillée); none = uniquement selon Horaire. |
<UseRealtimeData>explanatory</UseRealtimeData> |
Params/IncludeCalls | 0:1 | Les «Calls» (arrêts intermédiaires) doivent-ils être intégrés? La valeur par défaut est «true». |
<IncludeCalls>true</IncludeCalls> |
Params/IncludePosition | 0:1 | La position actuelle du train doit-elle être ajoutée?Cet attribut n’est pas disponible. | n.c. |
Params/IncludeService | 0:1 | La Service-Information doit-elle être insérée (LineRef, Mode, OperatorRef, …)? La valeur par défaut est «true». |
<IncludeService>false</IncludeService> |
Params/IncludeTrackSections | 0:1 | Faut-il ajouter des informations géographiques sur l’itinéraire? La valeur par défaut est «false». |
<IncludeTrackSections>true</IncludeTrackSections> |
Params/IncludeTrackProjection | 0:1 | Doit-elle inclure la projection géographique (coordonnées) de ce trajet? |
<IncludeTrackProjection>true</IncludeTrackProjection> |
Params/IncludePlacesContext | 0:1 | Indication de la nécessité du contexte local. Si le demandeur dispose déjà de ces informations, la réponse peut être plus fine en définissant «false». La valeur par défaut est «true». Cet attribut est prévu. | n.c. |
Params/IncludeFormation | 0:1 | Si la formation doit être intégrée. Pour «simple», seule la VehicleFeature est utilisée. «full» peut déployer toutes les performances du modèle de formation SIRI (notamment pour les trains). Le document de spécification OJP donne des indications sur la manière de se limiter aux aspects les plus importants en tant que serveur. La valeur par défaut est «none».Cette fonctionnalité est envisagée. | n.c. |
Params/IncludeSituationsContext | 0:1 | Si le contexte de la situation est nécessaire. Si le demandeur dispose de ces informations d’une autre manière ou ne peut pas les traiter, la définition de la valeur «false» permet d’alléger la réponse. La valeur par défaut est «true». | n.c. |
TripInfoResponse
Les détails des différents paramètres peuvent être consultés StopEventRequest doivent être retirés.
TripInfoResponseContext
Tout en haut de la OJPTripInfoDeliveryStructure le TripResponseContext est affiché en tant que Structure ducontextede laréponse fournies. Des informations détaillées sur les «lieux» utilisés figurent dans la description correspondante au OJPTripRequest incluses.
<TripInfoResponseContext>
<Places>
<Place>
<StopPlace>
<StopPlaceRef>ch:1:sloid:10</StopPlaceRef>
<StopPlaceName>
<Text xml:lang="de">Basel SBB</Text>
</StopPlaceName>
<TopographicPlaceRef>23005701:2</TopographicPlaceRef>
</StopPlace>
<Name>
<Text xml:lang="de">Basel SBB</Text>
</Name>
<GeoPosition>
<siri:Longitude>7.59009</siri:Longitude>
<siri:Latitude>47.54672</siri:Latitude>
</GeoPosition>
</Place>
<Place>
<!-- ... -->
</Place>
</Places>
<Situations>
<PtSituation>
<siri:CreationTime>2025-03-13T11:17:00Z</siri:CreationTime>
<siri:ParticipantRef>ski-ddip-out-sx_prod</siri:ParticipantRef>
<siri:SituationNumber>ch:1:sstid:100001:ski-oct_sip2-sx_prod-TT958987-0</siri:SituationNumber>
<siri:Version>1</siri:Version>
<siri:Source>
<siri:SourceType>directReport</siri:SourceType>
</siri:Source>
<siri:ValidityPeriod>
<siri:StartTime>2025-03-13T11:17:00Z</siri:StartTime>
<siri:EndTime>2025-03-14T21:00:00Z</siri:EndTime>
</siri:ValidityPeriod>
<siri:AlertCause>unknown</siri:AlertCause>
<siri:Priority>3</siri:Priority>
<siri:ScopeType>stopPoint</siri:ScopeType>
<siri:Language>de</siri:Language>
<siri:PublishingActions>
<siri:PublishingAction>
<siri:PublishAtScope>
<siri:ScopeType>stopPoint</siri:ScopeType>
<siri:Affects/>
</siri:PublishAtScope>
<siri:PassengerInformationAction>
<siri:ActionRef/>
<siri:RecordedAtTime>2025-03-13T11:17:00Z</siri:RecordedAtTime>
<siri:Perspective>stopPoint</siri:Perspective>
<siri:TextualContent>
<siri:SummaryContent>
<siri:SummaryText xml:lang="de">Der stufenfreie Zugang zum Bahnhof Basel SBB ist für Reisende mit Mobilitätseinschränkung nicht mehr garantiert.</siri:SummaryText>
<!-- ... -->
</siri:TextualContent>
</siri:PassengerInformationAction>
</siri:PublishingAction>
</siri:PublishingActions>
</PtSituation>
</Situations>
</TripInfoResponseContext>TripInfoResult
Après le contexte apparaît le parcours lui-même; d’abord, tous les arrêts avec Appels précédents (arrêts précédents) et OnwardCalls (arrêts suivants). Il est possible qu’il y ait davantage d’arrêts que dans la TripRequest émise pour la détermination de la JourneyRef, car la TripInfoRequest fournit toujours la totalité du convoi. Exemple: Pour une TripRequest de Berne à Zurich, la TripInfoRequest correspondante pourrait fournir un convoi de Genève à Saint-Gall, dont le tronçon Berne–Zurich fait partie.
La réponse contient plus ou moins de détails en fonction des paramètres de la demande. Pour les temps réels notamment, nous recommandons de demander «UseRealtimeData» avec «explanatory» afin d’obtenir tous les détails sur les temps réels afin que les courses annulées restent affichées.
<TripInfoResult>
<PreviousCall>
<siri:StopPointRef>ch:1:sloid:10:4:8</siri:StopPointRef>
<StopPointName>
<Text xml:lang="de">Basel SBB</Text>
</StopPointName>
<NameSuffix>
<Text xml:lang="de">PLATFORM_ACCESS_WITHOUT_ASSISTANCE</Text>
</NameSuffix>
<PlannedQuay>
<Text xml:lang="de">8</Text>
</PlannedQuay>
<ServiceDeparture>
<TimetabledTime>2025-03-14T13:56:00Z</TimetabledTime>
<EstimatedTime>2025-03-14T14:02:00Z</EstimatedTime>
</ServiceDeparture>
<Order>1</Order>
</PreviousCall>
<!-- ... -->
<PreviousCall>
<siri:StopPointRef>ch:1:sloid:7483:0:954324</siri:StopPointRef>
<StopPointName>
<Text xml:lang="de">Spiez</Text>
</StopPointName>
<NameSuffix>
<Text xml:lang="de">PLATFORM_ACCESS_WITHOUT_ASSISTANCE</Text>
</NameSuffix>
<PlannedQuay>
<Text xml:lang="de">3</Text>
</PlannedQuay>
<ServiceArrival>
<TimetabledTime>2025-03-14T15:37:00Z</TimetabledTime>
<EstimatedTime>2025-03-14T15:36:36Z</EstimatedTime>
</ServiceArrival>
<ServiceDeparture>
<TimetabledTime>2025-03-14T15:38:00Z</TimetabledTime>
<EstimatedTime>2025-03-14T15:39:12Z</EstimatedTime>
</ServiceDeparture>
<Order>6</Order>
</PreviousCall>
<OnwardCall>
<siri:StopPointRef>ch:1:sloid:1605:4:7</siri:StopPointRef>
<StopPointName>
<Text xml:lang="de">Visp</Text>
</StopPointName>
<NameSuffix>
<Text xml:lang="de">PLATFORM_ACCESS_WITHOUT_ASSISTANCE</Text>
</NameSuffix>
<PlannedQuay>
<Text xml:lang="de">7</Text>
</PlannedQuay>
<ServiceArrival>
<TimetabledTime>2025-03-14T16:04:00Z</TimetabledTime>
<EstimatedTime>2025-03-14T16:03:12Z</EstimatedTime>
</ServiceArrival>
<ServiceDeparture>
<TimetabledTime>2025-03-14T16:06:00Z</TimetabledTime>
<EstimatedTime>2025-03-14T16:06:42Z</EstimatedTime>
</ServiceDeparture>
<Order>7</Order>
</OnwardCall>
<!-- ... -->
</TripInfoResult>Entretien
Les informations sur le chapitre Entretien en détail: LineRef, Mode (type de moyen de transport), OperatorRef, PublishedServiceName, TrainNumber, etc.
<TripInfoResult>
<!-- ... -->
<Service>
<OperatingDayRef>2025-03-14</OperatingDayRef>
<JourneyRef>ch:1:sjyid:100001:975-001</JourneyRef>
<siri:LineRef>ojp:91006:H</siri:LineRef>
<siri:DirectionRef>R</siri:DirectionRef>
<Mode>
<PtMode>rail</PtMode>
<siri:RailSubmode>interregionalRail</siri:RailSubmode>
<Name>
<Text xml:lang="de">Zug</Text>
</Name>
<ShortName>
<Text xml:lang="de">IC</Text>
</ShortName>
</Mode>
<ProductCategory>
<Name>
<Text xml:lang="de">Zug</Text>
</Name>
<ShortName>
<Text xml:lang="de">IC</Text>
</ShortName>
<ProductCategoryRef>23</ProductCategoryRef>
</ProductCategory>
<PublishedServiceName>
<Text xml:lang="de">IC6</Text>
</PublishedServiceName>
<TrainNumber>975</TrainNumber>
<OriginText>
<Text xml:lang="de">n/a</Text>
</OriginText>
<siri:OperatorRef>11</siri:OperatorRef>
<DestinationStopPointRef>ch:1:sloid:1609:2:3</DestinationStopPointRef>
<DestinationText>
<Text xml:lang="de">Brig</Text>
</DestinationText>
<SituationFullRefs>
<SituationFullRef>
<siri:ParticipantRef>ski-ddip-out-sx_prod</siri:ParticipantRef>
<siri:SituationNumber>ch:1:sstid:100001:ski-oct_sip2-sx_prod-TT958987-0</siri:SituationNumber>
</SituationFullRef>
</SituationFullRefs>
</Service>
</TripInfoResult>JourneyTrack et LinkProjection
Ensuite, JourneyTrack et LinkProjection (paramètre de la demande = true: IncludeTrackSections et IncludeLinkProjection) fournit des informations géographiques sur le Journey.
<ojp:TripInfoResult>
<!-- ... -->
<JourneyTrack>
<TrackSection>
<TrackSectionStart>
<siri:StopPointRef>ch:1:sloid:10</siri:StopPointRef>
<Name>
<Text xml:lang="de">Basel SBB</Text>
</Name>
</TrackSectionStart>
<TrackSectionEnd>
<siri:StopPointRef>8501609</siri:StopPointRef>
<Name>
<Text xml:lang="de">Brig</Text>
</Name>
</TrackSectionEnd>
<LinkProjection>
<Position>
<siri:Longitude>7.59235</siri:Longitude>
<siri:Latitude>47.54587</siri:Latitude>
</Position>
<Position>
<siri:Longitude>7.59256</siri:Longitude>
<siri:Latitude>47.54579</siri:Latitude>
</Position>
<!-- ... -->
<Position>
<siri:Longitude>7.59273</siri:Longitude>
<siri:Latitude>47.54575</siri:Latitude>
</Position>
<Position>
<siri:Longitude>7.98536</siri:Longitude>
<siri:Latitude>46.31967</siri:Latitude>
</Position>
<Position>
<siri:Longitude>7.98575</siri:Longitude>
<siri:Latitude>46.31969</siri:Latitude>
</Position>
</LinkProjection>
<Duration>PT2H13M</Duration>
<Length>0</Length>
</TrackSection>
</JourneyTrack>
</ojp:TripInfoResult>