OJPStopEventRequest 2.0

#AutoTranslate

Descrizione breve

Il servizio StopEvent viene utilizzato per realizzare un monitor partenze o arrivi. Sono incluse tutte le corse a partire da una fermata e dai bordi fermata assegnati. A differenza del router, tuttavia, se per la fermata richiesta non sono disponibili risultati non vengono fornite fermate vicine.

Descrizione tecnica

API Explorer

Puoi provare le tue richieste – link diretto all’API Explorer.

Richiesta

La richiesta viene effettuata con un OJPStopEventRequest, che contiene diversi parametri per la richiesta; di seguito è riportato l’esempio di Berna:

<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-11T14:11:26.795Z</siri:RequestTimestamp>
            <siri:RequestorRef>SKIPlus</siri:RequestorRef>
            <OJPStopEventRequest>
                <siri:RequestTimestamp>2025-02-11T14:11:26.795Z</siri:RequestTimestamp>
                <siri:MessageIdentifier>SER_1</siri:MessageIdentifier>
                <Location>
                    <PlaceRef>
                        <siri:StopPointRef>ch:1:sloid:7000</siri:StopPointRef>
                        <Name>
                            <Text>Bern</Text>
                        </Name>
                    </PlaceRef>
                    <DepArrTime>2025-02-11T14:11:21.539Z</DepArrTime>
                </Location>
                <Params>
                    <NumberOfResults>10</NumberOfResults>
                    <StopEventType>departure</StopEventType>
                    <IncludePreviousCalls>true</IncludePreviousCalls>
                    <IncludeOnwardCalls>true</IncludeOnwardCalls>
                    <UseRealtimeData>full</UseRealtimeData>
                </Params>
            </OJPStopEventRequest>
        </siri:ServiceRequest>
    </OJPRequest>
</OJP>

Di seguito vengono indicati i parametri della OJPStopEventRequestStructure:

Elemento Cardinalità Descrizione Esempio
RequestTimestamp 1:1 Timestamp della richiesta. Preferito in Zulu Time.
<siri:RequestTimestamp>2025-02-11T14:11:26.795Z</siri:RequestTimestamp>
MessageIdentifier 0:1 L’identificativo del messaggio. Può essere selezionato dall’utente. Può essere utile in caso di assistenza. Se disponibile, viene restituito nella risposta.
<siri:MessageIdentifier>SER_1</siri:MessageIdentifier>

Location/StopPlaceRef -1:1 Riferimento a uno StopPlace da cui partono le corse di interesse. L’elemento «Name» (Nome) deve essere presente, ma non viene analizzato. Maggiori informazioni Informazioni.
<PlaceRef>
<StopPlaceRef>ch:1:sloid:7000</StopPlaceRef>
<Name>
<Text>Bern</Text>
</Name>
</PlaceRef>
Location/siri:StopPointRef -1:1 Riferimento a uno stoppoint dal quale partono le corse di interesse. Se il riferimento è di un bordo fermata, vengono trovate solo le corse che partono da quel bordo. L’elemento «Name» (Nome) deve essere presente, ma non viene analizzato. Maggiori informazioni Informazioni.
<PlaceRef>
<siri:StopPointRef>ch:1:sloid:7000</siri:StopPointRef>
<Name>
<Text>Bern</Text>
</Name>
</PlaceRef>
Location/GeoPosition -1:1 Coordinate WGS84, vengono fornite le prossime partenze in prossimità di questo punto nell’ordine delle partenze. Possono provenire da diverse fermate e sono ordinate cronologicamente. L’elemento «Name» (Nome) deve essere presente, ma non viene analizzato.
<PlaceRef>
    <GeoPosition>
        <siri:Longitude>8.5545</siri:Longitude>
        <siri:Latitude>47.365</siri:Latitude>
    </GeoPosition>
    <Name>
        <Text>Zürich Kreuzplatz</Text>
    </Name>
</PlaceRef>
Location/DepArrTime 0:1 Il tempo da utilizzare. Meglio come tempo zulu«Z» è l’orario zulu (quindi indipendente dal fuso orario). Per la cifra Z è indispensabile indicare anche i secondi. Se il formato non è corretto o se non è disponibile alcuna cifra Z, il sistema cerca di interpretare l’orario come orario locale.
<DepArrTime>2025-02-11T14:11:21.539Z</DepArrTime>

Location/TimeAllowance 0:1 Tempo supplementare necessario per raggiungere e uscire dal luogo in questione (ad es. E. massimo 5 minuti a piedi, ma 10 minuti in bicicletta). xs: Durata.
<Location>
<PlaceRef>
<siri:StopPointRef>ch:1:sloid:7000</siri:StopPointRef>
<Name>
<Text>Bern</Text>
</Name>
</PlaceRef>
<TimeAllowance>PT5M</TimeAllowance>
</Location>
Params 0:1 StopEventParamStructure Per i dettagli vedere la tabella seguente.
<Params>
<StopEventType>both</StopEventType>
<IncludePreviousCalls>true</IncludePreviousCalls>
<IncludeOnwardCalls>true</IncludeOnwardCalls>
<IncludeOperatingDays>true</IncludeOperatingDays>
<UseRealtimeData>full</UseRealtimeData>
</Params>

Parametri del StopEventDataFilters (Filtro eventi stop)

Elemento Cardinalità Descrizione Esempio
ModeFilter 0:1 Filtra per modalità. L’elemento Exclude indica se includere o escludere le modalità. È possibile aggiungere modalità 1:*. È supportato solo «PtMode», non «PersonalMode». <ModeFilter>
    <Exclude>true</Exclude>
    <PtMode>bus</PtMode>
</ModeFilter>
LineFilter 0:1 Filtro per linea. L’elemento Exclude indica se le linee devono essere incluse o escluse. È possibile aggiungere linea 1:*.

 

<LineFilter>
<Line>
<siri:LineRef>sbb:91018:A</siri:LineRef>
<siri:DirectionRef>H</siri:DirectionRef>
</Line>
<Exclude>true</Exclude>
</LineFilter>
OperatorFilter 0:1 Filtro per operatore. L’elemento Exclude indica se gli operatori devono essere inclusi o esclusi. Si possono aggiungere 1:* Rif.Operatore.
<OperatorFilter>
<Exclude>false</Exclude>
<OperatorRef>ojp:11</OperatorRef>
</OperatorFilter>
NumberOfResults 0:1 Numero di risultati richiesti. Se il risultato non è sufficiente, si ottengono meno risultati. Se si trovano risultati con la stessa priorità, possono essere forniti anche più risultati.
<NumberOfResults>10</NumberOfResults>
StopEventType 0:1 Tipo di StopEvent:
  • arrivo
  • partenza
  • entrambe
<StopEventType>both</StopEventType>
IncludePreviousCalls 0:1 Per le singole corse è necessario indicare le fermate precedenti?
<IncludePreviousCalls>true</IncludePreviousCalls>
IncludeOnwardCalls 0:1 Per le singole corse occorre indicare le fermate di congiunzione?
<IncludeOnwardCalls>true</IncludeOnwardCalls>
IncludeOperatingDays 0:1 Le informazioni sui giorni d’esercizio di questo StopEvent devono essere inserite?
<IncludeOperatingDays>true</IncludeOperatingDays>
UseRealtimeData 0:1 Determina come viene considerato il tempo reale; full = tutto; explanatory = anche ritardi e cancellati Collegamenti (variante più dettagliata); none = solo secondo Orario.
<UseRealtimeData>explanatory</UseRealtimeData>
IncludePlacesContext 0:1 Deve essere trasmesso il contesto locale? Se questa informazione è già disponibile, è possibile farlo con false snellire la risposta. L’impostazione predefinita è true.
<IncludePlacesContext>true</IncludePlacesContext>
IncludeSituationsContext 0:1 Gli annunci degli eventi devono essere trasmessi? Se queste informazioni sono già disponibili, è possibile farlo con false snellire la risposta. L’impostazione predefinita è true.
<IncludeSituationsContext>true</IncludeSituationsContext>
IncludeAllRestrictedLines 0:1 Ci possono essere linee che hanno restrizioni particolari e non sono generalmente accessibili al pubblico. Ad es. scuolabus, navette aziendali, skilift devono disporre di una funzione ACCESS MODE per sci. Vengono incluse anche le linee con ACCESS MODE per biciclette. Se questa opzione è impostata, il router terrà conto delle linee limitate esistenti.
Un esempio sono i treni auto più in basso.
<IncludeAllRestrictedLines>true</IncludeAllRestrictedLines>

Risposta

Il risultato ricevuto è una OJPStopEventDelivery Messaggio composto dal TripResponseContext e dai vari TripResults e si presenta come indicato:

<OJP xmlns:siri="http://www.siri.org.uk/siri" xmlns="http://www.vdv.de/ojp" version="2.0">
    <OJPResponse>
        <siri:ServiceDelivery>
           <siri:ResponseTimestamp>2025-02-14T18:03:51.3185811+01:00</siri:ResponseTimestamp>
           <siri:ProducerRef>MENTZ</siri:ProducerRef>
           <OJPStopEventDelivery>
               <siri:ResponseTimestamp>2025-02-14T18:03:51.3185821+01:00</siri:ResponseTimestamp>
               <siri:RequestMessageRef>c5c59047-5c59-4ade-b635-9c942a0125ec</siri:RequestMessageRef>
               <siri:DefaultLanguage>de</siri:DefaultLanguage>
               <CalcTime>42</CalcTime>
               <StopEventResponseContext>
                   <Places>
                       <Place>
                           <StopPlace>
                               <StopPlaceRef>ch:1:sloid:91178</StopPlaceRef>
                               <StopPlaceName>
                                   <Text xml:lang="de">Zürich, Hardturm</Text>
                               </StopPlaceName>
                               <TopographicPlaceRef>23026261:27</TopographicPlaceRef>
                           </StopPlace>
                           <Name>
                               <Text xml:lang="de">Zürich, Hardturm</Text>
                           </Name>
                           <GeoPosition>
                               <siri:Longitude>8.50455</siri:Longitude>
                               <siri:Latitude>47.39415</siri:Latitude>
                           </GeoPosition>
                       </Place>
                       <Place>
                           <StopPoint>
                               <siri:StopPointRef>ch:1:sloid:91178::0</siri:StopPointRef>
                               <StopPointName>
                                   <Text xml:lang="de">Zürich, Hardturm</Text>
                               </StopPointName>
                               <ParentRef>ch:1:sloid:91178</ParentRef>
                               <TopographicPlaceRef>23026261:27</TopographicPlaceRef>
                           </StopPoint>
                           <Name>
                               <Text xml:lang="de">Zürich, Hardturm</Text>
                           </Name>
                           <GeoPosition>
                               <siri:Longitude>8.50455</siri:Longitude>
                               <siri:Latitude>47.39415</siri:Latitude>
                           </GeoPosition>
                       </Place>
                       <Place>
                           <TopographicPlace>
                               <TopographicPlaceCode>23026261:27</TopographicPlaceCode>
                               <TopographicPlaceName>
                                   <Text xml:lang="de">Zürich</Text>
                               </TopographicPlaceName>
                           </TopographicPlace>
                           <Name>
                               <Text xml:lang="de">Zürich</Text>
                           </Name>
                           <GeoPosition>
                               <siri:Longitude>8.50455</siri:Longitude>
                               <siri:Latitude>47.39415</siri:Latitude>
                           </GeoPosition>
                       </Place>
<!-- ... --> 
                       <Place>
                           <StopPoint>
                               <siri:StopPointRef>ch:1:sloid:91178::3</siri:StopPointRef>
                               <StopPointName>
                                   <Text xml:lang="de">Zürich, Hardturm</Text>
                               </StopPointName>
                               <ParentRef>ch:1:sloid:91178</ParentRef>
                               <TopographicPlaceRef>23026261:27</TopographicPlaceRef>
                           </StopPoint>
                           <Name>
                               <Text xml:lang="de">Zürich, Hardturm</Text>
                           </Name>
                           <GeoPosition>
                               <siri:Longitude>8.50429</siri:Longitude>
                               <siri:Latitude>47.39473</siri:Latitude>
                           </GeoPosition>
                       </Place>
                   </Places>
                   <Situations/>
               </StopEventResponseContext>
               <StopEventResult>
                   <StopEvent>
                       <PreviousCall>
                           <CallAtStop>
                               <siri:StopPointRef>ch:1:sloid:91178::0</siri:StopPointRef>
                               <StopPointName>
                                   <Text xml:lang="de">Zürich, Hardturm</Text>
                               </StopPointName>
                               <ServiceDeparture>
                                   <TimetabledTime>2025-02-17T08:33:00Z</TimetabledTime>
                               </ServiceDeparture>
                               <Order>1</Order>
                           </CallAtStop>
                       </PreviousCall>
<!-- ... --> 
                       <ThisCall>
                           <CallAtStop>
                               <siri:StopPointRef>ch:1:sloid:30813::0</siri:StopPointRef>
                               <StopPointName>
                                   <Text xml:lang="de">Zürich, Kreuzplatz</Text>
                               </StopPointName>
                               <ServiceDeparture>
                                   <TimetabledTime>2025-02-17T09:01:00Z</TimetabledTime>
                               </ServiceDeparture>
                               <Order>19</Order>
                           </CallAtStop>
                       </ThisCall>
                       <OnwardCall>
                           <CallAtStop>
                               <siri:StopPointRef>ch:1:sloid:91119::0</siri:StopPointRef>
                               <StopPointName>
                                   <Text xml:lang="de">Zürich, Englischviertelstrasse</Text>
                               </StopPointName>
                               <ServiceArrival>
                                   <TimetabledTime>2025-02-17T09:02:00Z</TimetabledTime>
                               </ServiceArrival>
                               <ServiceDeparture>
                                   <TimetabledTime>2025-02-17T09:03:00Z</TimetabledTime>
                               </ServiceDeparture>
                               <Order>20</Order>
                            </CallAtStop>
                        </OnwardCall>
<!-- ... --> 
                        <OnwardCall>
                            <CallAtStop>
                                <siri:StopPointRef>ch:1:sloid:91233::1</siri:StopPointRef>
                                <StopPointName>
                                    <Text xml:lang="de">Zürich, Klusplatz</Text>
                                </StopPointName>
                                <PlannedQuay>
                                    <Text xml:lang="de">B</Text>
                                </PlannedQuay>
                                <ServiceArrival>
                                    <TimetabledTime>2025-02-17T09:06:00Z</TimetabledTime>
                                </ServiceArrival>
                            </CallAtStop>
                        </OnwardCall>
                        <Service>
                            <Mode>
                                <PtMode>tram</PtMode>
                                <siri:TramSubmode>cityTram</siri:TramSubmode>
                                <Name>
                                    <Text xml:lang="de">Tram</Text>
                                </Name>
                                <ShortName>
                                    <Text xml:lang="de">T</Text>
                                </ShortName>
                            </Mode>
                            <ConventionalModeOfOperation>scheduled</ConventionalModeOfOperation>
                            <TrainNumber>4619</TrainNumber>
                            <siri:LineRef>ojp:91008:H</siri:LineRef>
                            <siri:OperatorRef>3849</siri:OperatorRef>
                            <PublicCode>Tram</PublicCode>
                            <PublishedServiceName>
                                <Text xml:lang="de">8</Text>
                            </PublishedServiceName>
                            <ProductCategory>
                                <Name>
                                    <Text xml:lang="de">Tram</Text>
                                </Name>
                                <ShortName>
                                    <Text xml:lang="de">T</Text>
                                </ShortName>
                                <ProductCategoryRef>2</ProductCategoryRef>
                            </ProductCategory>
                            <siri:DirectionRef>H</siri:DirectionRef>
                            <JourneyRef>ch:1:sjyid:100648:plan:3183eb5d-c26c-4ef4-972d-c92c4416363a</JourneyRef>
                            <OperatingDayRef>2025-02-17</OperatingDayRef>
                            <Cancelled>false</Cancelled>
                            <Unplanned>false</Unplanned>
                            <Deviation>false</Deviation>
                            <Attribute>
                                <UserText>
                                    <Text xml:lang="de">Niederflureinstieg</Text>
                                </UserText>
                                <Code>A__NF</Code>
                            </Attribute>
                            <OriginStopPointRef>ch:1:sloid:91178::0</OriginStopPointRef>
                            <DestinationStopPointRef>ch:1:sloid:91233::1</DestinationStopPointRef>
                            <OriginText>
                                <Text xml:lang="de">Zürich, Hardturm</Text>
                            </OriginText>
                            <DestinationText>
                                <Text xml:lang="de">Zürich, Klusplatz</Text>
                            </DestinationText>
                        </Service>
                        <OperatingDays>
                            <From>2025-02-02</From>
                            <To>2025-12-12</To>
                            <Pattern>01111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100011110011111000111000111110011111001111100111110011110001111100101110011111001111100111110010111001111000011110011111001111100111110011111001111100111110011111001111100111110011111</Pattern>
                        </OperatingDays>
                    </StopEvent>
                </StopEventResult>
<!-- ... --> 
            </OJPStopEventDelivery>
        </siri:ServiceDelivery>
    </OJPResponse>
</OJP>
+

La risposta è in una OJPStopEventDelivery strutturato come segue:

Elemento Cardinalità Descrizione Esempio
siri:ResponseTimestamp 1:1 Il timestamp della risposta
<siri:ResponseTimestamp>2020-04-03T14:47:59Z</siri:ResponseTimestamp>
siri:RequesteMessageRef 0:1 Qui viene fatto riferimento al messaggio richiesto
<siri:RequestMessageRef>756</siri:RequestMessageRef>
siri:DeliveryStatus 0:1 Lo stato della risposta, true significa che la richiesta è stata elaborata.
<siri:Status>true</siri:Status>
CalcTime 0:1 Il tempo di calcolo in millisecondi
<CalcTime>139</CalcTime>
StopEventResponseContext 0:1 Qui vengono restituite informazioni di riferimento come le fermate utilizzate.V. tabella separata
StopEventResult 0:* I risultati effettivi. Vedi esempio sopra.
<StopEventResult>
<StopEvent>
<PreviousCall>
<CallAtStop>
<siri:StopPointRef>ch:1:sloid:91178::0</siri:StopPointRef>
<StopPointName>
<Text xml:lang="de">Zürich, Hardturm</Text>
</StopPointName>
<ServiceDeparture>
<TimetabledTime>2025-02-17T08:33:00Z</TimetabledTime>
</ServiceDeparture>
<Order>1</Order>
</CallAtStop>
</PreviousCall>
<!-- ... -->
<ThisCall>
<!-- ... -->
</ThisCall>
<!-- ... -->
<OnwardCall>
<!-- ... -->
</OnwardCall>
StopEventResult/Id 1:1 L’ID del risultato
<ResultId>ID-5194D714-33A5-48B0-8895-BDCBAB540958</ResultId>
StopEventResult/StopEvent 1:1 Le singole corse. Vedi tabella a parte

ReponseContextStucture

Struttura con contesti di risposta relativi ai viaggi che contengono raccolte di luoghi e situazioni come i seguenti elementi:

  • Operatori
  • Posti
  • Situazione
Elemento Cardinalità Descrizione Esempio
Operators 0:1 Struttura per oggetti operatore. Dovrebbero essere generati solo gli oggetti operatore a cui si fa riferimento nella risposta. n.d.
Places 0:1 Nella struttura dovrebbero essere inclusi solo gli oggetti di posizionamento a cui si fa riferimento nella risposta.
<Places>
<Place>
<StopPlace>
<StopPlaceRef>ch:1:sloid:7000</StopPlaceRef>
<StopPlaceName>
<Text xml:lang="de">Bern</Text>
</StopPlaceName>
<TopographicPlaceRef>23006351:1</TopographicPlaceRef>
</StopPlace>
<Name>
<Text xml:lang="de">Bern</Text>
</Name>
<GeoPosition>
<siri:Longitude>7.43772</siri:Longitude>
<siri:Latitude>46.94929</siri:Latitude>
</GeoPosition>
</Place>
<!-- ... -->
</Places>
Situations 0:1 Struttura per oggetti di situazione SIRI SX. Devono essere riportate solo le situazioni a cui si fa riferimento nella risposta.
<Situations>
<PtSituation>
<siri:CreationTime>2024-10-24T08:46:00Z</siri:CreationTime>
<siri:ParticipantRef>ski-ddip-out-sx_prod</siri:ParticipantRef>
<siri:SituationNumber>ch:1:sstid:100001:57f8d406-b6f7-420d-9a03-46eb48a4de24-1</siri:SituationNumber>
<siri:Version>7</siri:Version>
<siri:Source>
<siri:SourceType>directReport</siri:SourceType>
</siri:Source>
<siri:ValidityPeriod>
<siri:StartTime>2025-02-02T21:30:00Z</siri:StartTime>
<siri:EndTime>2025-12-08T04:55: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>2024-10-24T08:46:00Z</siri:RecordedAtTime>
<siri:Perspective>stopPoint</siri:Perspective>
<siri:TextualContent>
<siri:SummaryContent>
<siri:SummaryText xml:lang="de">Der Bahnverkehr zwischen Bern und Olten ist eingeschränkt.</siri:SummaryText>
</siri:SummaryContent>
<siri:ReasonContent>
<siri:ReasonText xml:lang="de">Der Grund dafür sind Bauarbeiten.</siri:ReasonText>
</siri:ReasonContent>
<siri:DurationContent>
<siri:DurationText xml:lang="de">Die Einschränkung dauert von 02.02.2025, 22:30 bis 03.02.2025, 05:55. Die Einschränkung dauert von 04.05.2025, 22:30 bis 05.05.2025, 05:55. Die Einschränkung dauert von 15.06.2025 bis 20.06.2025, jeweils von 22:30 bis 05:55. Die Einschränkung dauert von 22.06.2025 bis 27.06.2025, jeweils von 22:30 bis 05:55. Die Einschränkung dauert von 27.07.2025, 22:30 bis 28.07.2025, 05:55. Die Einschränkung dauert von 21.09.2025 bis 26.09.2025, jeweils von 22:30 bis 05:55. Die Einschränkung dauert von 28.09.2025 bis 03.10.2025, jeweils von 22:30 bis 05:55. Die Einschränkung dauert von 07.12.2025, 22:30 bis 08.12.2025, 05:55.</siri:DurationText>
</siri:DurationContent>
</siri:TextualContent>
</siri:PassengerInformationAction>
</siri:PublishingAction>
</siri:PublishingActions>
</PtSituation>

StrutturaStopEvent

Lo StopEvent è costituito da:

  • PreviousCall(s): Se è stato selezionato un parametro
  • ThisCall: La fermata attualmente selezionata
  • OnwardCall(s): Fermate future nella corsa
  • Servizio: Informazioni sulla corsa
Elemento Cardinalità Descrizione Esempio
PreviousCall 0:* Le PreviousCall sono le fermate che precedono la persona a cui è stato richiesto. Tutte le informazioni sono disponibili in un CallAtStop. Vedi la sezione corrispondente.
<PreviousCall>
<CallAtStop>
<siri:StopPointRef>ch:1:sloid:91142</siri:StopPointRef>
<StopPointName>
<Text>Zürich, Friedhof Enzenbühl</Text>
</StopPointName>
<ServiceArrival>
<TimetabledTime>2020-04-03T15:32:00Z</TimetabledTime>
</ServiceArrival>
<ServiceDeparture>
<TimetabledTime>2020-04-03T15:32:00Z</TimetabledTime>
</ServiceDeparture>
<Order>2</Order>
</CallAtStop>
</PreviousCall>
ThisCall 1:1 Questa è la fermata oggetto della richiesta. Tutte le informazioni sono in un CallAtStop. V. paragrafo corrispondente.
<ThisCall>
<CallAtStop>
<siri:StopPointRef>ch:1:sloid:30813</siri:StopPointRef>
<StopPointName>
<Text>Zürich Kreuzplatz</Text>
</StopPointName>
<ServiceArrival>
<TimetabledTime>2020-04-03T15:40:00Z</TimetabledTime>
</ServiceArrival>
<ServiceDeparture>
<TimetabledTime>2020-04-03T15:40:00Z</TimetabledTime>
</ServiceDeparture>
<Order>9</Order>
</CallAtStop>
</ThisCall>
OnwardCall 0:* L’OnwardCall indica le fermate successive alla fermata attuale richiesta nella Request. Tutte le informazioni sono in un CallAtStop. V. paragrafo corrispondente.
<OnwardCall>
<CallAtStop>
<siri:StopPointRef>ch:1:sloid:91049</siri:StopPointRef>
<StopPointName>
<Text>Zürich, Auzelg</Text>
</StopPointName>
<ServiceArrival>
<TimetabledTime>2020-04-03T16:16:00Z</TimetabledTime>
</ServiceArrival>
<Order>34</Order>
</CallAtStop>
</OnwardCall>
Service 1:1 Il servizio fornisce informazioni sull’intero viaggio.
Comprende «OperatingDayRef» e «JourneyRef», che insieme creano una determinata corsa. Sono inoltre indicati la «Mode» (Modalità) e il «PublicCode» (Codice pubblico) con il nome della linea. Informazioni più dettagliate su «Origin» e «Destination» (Destinazione) si trovano nello «StopEventResponseContext». Vi sono anche indicazioni come il «TrainNumber» e i diversi attributi dell’orario che descrivono i dettagli del treno, come ad es. «A__NF» per l’accesso a pianale ribassato. Un elenco con descrizione di tali attributi è disponibile qui: Descrizione.
<Service>
<OperatingDayRef>2020-04-03</OperatingDayRef>
<JourneyRef>ch:1:sjyid:100001:627-001</JourneyRef>
<siri:LineRef>sbb:91011:A</siri:LineRef>
<siri:DirectionRef>R</siri:DirectionRef>
<Mode>
<PtMode>tram</PtMode>
<siri:TramSubmode>cityTram</siri:TramSubmode>
<Name>
<Text xml:lang="de">Tram</Text>
</Name>
</Mode>
<PublishedLineName>
<Text>11</Text>
</PublishedLineName>
<OperatorRef>sbb:3849</OperatorRef>
<OriginStopPointRef>ch:1:sloid:91315</OriginStopPointRef>
<OriginText>
<Text xml:lang="de">Zürich, Rehalp</Text>
</OriginText>
<DestinationStopPointRef>ch:1:sloid:91049</DestinationStopPointRef>
<DestinationText>
<Text xml:lang="de">Zürich, Auzelg</Text>
</DestinationText>
</Service>
OperatingDays 0:1 La validità del viaggio indicato e i modelli in cui avverrà questo collegamento.
<OperatingDays>
<From>2025-02-02</From>
<To>2025-12-12</To>
<Pattern>01111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100011110011111000111000111110011111001111100111110011110001111100101110011111001111100111110010111001111000011110011111001111100111110011111001111100111110011111001111100111110011111</Pattern>
</OperatingDays>
OperatingDays/From 1:1 Data di validità dal, sempre nel formato «aaaa-mm-gg».
<From>2025-02-02</From>
OperatingDays/To 1:1 Data di validità fino a quando, sempre nel formato «aaaa-mm-gg».
<To>2025-12-12</To>
OperatingDays/Pattern 1:1 Ulteriori informazioni sull’interpretazione del pattern sono disponibili qui: Calendario linee
<Pattern>01111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100111110011111001111100011110011111000111000111110011111001111100111110011110001111100101110011111001111100111110010111001111000011110011111001111100111110011111001111100111110011111001111100111110011111</Pattern>

CallAtStopStruttura

 

Elemento Cardinalità Descrizione Esempio
siri:StopPointRef 1:1 Il numero di fermata. Vengono ancora utilizzati solo gli SLOID; per StopPoint esteri possono ancora essere utilizzati numeri BPUIC come StopPointRef. Di più Informazioni.
<siri:StopPointRef>ch:1:sloid:30813</siri:StopPointRef>
StopPointName 1:1 Nome della fermata
<StopPointName>
<Text>Zürich Kreuzplatz</Text>
</StopPointName>
PlannedQuay 0:1 Il marciapiede previsto
<PlannedQuay>
<Text xml:lang="de">1</Text>
</PlannedQuay>
EstimatedQuay 0:1 Il sentiero attuale, se disponibile
<EstimatedQuay>
<Text xml:lang="de">1</Text>
</EstimatedQuay
ServiceArrival 0:1 La prima fermata non ha nessun Arrival.
<ServiceArrival>
<TimetabledTime>2020-04-03T15:40:00Z</TimetabledTime>
<EstimatedTime>2020-04-03T15:40:00Z</EstimatedTime>
</ServiceArrival>
ServiceDeparture 0:1 L’ultima fermata non ha Departure.
<ServiceDeparture>
<TimetabledTime>2020-04-03T15:40:00Z</TimetabledTime>
<EstimatedTime>2020-04-03T15:40:00Z</EstimatedTime>
</ServiceDeparture>
Order 1:1 La sequenza delle fermate
<Order>9</Order>
RequestStop 0:1 Fermata su richiesta. Booleana. Previsto per una versione futura. n.d.
UnplannedStop 0:1 Fermata che secondo la pianificazione non era prevista. Booleana. Previsto per una versione futura. n.d.
NotServicedStop 0:1 Contrariamente a quanto previsto dalla pianificazione, non sono previste fermate (soppressioni).
<NotServicedStop>true</NotServicedStop>
NoBoardingAtStop 0:1 A questa fermata non è possibile salire a bordo.
<NoBoardingAtStop>true</NoBoardingAtStop>
NoAlightingAtStop 0:1 A questa fermata non è possibile scendere dal treno.
<NoAlightingAtStop>true</NoAlightingAtStop>

La ContinousServiceStructure

Elemento Cardinalità Descrizione Esempio
OperatingDayRef 1:1 Il giorno di esercizio rilevante
<OperatingDayRef>2020-04-03</OperatingDayRef>
JourneyRef 1:1 L’ID della corsa.
<JourneyRef>ch:1:sjyid:100001:627-001</JourneyRef>
siri:LineRef 1:1 ID della linea.
<siri:LineRef>ojp:91021:H</siri:LineRef>
siri:DirectionRef 0:1 L’ID della direzione.
<siri:DirectionRef>R</siri:DirectionRef>
Mode 1:1 La modalità traffico. L’elenco delle modalità è disponibile presso LocationInformation Request
<Mode>
<PtMode>tram</PtMode>
<siri:TramSubmode>cityTram</siri:TramSubmode>
<Name>
<Text xml:lang="de">Tram</Text>
</Name>
</Mode>
PublishedLineName 1:1 Il nome pubblicato della linea.
<PublishedLineName>
<Text>11</Text>
</PublishedLineNam
OperatorRef 0:1 Il riferimento all’operatore.
<siri:OperatorRef>ojp:11</siri:OperatorRef>
Attribute 0:* Gli attributi sono caratteristiche per lo più sulle corse. Ad es. autobus a pianale ribassato, bar, prenotazione necessaria.Mandataory è true se l’attributo deve essere assolutamente visualizzato all’utente.
<Attribute>
<Text>
<Text xml:lang="de">Linie 31: Niederflureinstieg</Text>
<Text>
<Code>30</Code>
<Mandatory>false</Mandatory>
</Attribute>
OrginStopPointRef 0:1 Lo SLOID del punto di partenza.
<OriginStopPointRef>ch:1:sloid:91315</OriginStopPointRef>
OriginText 0:1 Nome della fermata di inizio corsa.
<OriginText>
<Text xml:lang="de">Zürich, Rehalp</Text>
</OriginText>
DestinationStopPointRef 0:1 Lo SLOID della fermata di destinazione.
<DestinationStopPointRef>ch:1:sloid:91049</DestinationStopPointRef>
DestinationText 0:1 Il nome della fermata di destinazione.
<DestinationText>
<Text xml:lang="de">Zürich, Auzelg</Text>
</DestinationText>
Unplanned 0:1 Indica se si tratta di una corsa supplementare non riportata nell’orario regolare. Var. booleana.
<Unplanned>true</Unplanned>
Cancelled 0:1 Soppressione di una corsa: Var. booleana.
<Cancelled>true</Cancelled>
Deviation 0:1 Indica se la corsa non viene effettuata in base all’orario. Pianificato per una versione futura. n.d.
Delayed 0:1 Indica se questo viaggio ha ritardi. Previsto per una versione futura.
(utilizzare le informazioni in tempo reale)
n.d.
Infeasible 0:1 Indica se questo viaggio non può essere utilizzato a causa di ritardi d’esercizio e dell’impossibilità di cambiare treno.
<Infeasible>true</Infeasible>
BookingArrangements 0:1 Questa feature non è supportata. n.d.
ParticipantRef 1:1 Serve alla comunicazione di perturbazioni o di altre situazioni straordinarie.
<siri:ParticipantRef>ski-ddip-out-sx_prod</siri:ParticipantRef>
siri:SituationNumber 1:1 Serve alla comunicazione di perturbazioni o di altre situazioni straordinarie.
<siri:SituationNumber>ch:1:sstid:100001:2195005152170-1</siri:SituationNumber>

Ulteriori indicazioni

Tempo reale

Concetti importanti:

  • Giorni d’esercizio: Giorni in cui circola un treno. Può infine durare più di 24 h. Tuttavia, la notazione GG-MM-AAAA come OperatingDays ad es. in Service / Mode.
  • Tempo Zulu: Corrisponde all’orario UTC ed è indicato come segue 2025-02-02T11:24:00Z, altrimenti anche in questo caso ISO 8601 Indicazione dell’ora con differenze di fusi orari 2025-02-02T09:24:00+0200. Nell’ora UTC non ci sono cambi dell’ora legale. L’output di frazioni di secondo è comune soprattutto con il timbro data.
  • «Hysterese» (Isteresi): Nell’ambito dell’informazione alla clientela, vengono trasmesse solo le modifiche che superano una certa entità. Questo avviene per mezzo di un’isteresi. In altre parole, i ritardi non vengono rilevati, ma trasmessi solo al momento di una determinata modifica. Gli scostamenti vengono comunicati in 1/10 minuti.

I dati dell’orario reale o del tempo reale sono forniti solo per il giorno d’esercizio attuale. Lo scostamento viene indicato rispettivamente in relazione a StopPointRef, che corrisponde anche all’elemento presente nell’orario, mentre uno StopPlaceRef fa riferimento a un punto in una stazione. In Svizzera vengono utilizzati ID identici per StopPointRef e StopPlaceRef.

Ecco un esempio con tempo reale basato su «CallAtStop». Lo stesso concetto può essere applicato a tutti i servizi in OJP, in cui vengono pubblicate scostamenti dall’orario:

<CallAtStop>
    <siri:StopPointRef>ch:1:sloid:91128::0</siri:StopPointRef>
    <StopPointName>
        <Text xml:lang="de">Zürich, Fernsehstudio</Text>
    </StopPointName>
    <ServiceArrival>
        <TimetabledTime>2025-02-17T13:06:18Z</TimetabledTime>
        <EstimatedTime>2025-02-17T13:05:54Z</EstimatedTime>
    </ServiceArrival>
    <ServiceDeparture>
        <TimetabledTime>2025-02-17T13:06:30Z</TimetabledTime>
        <EstimatedTime>2025-02-17T13:06:00Z</EstimatedTime>
    </ServiceDeparture>
    <Order>2</Order>
</CallAtStop>

La discrepanza tra «TimetabledTime» e «EstimatedTime» è lo scostamento in tempo reale rispetto all’orario, che viene indicato anche se si tratta ad es. di un arrivo anticipato. Pertanto è opportuno implementare una logica per l’emissione dello scostamento, in modo che vengano emessi solo gli scostamenti rilevanti per il cliente, come ad esempio un ritardo.

Treni Autotunnel

<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-17T08:03:02.813Z</siri:RequestTimestamp>
            <siri:RequestorRef>SKIPlus_ATZ</siri:RequestorRef>
            <OJPStopEventRequest>
                <siri:RequestTimestamp>2025-02-17T08:03:02.813Z</siri:RequestTimestamp>
                <Location>
                    <PlaceRef>
                        <siri:StopPointRef>ch:1:sloid:11171</siri:StopPointRef>
                        <Name>
                            <Text>Kandersteg Autoverlad</Text>
                        </Name>
                    </PlaceRef>
                </Location>
                <Params>
                    <IncludeAllRestrictedLines>true</IncludeAllRestrictedLines>
                    <NumberOfResults>10</NumberOfResults>
                    <StopEventType>departure</StopEventType>
                    <IncludePreviousCalls>true</IncludePreviousCalls>
                    <IncludeOnwardCalls>true</IncludeOnwardCalls>
                    <UseRealtimeData>full</UseRealtimeData>
                </Params>
            </OJPStopEventRequest>
        </siri:ServiceRequest>
    </OJPRequest>
</OJP>

Profili di grandi dimensioni (presso la BLS) sono riconoscibili dall’attributo GF:

<Attribute>
    <Text>
        <Text xml:lang="de">Grossraumprofil</Text>
    </Text>
    <Code>A__GF</Code>
</Attribute>