...
However, in some cases a stop is reported by another PTA before the owner has defined this stop in their province. In these cases, this can be seen in the data-from
field, where the THM number of the providing PTA is stored. This is not limited to the numeric range from 1 to 25, as even private operators can be the first to provide a stop place. As soon as the owner starts delivering data for this stop, the owner will take over as data provider. The data-from
key-value will then start matching owner
key value. In the case described here when a stop is reported by another PTA than the owner, the new stop gets a key-value preliminary
which is set to true. When the the data has been verified as correct the preliminary
key-value will disappear.
Tariff Zones
For PTAs which deliver tariff zone information to Samtrafiken, Tariff zones are included in the stops data as well. A full example can be found at the bottom of this page.
Code Block |
---|
|
<TariffZone version="20200615" id="SE:050:TariffZone:6-9081006200000981"> <!-- Noptis.Zone Type=TARIFFZO, in the form "SE:050:TariffZone:" followed by ThmNumber-Noptis.Zone.Gid -->
<ValidBetween>
<FromDate>2020-06-15T00:00:00</FromDate> <!-- Noptis.ExistsFromDate -->
</ValidBetween>
<Name>Jönköping</Name> <!-- Noptis.Zone.Name -->
<ShortName/> <!-- Noptis.Zone.ShortName-->
<PrivateCode>6:981</PrivateCode> <!-- THM:Noptis.Zone.Number-->
</TariffZone> |
Multimodal Stop places
In NeTEx, Quays (Noptis StopPoints) do not have any way to define the stop type / transport type. Instead, this is defined on StopPlace level, and identical for all quays. This works well for stop places with only one type of transport, for example a bus stop along the road.
...
An example for a single-modal stop, Lund BantorgetJönköping Kungsgatan, and a multimodal stop, Knivsta station, is shown in the diagram below, as well as in the code example below
...
...
...
...
...
4382490725 | pageId | 3701309442 |
---|
|
...
...
1 | diagramDisplayName | Untitled Diagram-1731326207060.drawio |
---|
|
...
...
...
4 | baseUrl | https://samtrafiken.atlassian.net/wiki |
---|
diagramName | Untitled Diagram-1731326207060.drawio |
---|
pCenter | 0 |
---|
width | 1081 |
---|
links | |
---|
tbstyle | |
---|
height | 721 |
---|
|
...
XML example
Code Block |
---|
breakoutMode | full-width |
---|
language | xml |
---|
|
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<PublicationDelivery xmlns="http://www.netex.org.uk/netex" version="1.11:NO-NeTEx-networktimetable:1.3"> <!-- Used NeTEx profile and version. -->
<PublicationTimestamp>2023-06-29T07:57:33</PublicationTimestamp> <!-- Timestamp of export. -->
<ParticipantRef>SAM</ParticipantRef> <!-- Participantref is always Samtrafiken. -->
<dataObjects>
<SiteFrame version="20230629075733" id="SE:050:SiteFrame:1"> <!-- Siteframe version matches export date/time. -->
<ValidBetween>
<FromDate>2005-01-01T00:00:00</FromDate> <!-- Always set to 2005-01-01. -->
</ValidBetween>
<codespaces>
<Codespace id="SE:050"> <!-- id is same as Xmlns. -->
<Xmlns>SE:050</Xmlns> <!-- Always 50, Samtrafikens number, since this is an export of data processed by Samtrafiken. -->
<XmlnsUrl>http://www.samtrafiken.se/ns/sweden</XmlnsUrl> <!-- sweden, for aggregated data. -->
</Codespace>
</codespaces>
<FrameDefaults>
<DefaultLocale>
<TimeZone>Europe/Stockholm</TimeZone>
<DefaultLanguage>se</DefaultLanguage>
</DefaultLocale>
<DefaultLocationSystem>4326</DefaultLocationSystem> <!-- All coordinates are published as WGS84, independent of the format in which they are reported in. -->
</FrameDefaults>
<!-- At the time of writing, only stopPlaces are exported through the stops dataset. For data such as TopographicPlace (Noptis Zones), GroupOfStopPlaces (Noptis Sites), etc, see the regional NeTEx exports. -->
<stopPlaces>
<StopPlace version="20200615" id="SE:050:StopPlace:18042"> <!-- Noptis.StopArea -->
<ValidBetween>
<FromDate>2020-06-15T00:00:00</FromDate> <!-- StopArea.ExistsFromDate for the StopArea delivered by the owner. 2000-01-01 for StopPlaces not delivered by the owner. -->
<!-- ToDate is only set for national StopPlaces which have been deleted. It shows the date of deletion in this case. -->
</ValidBetween>
<keyList>
<KeyValue>
<Key>owner</Key>
<Value>6</Value> <!-- The national THM number of the datasource which "owns" this stop. Always a regional transport authority (RKM). 50 (Samtrafiken) for stops outside of Sweden. -->
</KeyValue>
<KeyValue>
<Key>data-from</Key>
<Value>6</Value> <!-- The national THM number of the datasource which delivers data for this stop. Differs only from owner in case someone delivers a stop which is not delivered by the regional transport authority (RKM) in that province. -->
</KeyValue>
<KeyValue>
<Key>rikshallplats</Key>
<Value>740023267</Value> <!-- The Rikshållplatsnumber for this stop, added by Samtrafiken. -->
</KeyValue>
<KeyValue>
<Key>stip.StopArea.DefaultInterchangeDurationSeconds</Key>
<Value>0</Value> <!-- The default exchange time in seconds, Noptis StopArea.DefaultInterchangeDurationSeconds, according to the authority who provides the data (data-from). -->
</KeyValue>
<KeyValue>
<Key>local-name</Key> <!-- StopArea.Name for each of the local stop areas mapped to this national stop, in the form of ThmNumber:Noptis.StopArea.Gid:Noptis.StopArea.Name. -->
<Value>6:9021006001317000:Kungsgatan|14:9021014075317000:Kungsgatan</Value>
</KeyValue>
<KeyValue>
<Key>local-gid</Key> <!-- StopArea.Gid for each of the local stop areas mapped to this national stop, in the form of ThmNumber:Noptis.StopArea.Gid. -->
<Value>6:9021006001317000|14:9021014075317000</Value>
</KeyValue>
<KeyValue>
<Key>local-number</Key> <!-- StopArea.Number for each of the local stop areas mapped to this national stop, in the form of ThmNumber:Noptis.StopArea.Number. -->
<Value>6:1317|14:75317</Value>
</KeyValue>
<KeyValue>
<Key>sellable</Key>
<Value>false</Value> <!-- This value will be true if the stop is sellable through samtrafiken systems, and false if not -->
</KeyValue>
</keyList>
<Name>Kungsgatan</Name> <!-- StopArea.Name for the THM which delivers data (see data-from). May be adjusted by Samtrafiken. -->
<ShortName>Kungsgatan</ShortName> <!-- StopArea.ShortName for the THM which delivers data (see data-from). -->
<PrivateCode>18042</PrivateCode> <!-- The national stop id, determined by Samtrafiken. -->
<Centroid> <!-- StopArea.CentroidEastingCoordinate and StopArea.CentroidNorthingCoordinate for the THM which delivers data (see data-from). -->
<Location>
<Longitude>14.154820</Longitude>
<Latitude>57.779054</Latitude>
</Location>
</Centroid>
<alternativeNames>
<AlternativeName>
<Name>Kungsgatan</Name> <!-- Same as NeTEx.StopPlace.Name defined earlier in this stopplace object, required by the NeTEx standard. -->
<Abbreviation>KUN</Abbreviation> <!-- StopArea.Abbreviation for the THM which delivers data (see data-from). -->
</AlternativeName>
</alternativeNames>
<TransportMode>bus</TransportMode>
<tariffZones>
<TariffZoneRef ref="SE:050:TariffZone:6-9081006200000981"/> <!-- Reference to TariffZone, see below. Noptis.Zone Type=TARIFFZO, in the form "SE:050:TariffZone:" followed by ThmNumber-Noptis.Zone.Gid -->
<TariffZoneRef ref="SE:050:TariffZone:14-9081014201002981"/>
<TariffZoneRef ref="SE:050:TariffZone:14-9081014208075317"/>
</tariffZones>
<StopPlaceType>onstreetBus</StopPlaceType>
<Weighting>interchangeAllowed</Weighting>
<quays>
<Quay version="20200615" id="SE:050:Quay:34207">
<keyList>
<KeyValue>
<Key>stip.StopPoint.ExistsFromDate</Key>
<Value>2020-06-15</Value>
</KeyValue>
<KeyValue>
<Key>stip.StopPoint.ExistsUpToDate</Key>
<Value>null</Value>
</KeyValue>
<KeyValue>
<Key>local-journeypatternpoint-gid</Key>
<Value>6:9025006000131701|14:9025014007531701</Value>
</KeyValue>
<KeyValue>
<Key>local-stoppoint-gid</Key>
<Value>6:9022006001317001|14:9022014075317001</Value>
</KeyValue>
<KeyValue>
<Key>local-designation</Key>
<Value>6:A|14:A</Value>
</KeyValue>
</keyList>
<Name>Kungsgatan</Name>
<ShortName>Kungsgatan</ShortName>
<PrivateCode>1</PrivateCode>
<Centroid>
<Location>
<Longitude>14.155801</Longitude>
<Latitude>57.778923</Latitude>
</Location>
</Centroid>
<PublicCode>A</PublicCode> <!-- Usually StopPoint.Designation for the StopPoint delivered by the THM defined in StopPlace.data-from, may be adjusted by Samtrafiken. -->
</Quay>
<Quay version="20200615" id="SE:050:Quay:34208">
<keyList>
<!-- ... -->
</keyList>
<Name>Kungsgatan</Name>
<ShortName>Kungsgatan</ShortName>
<PrivateCode>2</PrivateCode>
<Centroid>
<Location>
<Longitude>14.153855</Longitude>
<Latitude>57.779194</Latitude>
</Location>
</Centroid>
<PublicCode>B</PublicCode>
</Quay>
</quays>
</StopPlace>
<StopPlace version="20221210" id="SE:050:StopPlace:559"> <!-- Noptis.StopArea. -->
<ValidBetween>
<FromDate>2022-12-10T00:00:00</FromDate> <!-- StopArea.ExistsFromDate for the StopArea delivered by the owner. 2000-01-01 for StopPlaces not delivered by the owner. -->
<!-- ToDate is only set for national StopPlaces which have been deleted. It shows the date of deletion in this case. -->
</ValidBetween>
<keyList>
<KeyValue>
<Key>owner</Key>
<Value>3</Value> <!-- The national THM number of the datasource which "owns" this stop. Always a regional transport authority (RKM). 50 (Samtrafiken) for stops outside of Sweden. -->
</KeyValue>
<KeyValue>
<Key>data-from</Key>
<Value>3</Value> <!-- The national THM number of the datasource which delivers data for this stop. Differs only from owner in case someone delivers a stop which is not delivered by the regional transport authority (RKM) in that province. -->
</KeyValue>
<KeyValue>
<Key>rikshallplats</Key>
<Value>740000559</Value> <!-- The Rikshållplatsnumber for this stop, added by Samtrafiken. -->
</KeyValue>
<KeyValue>
<Key>trafikverket-name</Key>
<Value>Knivsta</Value> <!-- The name for this stop according to Trafikverket, only included in case of train stations. Added by Samtrafiken. -->
</KeyValue>
<KeyValue>
<Key>trafikverket-signatures</Key>
<Value>KN</Value> <!-- The Signatures for this stop according to Trafikverket, only included in case of train stations. One or more separated by a pipe character |. Added by Samtrafiken. -->
</KeyValue>
<KeyValue>
<Key>stip.StopArea.DefaultInterchangeDurationSeconds</Key>
<Value>240</Value> <!-- The default exchange time in seconds, Noptis StopArea.DefaultInterchangeDurationSeconds, according to the authority who provides the data (data-from). -->
</KeyValue>
<KeyValue>
<Key>local-name</Key> <!-- StopArea.Name for each of the local stop areas mapped to this national stop, in the form of ThmNumber:Noptis.StopArea.Gid:Noptis.StopArea.Name. -->
<Value>3:9021003780050000:Knivsta station (Knivsta)|1:9021001005006000:Knivsta|1:9021001068633000:Knivsta
station|74:9021074005590000:Knivsta|100:9021074000559000:Knivsta station|159:9021001000559000:Knivsta
</Value>
</KeyValue>
<KeyValue>
<Key>local-gid</Key> <!-- StopArea.Gid for each of the local stop areas mapped to this national stop, in the form of ThmNumber:Noptis.StopArea.Gid. -->
<Value>3:9021003780050000|1:9021001005006000|1:9021001068633000|74:9021074005590000|100:9021074000559000|159:9021001000559000
</Value>
</KeyValue>
<KeyValue>
<Key>local-number</Key><!-- StopArea.Number for each of the local stop areas mapped to this national stop, in the form of ThmNumber:Noptis.StopArea.Number. -->
<Value>3:780050|1:5006|1:68633|74:5590|100:559|159:559</Value>
</KeyValue>
<KeyValue>
<Key>sellable</Key>
<Value>true|false</Value> <!-- This value will be true if the stop is sellable through samtrafiken systems, and false if not -->
</KeyValue>
</keyList>
<Name>Knivsta station (Knivsta)</Name> <!-- StopArea.Name for the THM which delivers data (see data-from). May be adjusted by Samtrafiken. -->
<ShortName>Knivsta station</ShortName><!-- StopArea.ShortName for the THM which delivers data (see data-from). -->
<PrivateCode>559</PrivateCode> <!-- The national stop id, determined by Samtrafiken. -->
<Centroid> <!-- StopArea.CentroidEastingCoordinate and StopArea.CentroidNorthingCoordinate for the THM which delivers data (see data-from). -->
<Location>
<Longitude>17.787276</Longitude>
<Latitude>59.726035</Latitude>
</Location>
</Centroid>
<alternativeNames>
<AlternativeName>
<Name>Knivsta station (Knivsta)</Name> <!-- Same as NeTEx.StopPlace.Name defined earlier in this stopplace object, required by the NeTEx standard. -->
<Abbreviation>Kni</Abbreviation> <!-- StopArea.Abbreviation for the THM which delivers data (see data-from). -->
</AlternativeName>
</alternativeNames>
<TransportMode>rail</TransportMode> <!-- StopPlace.TypeCode for the THM which delivers data. For multimodal stop places, this is the primary transport mode. For mapping see https://samtrafiken.atlassian.net/wiki/spaces/SamtrafikenOpenData/pages/989233182/Samtrafiken+NeTEx+export#General-Noptis-to-Netex-mappings. -->
<StopPlaceType>railStation</StopPlaceType> <!-- StopPlace.TypeCode for the THM which delivers data. For multimodal stop places, this is the primary transport mode. For mapping see https://samtrafiken.atlassian.net/wiki/spaces/SamtrafikenOpenData/pages/989233182/Samtrafiken+NeTEx+export#General-Noptis-to-Netex-mappings. -->
<Weighting>preferredInterchange</Weighting> <!-- StopPlace.InterchangePriority for the THM which delivers data, for mapping see https://samtrafiken.atlassian.net/wiki/spaces/SamtrafikenOpenData/pages/989233182/Samtrafiken+NeTEx+export#General-Noptis-to-Netex-mappings. -->
<!-- This is a multimodal stop, and therefore it does not have any quays. If this were a simple stop with quays for one mode of transport only, the quays would have been defined here. -->
<!-- In this case, there are other stopplaces (1 per StopPlaceType) which contain the actual quays. -->
</StopPlace>
<StopPlace version="20221210" id="SE:050:StopPlace:559_1"> <!-- The underscore indicates this is child stop 1 of multimodal stop 559. -->
<ValidBetween>
<FromDate>2022-12-10T00:00:00</FromDate>
</ValidBetween>
<keyList> <!-- These key-values match the key-values of the parent stop. -->
<!-- ... -->
</keyList>
<Name>Knivsta station (Knivsta)</Name>
<ShortName>Knivsta station</ShortName>
<PrivateCode>559</PrivateCode>
<Centroid>
<Location>
<Longitude>17.787276</Longitude>
<Latitude>59.726035</Latitude>
</Location>
</Centroid>
<alternativeNames>
<AlternativeName>
<Name>Knivsta station (Knivsta)</Name>
<Abbreviation>Kni</Abbreviation>
</AlternativeName>
</alternativeNames>
<ParentSiteRef ref="SE:050:StopPlace:559"/> <!-- Reference to the parent stop. -->
<TransportMode>bus</TransportMode> <!-- StopPlace.TypeCode for this child stop. Only quays of this type will be included in this StopPlace. -->
<StopPlaceType>onstreetBus</StopPlaceType> <!-- See the parent stop for more information regarding these fields. -->
<Weighting>preferredInterchange</Weighting>
<quays>
<Quay version="20210307" id="SE:050:Quay:4205"> <!-- A national quay, by samtrafiken (050) with id 4205 generated by Samtrafiken. -->
<keyList>
<KeyValue>
<Key>stip.StopPoint.ExistsFromDate</Key>
<Value>2021-03-07</Value> <!-- stopPoint.ExistsFromDate for the StopPoint delivered by the THM defined in StopPlace.data-from. -->
</KeyValue>
<KeyValue>
<Key>stip.StopPoint.ExistsUpToDate</Key>
<Value>null</Value> <!-- stopPoint.ExistsUpToDate for the StopPoint delivered by the THM defined in StopPlace.data-from. -->
</KeyValue>
<KeyValue>
<Key>local-journeypatternpoint-gid</Key>
<Value>3:9025003078005001|1:9025001000068635</Value> <!-- JourneyPatternPoint.Gid for each JourneyPatternPoint which was mapped to this Quay, as THM number : Gid, separated by |. -->
</KeyValue>
<KeyValue>
<Key>local-stoppoint-gid</Key>
<Value>3:9022003780050001|1:9022001068633002</Value> <!-- StopPoint.Gid for each StopPoint which was mapped to this Quay, as THM number : Gid, separated by |. -->
</KeyValue>
<KeyValue>
<Key>local-designation</Key>
<Value>3:A|1:B</Value> <!-- StopPoint.Designation for each StopPoint which was mapped to this Quay, as THM number : Designation, separated by |. -->
</KeyValue>
</keyList>
<Name>Knivsta station</Name> <!-- StopPoint.Name for the StopPoint delivered by the THM defined in StopPlace.data-from . -->
<ShortName>Knivsta station</ShortName> <!-- StopPoint.ShortName for the StopPoint delivered by the THM defined in StopPlace.data-from . -->
<PrivateCode>1</PrivateCode> <!-- Local number, defined by Samtrafiken. -->
<Centroid>
<Location>
<Longitude>17.786599</Longitude> <!-- Usually StopPoint.EastingCoordinate for the StopPoint delivered by the THM defined in StopPlace.data-from, may be adjusted by Samtrafiken. -->
<Latitude>59.727518</Latitude> <!-- Usually StopPoint.NorthingCoordinate for the StopPoint delivered by the THM defined in StopPlace.data-from, may be adjusted by Samtrafiken. -->
</Location>
</Centroid>
<PublicCode>A</PublicCode> <!-- Usually StopPoint.Designation for the StopPoint delivered by the THM defined in StopPlace.data-from, may be adjusted by Samtrafiken. -->
</Quay>
<Quay version="20210307" id="SE:050:Quay:4206">
<keyList>
<KeyValue>
<Key>stip.StopPoint.ExistsFromDate</Key>
<Value>2021-03-07</Value>
</KeyValue>
<KeyValue>
<Key>stip.StopPoint.ExistsUpToDate</Key>
<Value>null</Value>
</KeyValue>
<KeyValue>
<Key>local-journeypatternpoint-gid</Key>
<Value>3:9025003078005002|1:9025001000068634</Value>
</KeyValue>
<KeyValue>
<Key>local-stoppoint-gid</Key>
<Value>3:9022003780050002|1:9022001068633001</Value>
</KeyValue>
<KeyValue>
<Key>local-designation</Key>
<Value>3:B|1:A</Value>
</KeyValue>
</keyList>
<Name>Knivsta station</Name>
<ShortName>Knivsta station</ShortName>
<PrivateCode>2</PrivateCode>
<Centroid>
<Location>
<Longitude>17.786305</Longitude>
<Latitude>59.727047</Latitude>
</Location>
</Centroid>
<PublicCode>B</PublicCode>
</Quay>
<Quay version="20210307" id="SE:050:Quay:4207">
<!-- ... -->
</Quay>
<Quay version="20210307" id="SE:050:Quay:4210">
<!-- ... -->
</Quay>
</quays>
</StopPlace>
<StopPlace version="20221210" id="SE:050:StopPlace:559_2"> <!-- A second child stop in this multimodal stop place. -->
<ValidBetween>
<FromDate>2022-12-10T00:00:00</FromDate>
</ValidBetween>
<keyList>
<!-- ... -->
</keyList>
<Name>Knivsta station (Knivsta)</Name>
<ShortName>Knivsta station</ShortName>
<PrivateCode>559</PrivateCode>
<Centroid>
<Location>
<Longitude>17.787276</Longitude>
<Latitude>59.726035</Latitude>
</Location>
</Centroid>
<alternativeNames>
<AlternativeName>
<Name>Knivsta station (Knivsta)</Name>
<Abbreviation>Kni</Abbreviation>
</AlternativeName>
</alternativeNames>
<ParentSiteRef ref="SE:050:StopPlace:559"/>
<TransportMode>rail</TransportMode> <!-- The previous child stop contained bus quays, this one contains train quays. -->
<StopPlaceType>railStation</StopPlaceType>
<Weighting>preferredInterchange</Weighting>
<quays>
<Quay version="20210307" id="SE:050:Quay:4208">
<keyList>
<KeyValue>
<Key>stip.StopPoint.ExistsFromDate</Key>
<Value>2021-03-07</Value>
</KeyValue>
<KeyValue>
<Key>stip.StopPoint.ExistsUpToDate</Key>
<Value>null</Value>
</KeyValue>
<KeyValue>
<Key>local-journeypatternpoint-gid</Key>
<Value>3:9025003078005005|1:9025001000005009|74:9025074005590020</Value>
</KeyValue>
<KeyValue>
<Key>local-stoppoint-gid</Key>
<Value>3:9022003780050005|1:9022001005006002|74:9022074005590020</Value>
</KeyValue>
<KeyValue>
<Key>local-designation</Key>
<Value>3:2|1:2|74:2</Value>
</KeyValue>
</keyList>
<Name>Knivsta station</Name>
<ShortName>Knivsta station</ShortName>
<PrivateCode>4</PrivateCode>
<Centroid>
<Location>
<Longitude>17.787219</Longitude>
<Latitude>59.725067</Latitude>
</Location>
</Centroid>
<PublicCode>2</PublicCode>
</Quay>
<Quay version="20210307" id="SE:050:Quay:4209">
<!-- ... -->
</Quay>
<Quay version="20220101" id="SE:050:Quay:135729">
<!-- ... -->
</quays>
</StopPlace>
</stopPlaces>
<tariffZones>
<TariffZone version="20200615" id="SE:050:TariffZone:6-9081006200000981"> <!-- Noptis.Zone Type=TARIFFZO, in the form "SE:050:TariffZone:" followed by ThmNumber-Noptis.Zone.Gid -->
<ValidBetween>
<FromDate>2020-06-15T00:00:00</FromDate> <!-- Noptis.ExistsFromDate -->
</ValidBetween>
<Name>Jönköping</Name> <!-- Noptis.Zone.Name -->
<ShortName/> <!-- Noptis.Zone.ShortName-->
<PrivateCode>6:981</PrivateCode> <!-- THM:Noptis.Zone.Number-->
</TariffZone>
</tariffZones>
</SiteFrame>
</dataObjects>
</PublicationDelivery> |