Location Information Service

#AutoTranslate

Brief Description

The Location Service returns different locations in response to a request.

Functional Description

The main input data are:

  • textual input
  • Permitted object types
  • Geographical restrictions/weighting
  • Other restrictions

The output is a list of objects with names, geographical position, attributes and a probability.

If the LocationInformationRequest is used without the LocationName, but with GeoPosition, Circle or Rectangle, only type=’stop’ is supported. In addition, GeoPosition with type=’address’ returns exactly one address with HausnummerRequest.

Technical Description

API Explorer

You can try out your own requests – direct link to API Explorer.

Request

<?xml version="1.0" encoding="UTF-8"?>
<OJP xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://www.siri.org.uk/siri" version="1.0" xmlns:ojp="http://www.vdv.de/ojp" xsi:schemaLocation="http://www.siri.org.uk/siri ../ojp-xsd-v1.0/OJP.xsd">
	<OJPRequest>
		<ServiceRequest>
			<RequestTimestamp>2020-01-09T08:00:00Z</RequestTimestamp>
			<RequestorRef>IRMA</RequestorRef>
			<ojp:OJPLocationInformationRequest>
				<RequestTimestamp>2020-01-09T08:00:00Z</RequestTimestamp>
				<MessageIdentifier>4711</MessageIdentifier>
				<ojp:InitialInput>
					<ojp:LocationName>Bern</ojp:LocationName>
				</ojp:InitialInput>
				<ojp:Restrictions>
					<ojp:Type>stop</ojp:Type>
					<ojp:IncludePtModes>true</ojp:IncludePtModes>
				</ojp:Restrictions>
			</ojp:OJPLocationInformationRequest>
		</ServiceRequest>
	</OJPRequest>
</OJP>

Item Cardinality Description Example
RequestTimestamp 1:1 The timestamp of the request. Preferably in UTC
<RequestTimestamp>2020-01-09T08:00:00Z</RequestTimestamp>
MessageIdentifier 0:1 Unique message ID. We would like these to be strictly monotonically increasing.
<MessageIdentifier>4711</MessageIdentifier>
ojp:InitialInput/ojp:LocationName 0:1 The name of the object. If none is specified, other criteria will be used to search.

Where different terms are common, you can search for all of them. For example, you can search for both ‘Basel’ and ‘Bâle CFF’. For stops that have information in multiple languages, it also works if you search in only one language. For example, ‘Biel’ can be found with a request for ‘Biel’ or ‘Bienne’.

<ojp:InitialInput>
	<ojp:LocationName>Bern</ojp:LocationName>
</ojp:InitialInput>
ojp:InitialInput/ojp:GeoPosition 0:1 The requested position with geo-coordinates (WGS84)
<ojp:InitialInput>
	<ojp:GeoPosition>
		<Longitude>8.5545</Longitude>
		<Latitude>47.365</Latitude>
	</ojp:GeoPosition>
</ojp:InitialInput>
ojp:InitialInput/GeoRestriction/Circle 0:1 Restrict the search to a certain radius. For example, if type is correctly selected, all the stops within a radius can be shown. Coordinates in WGS84.
<ojp:GeoRestriction>
	<ojp:Circle>
		<ojp:Center>
			<Longitude>8.5545</Longitude>
			<Latitude>47.365</Latitude>
		</ojp:Center>
		<ojp:Radius>500</ojp:Radius>
	</ojp:Circle>
</ojp:GeoRestriction>
ojp:InitialInput/GeoRestriction/Rectangle 0:1 Restrict the search to a specific rectangle. Coordinates in WGS84.
<ojp:InitialInput>
	<ojp:GeoRestriction>
		<ojp:Rectangle>
			<ojp:UpperLeft>
				<Longitude>8.54</Longitude>
				<Latitude>47.37</Latitude>
			</ojp:UpperLeft>
			<ojp:LowerRight>
				<Longitude>8.57</Longitude>
				<Latitude>47.36</Latitude>
			</ojp:LowerRight>
		</ojp:Rectangle>
	</ojp:GeoRestriction>
</ojp:InitialInput>
ojp:PlaceRef 0:1 A reference to a place. see separate table
ojp:Restrictions 0:1 The restrictions to be used see separate table

Restrictions

Item Cardinality Description Example
ojp:Type 0:* The type of objects to be searched for.

There are the following types:

  • stop
  • address
  • poi
  • coord
  • topographicPlace

The main uses are stop and coordination. POIs will become more important over time, such as multi-storey car parks or charging stations.

Sharing vehicles (e-scooters, bicycles, cars) and charging stations can now be queried as POIs (see ojp:PointOfInterestFilter below).

For address, first use the general input to determine the exact LocationName. Then search with this exact name and the type ‘address’. Only then does the address code come back. However, this is a special case and should not normally be used. Neither the address code nor TopographicPlaceRef have any meaning outside of OJP searches.

<ojp:Type>stop</ojp:Type>
ojp:Usage 0:* Specifies what the place is used for.

There are the following values:

  • origin
  • via
  • destination

This feature is not supported.

n/a
ojp:PtModes 0:1 Contains a Boolean exclude element. If true, the modes are excluded, otherwise they are included. How to do this is described in a separate section.

See also section for PtMode

<ojp:PtModes>
	<ojp:Exclude>true</ojp:Exclude>
	<ojp:PtMode>bus</ojp:PtMode>
	<siri:BusSubmode>localBusService</siri:BusSubmode>
</ojp:PtModes>

 

ojp:OperatorFilter 0:1 A filter by operator.

This feature is not supported.

n/a
ojp:TopographicPlaceRef 0:1 Used to filter by locations. If at least one reference is set, only objects within the respective locations are searched.
<ojp:TopographicPlaceRef>23011901:2</ojp:TopographicPlaceRef>
ojp:PointOfInterestFilter 0:1 New (since August 2022), sharing vehicles (e-scooters, bicycles, cars) and charging stations can be accessed within a radius or rectangle.
Structure as shown in the example on the right:

  • On ojp:Tag, always amenity
  • Optional for ojp:Value escooter_rental, bicycle_rental, car_sharing or charging_station.

Please note: The query should be combined with a GeoRestriction (Circle or Rectangle), not with the LocationName, GeoPosition or PlaceRef.

<ojp:PointOfInterestFilter>
  <ojp:PointOfInterestCategory>
    <ojp:OsmTag>
      <ojp:Tag>amenity</ojp:Tag>
      <ojp:Value>escooter_rental</ojp:Value>
    </ojp:OsmTag>
  </ojp:PointOfInterestCategory>
</ojp:PointOfInterestFilter>

 

ojp:Language 0:1 Desired language for return values.

Not implemented in current version 1.0, planned for a later version

n/a
ojp:NumberOfResults 0:1 The number of results.

Important: Strings such as ‘St. Gallen Haggen’ and ‘St. Gallen, Haggen’ are equivalent for the search.

If a result group is trimmed with an equal probability (>0.5), the server returns all results. I.e. the actual number of results may differ from the desired result. The reason for this is that if NumberOfResults=1 and ‘St. Gallen, Haggen’ are entered, 2 stops must be returned: ‘St. Gallen, Haggen’ and ‘St. Gallen Haggen’.

<NumberOfResults>10</NumberOfResults>
IncludePtModes 0:1 Tells the service to return the available modes for each stop. The default is false.
<IncludePtModes>true</IncludePtModes>

PlaceRef

Item Cardinality Description Example
ojp:StopPointRef 0:1 Reference to a ScheduledStopPoint. Only SLOID will be used; for foreign StopPoints, the BPUIC number can still be used in the request and in the response.
<ojp:PlaceRef>
<StopPointRef>ch:1:sloid:30813</StopPointRef>
<ojp:LocationName>
<ojp:Text>Zürich Kreuzplatz</ojp:Text>
</ojp:LocationName>
</ojp:PlaceRef>
ojp:StopPlaceRef 0:1 Reference to a stop. Only the SLOID will be used; for foreign StopPlaces, the BPUIC number can still be used in the request and in the response.
<ojp:PlaceRef>
<ojp:StopPlaceRef>ch:1:sloid:30813</ojp:StopPlaceRef>
<ojp:LocationName>
<ojp:Text>Zürich Kreuzplatz</ojp:Text>
</ojp:LocationName>
</ojp:PlaceRef>
ojp:GeoPosition 0:1 Geoposition in Longitude/Latitude
<ojp:PlaceRef>
	<ojp:GeoPosition>
		<Longitude>8.5545</Longitude>
		<Latitude>47.365</Latitude>
	</ojp:GeoPosition>
	<ojp:LocationName>
		<ojp:Text>Zürich Kreuzplatz</ojp:Text>
	</ojp:LocationName>
</ojp:PlaceRef>
ojp:PlaceRef/ojp:LocationName 0:1 Ignored n/a

Since the start of 2024, we have been converting to data with specific increases in OJP. Deliveries with specific increases will also be delivered in this way. Data with specific increases is always executed with a SLOID and no longer a Didok number. However, mixed responses are possible and changes can be made for each operator or line at any time.

Old:

                        <ojp:ThisCall>
                            <ojp:CallAtStop>
                                <siri:StopPointRef>8501300</siri:StopPointRef>
                                <ojp:StopPointName>
                                    <ojp:Text xml:lang="de">Montreux</ojp:Text>
                                </ojp:StopPointName>
                                <ojp:PlannedQuay>
                                    <ojp:Text xml:lang="de">6</ojp:Text>
                                </ojp:PlannedQuay>
                                <ojp:ServiceArrival>
                                    <ojp:TimetabledTime>2024-02-12T07:44:00Z</ojp:TimetabledTime>
                                    <ojp:EstimatedTime>2024-02-12T07:44:00Z</ojp:EstimatedTime>
                                </ojp:ServiceArrival>
                                <ojp:Order>15</ojp:Order>
                            </ojp:CallAtStop>
                        </ojp:ThisCall>

New:

                        <ojp:ThisCall>
                            <ojp:CallAtStop>
                                <siri:StopPointRef>ch:1:sloid:1300:2:3</siri:StopPointRef>
                                <ojp:StopPointName>
                                    <ojp:Text xml:lang="de">Montreux</ojp:Text>
                                </ojp:StopPointName>
                                <ojp:PlannedQuay>
                                    <ojp:Text xml:lang="de">3</ojp:Text>
                                </ojp:PlannedQuay>
                                <ojp:ServiceArrival>
                                    <ojp:TimetabledTime>2024-02-12T07:41:00Z</ojp:TimetabledTime>
                                    <ojp:EstimatedTime>2024-02-12T07:41:00Z</ojp:EstimatedTime>
                                </ojp:ServiceArrival>
                                <ojp:Order>7</ojp:Order>
                            </ojp:CallAtStop>
                        </ojp:ThisCall>

 

Old

                            <ojp:OriginStopPointRef>8501394</ojp:OriginStopPointRef>
                            <ojp:OriginText>
                                <ojp:Text xml:lang="de">Château-d'Oex</ojp:Text>
                            </ojp:OriginText>
                            <ojp:DestinationStopPointRef>8501300</ojp:DestinationStopPointRef>
                            <ojp:DestinationText>
                                <ojp:Text xml:lang="de">Montreux</ojp:Text>
                            </ojp:DestinationText>

New:

                            <ojp:OriginStopPointRef>ch:1:sloid:1026:1:2</ojp:OriginStopPointRef>
                            <ojp:OriginText>
                                <ojp:Text xml:lang="de">Genève-Aéroport</ojp:Text>
                            </ojp:OriginText>
                            <ojp:DestinationStopPointRef>ch:1:sloid:1609:3:7</ojp:DestinationStopPointRef>
                            <ojp:DestinationText>
                                <ojp:Text xml:lang="de">Brig</ojp:Text>
                            </ojp:DestinationText>

This also allows for better travel routes.

The conversions are as follows:

  • Conversion methodology (if you work with DiDok internally) for sloid -> didok:
    • If sloid is in the string,
    • Pick out the correct element, convert it to number, and add 8,500,000 (e.g. ch:1:sloid:1026:1:2 -> 8501026)

    Of course, this is a hack. In reality, we would have to use a mapping table. However, we assume that the last Didok number disappears for the Scheiz before this becomes a problem.

  • Didok -> SLOID works in a similar way. However, it can lead to problems at stops abroad:
    • Only convert 85xxxxx, except foreign local services, which we also had to record in our systems (8500700 -> ch:1:sloid:700)
    • Local services abroad: 11xxxxx, 12xxxxx, 13xxxxx, 14xxxxx => ch:1:sloid:<didok> (e.g. ‘Annemasse, Adrien Ligué’: 1401664 à ch:1:sloid:1401664)

PTMode

The PTModes are the modes of transport.

The following values exist at PTMode level (there are more but we do not use them; and of the ones listed below and we currently do not use all):

  • unknown
  • rail
  • coach
  • suburbanRail
  • urbanRail
  • metro
  • underground
  • bus
  • trolleybus
  • tram
  • water
  • air
  • telecabin
  • funicular
  • taxi
  • selfDrive
  • all

The SubModes are:

AirSubmode

  • Not currently used

BusSubmode

  • regionalbus
  • expressbus
  • localbus
  • PostBus
  • sightseeing-bus
  • shuttlebus
  • RailReplacementBus
  • demandAndResponseBus

CoachSubmode

  • internationalCoachService
  • nationalCoachService
  • regionalCoachService
  • touristCoachService

FunicularSubmode

  • funicular

MetroSubmode

  • urbanRailway
  • metro

Tram submode

  • CityTram
  • regional tram
  • localTramService
  • sightseeingTram

TelecabinSubmode

  • chairLift
  • dragLift
  • smallTelecabine
  • lifts
  • telecabin
  • cableCar

Rail submode

  • hightSpeedRailService
  • long-distance train
  • interRegionalRailService
  • carTransportRailService
  • sleeperRailService
  • regionalRail
  • touristRailway
  • RailShuttle
  • suburbanRailway
  • replacementRailService
  • local
  • interbational (yes, actually with b. Will be changed at some point)

WaterSubmode

  • internationalCarFerryService
  • nationalCarFerryService
  • regionalCarFerryService
  • localCarFerryService
  • internationalPassengerFerry
  • regionalPassengerFerry
  • localPassengerFerry
  • postBoat
  • trainFerry

 

Response

<?xml version="1.0" encoding="UTF-8"?>
<siri:OJP xmlns:siri="http://www.siri.org.uk/siri" xmlns:ojp="http://www.vdv.de/ojp" version="1.0">
	<siri:OJPResponse>
		<siri:ServiceDelivery>
			<siri:ResponseTimestamp>2020-03-09T09:12:49Z</siri:ResponseTimestamp>
			<siri:ProducerRef>OJPCH_test</siri:ProducerRef>
			<siri:Status>true</siri:Status>
			<ojp:OJPLocationInformationDelivery>
				<siri:ResponseTimestamp>2020-03-09T09:12:49Z</siri:ResponseTimestamp>
				<siri:RequestMessageRef>4711</siri:RequestMessageRef>
				<siri:Status>true</siri:Status>
				<ojp:CalcTime>53</ojp:CalcTime>
				<ojp:Location>
					<ojp:Location>
						<ojp:StopPlace>
							<ojp:StopPlaceRef>ch:1:sloid:71260</ojp:StopPlaceRef>
							<ojp:StopPlaceName>
								<ojp:Text>Aarberg, Bernfeld</ojp:Text>
							</ojp:StopPlaceName>
							<ojp:TopographicPlaceRef>23006301:1</ojp:TopographicPlaceRef>
						</ojp:StopPlace>
						<ojp:LocationName>
							<ojp:Text xml:lang="de">Aarberg, Bernfeld (Aarberg)</ojp:Text>
						</ojp:LocationName>
						<ojp:GeoPosition>
							<siri:Longitude>7.28473</siri:Longitude>
							<siri:Latitude>47.04372</siri:Latitude>
						</ojp:GeoPosition>
					</ojp:Location>
					<ojp:Complete>true</ojp:Complete>
					<ojp:Probability>0.922999978</ojp:Probability>
					<ojp:Mode>
						<ojp:PtMode>bus</ojp:PtMode>
						<siri:BusSubmode>localBusService</siri:BusSubmode>
					</ojp:Mode>
				</ojp:Location>
<!---- und so weiter und so weiter -->
				<ojp:Location>
					<ojp:Location>
						<ojp:StopPlace>
							<ojp:StopPlaceRef>ch:1:sloid:78094</ojp:StopPlaceRef>
							<ojp:StopPlaceName>
								<ojp:Text>Biberist, Bernstrasse</ojp:Text>
							</ojp:StopPlaceName>
							<ojp:TopographicPlaceRef>23019513:1</ojp:TopographicPlaceRef>
						</ojp:StopPlace>
						<ojp:LocationName>
							<ojp:Text xml:lang="de">Biberist, Bernstrasse (Biberist)</ojp:Text>
						</ojp:LocationName>
						<ojp:GeoPosition>
							<siri:Longitude>7.55428</siri:Longitude>
							<siri:Latitude>47.18031</siri:Latitude>
						</ojp:GeoPosition>
					</ojp:Location>
					<ojp:Complete>true</ojp:Complete>
					<ojp:Probability>0.920000017</ojp:Probability>
					<ojp:Mode>
						<ojp:PtMode>bus</ojp:PtMode>
						<siri:BusSubmode>localBusService</siri:BusSubmode>
					</ojp:Mode>
				</ojp:Location>
			</ojp:OJPLocationInformationDelivery>
		</siri:ServiceDelivery>
	</siri:OJPResponse>
</siri:OJP>
+

The answer is packed into an ojp:OJPLocationInformationDelivery element

Item Cardinality Description Example
siri:ResponseTimestamp 1:1 The timestamp of the answer
<siri:ResponseTimestamp>2020-04-03T14:47:59Z</siri:ResponseTimestamp>
siri:RequesteMessageRef 0:1 This refers to the message that was requested
<siri:RequestMessageRef>756</siri:RequestMessageRef>
siri:Status 1:1 The status of the response. true means that the request has been processed.
<siri:Status>true</siri:Status>
ojp:CalcTime 1:1 The calculation time in milliseconds
<ojp:CalcTime>939</ojp:CalcTime>
ojp:Location 1:1 Contains the individual ojp:Location responses
ojp:Location/ojp:Location 1:1 The individual answers. It’s quite unpleasant that two hierarchically different elements are given the same name here, but that’s just how it is.
<ojp:Location>
<ojp:StopPlace>
<ojp:StopPlaceRef>ch:1:sloid:8052</ojp:StopPlaceRef>
<ojp:StopPlaceName>
<ojp:Text>Bern Tiefenau</ojp:Text>
</ojp:StopPlaceName>
<ojp:TopographicPlaceRef>23006351:1</ojp:TopographicPlaceRef>
</ojp:StopPlace>
<ojp:LocationName>
<ojp:Text xml:lang="de">Bern Tiefenau (Bern)</ojp:Text>
</ojp:LocationName>
<ojp:GeoPosition>
<siri:Longitude>7.45020</siri:Longitude>
<siri:Latitude>46.97274</siri:Latitude>
</ojp:GeoPosition>
</ojp:Location>
ojp:Complete 1:1 Indicates whether the current location is complete or requires further refinement. If refinement is required, resubmit in a LocationInformationRequest with greater precision.
<ojp:Complete>true</ojp:Complete>
ojp:Probability 1:1 The probability that the respective location corresponds to the one you are looking for.

The results are sorted in descending order by probability (most relevant first).

The selection of the best candidates for the list of hits is determined after the input text matches the entire database. The probability is determined by the number of matching trigrams into which the terms can be broken down and the remainder that does not match. If there is a complete match, i.e. no remainder, there is a perfect match and the candidate receives the maximum probability 1. If there is still a remainder, points are deducted. The hits found in this way can then be influenced by various evaluation criteria and by quality and sorting order. Hits can be changed based on the region (municipality code), type (stop, address, location, POI, …), serving means of transport or a relevance value.

<ojp:Probability>0.927999973</ojp:Probability>

 

ojp:Mode 0:* The relevant modes for the location
<ojp:Mode>
	<ojp:PtMode>rail</ojp:PtMode>
	<siri:RailSubmode>unknown</siri:RailSubmode>
</ojp:Mode>
<ojp:Mode>
	<ojp:PtMode>bus</ojp:PtMode>
	<siri:BusSubmode>localBusService</siri:BusSubmode>
</ojp:Mode>

ojp:Location

A location can be:

  • StopPoint: A stop or a platform
  • StopPlace: A stop in the physical sense
  • TopographicPlace: A place
  • PointOfInterest: A POI. Please note that there are currently none available.
  • Address: An address
Item Cardinality Description Example
ojp:StopPlace 0:1 A stop in the physical sense
<ojp:StopPlace>
<ojp:StopPlaceRef>ch:1:sloid:8052</ojp:StopPlaceRef>
<ojp:StopPlaceName>
<ojp:Text>Bern Tiefenau</ojp:Text>
</ojp:StopPlaceName>
<ojp:TopographicPlaceRef>23006351:1</ojp:TopographicPlaceRef>
</ojp:StopPlace>
ojp:StopPoint 0:1 One stop or one platform
<ojp:StopPoint>
<siri:StopPointRef>ch:1:sloid:76558:1:3</siri:StopPointRef>
<ojp:StopPointName>
<ojp:Text xml:lang="de">Thun, Marktgasse</ojp:Text>
</ojp:StopPointName>
<ojp:PrivateCode>
<ojp:System>EFA</ojp:System>
<ojp:Value>119107:0:10000</ojp:Value>
</ojp:PrivateCode>
<ojp:ParentRef>ch:1:sloid:76558</ojp:ParentRef>
<ojp:TopographicPlaceRef>23006942:9</ojp:TopographicPlaceRef>
</ojp:StopPoint>
0:1 A place
<ojp:TopographicPlace>
	<ojp:TopographicPlaceCode>suburbID:8136088:6:Bernhardsdorf:5439812:10881110:MRCV</ojp:TopographicPlaceCode>
	<ojp:TopographicPlaceName>
		<ojp:Text xml:lang="de">Bernhardsdorf</ojp:Text>
	</ojp:TopographicPlaceName>
</ojp:TopographicPlace>
ojp:PointOfInterest 0:1 A POI The following categories are available:
service, shopping, leisure, catering, public, parkride, accommodation, sbb_services, other
<ojp:PointOfInterest>
<ojp:PointOfInterestCode>poiID:33512:23006351:-1:Migros Take Away,:Bern:Migros Take Away,:ANY:POI:828172:6066239:MRCV:ROKAS
<ojp:PointOfInterestName>
<ojp:Text xml:lang="de">Migros Take Away,</ojp:Text>
</ojp:PointOfInterestName>
<ojp:PointOfInterestCategory>
<ojp:OsmTag>
<ojp:Tag>POI_1</ojp:Tag>
<ojp:Value>take_away</ojp:Value>
</ojp:OsmTag>
</ojp:PointOfInterestCategory>
<ojp:PointOfInterestCategory>
<ojp:OsmTag>
<ojp:Tag>POI_0</ojp:Tag>
<ojp:Value>catering</ojp:Value>
</ojp:OsmTag>
</ojp:PointOfInterestCategory>
</ojp:TopographicPlaceRef>23006351:-1</ojp:TopographicPlaceRef>
</ojp:PointOfInterest>
ojp:Address 0:1 An address
<ojp:Address>
	<ojp:AddressCode>streetID:382:13:23006351:1:Sempachstrasse:Bern:Sempach-strasse::Sempachstrasse:3014:ANY:DIVA_SINGLEHOUSE:830639:6064058:MRCV:sbb</ojp:AddressCode>
	<ojp:AddressName>
		<ojp:Text xml:lang="de">Bern, Sempachstrasse 13</ojp:Text>
	</ojp:AddressName>
	<ojp:PostCode>3014</ojp:PostCode>
	<ojp:TopographicPlaceName>Bern</ojp:TopographicPlaceName>
	<ojp:TopographicPlaceRef>23006351:1</ojp:TopographicPlaceRef>
	<ojp:Street>Sempachstrasse</ojp:Street>
	<ojp:HouseNumber>13</ojp:HouseNumber>
</ojp:Address>

 

ojp:LocationName 0:1 The name of the place
<ojp:LocationName>
	<ojp:Text xml:lang="de">Bernina Suot (Pontresina)</ojp:Text>
</ojp:LocationName>

 

ojp:GeoPosition 0:1 The coordinates

The example shows what comes back when there are no coordinates. The precision is then set to half the circumference of the world. Of course, we try to avoid such cases.

<ojp:GeoPosition>
	<siri:Longitude>0.0</siri:Longitude>
	<siri:Latitude>0.0</siri:Latitude>
	<siri:Precision>20000000</siri:Precision>
</ojp:GeoPosition>

 

ojp:Location/ojp:StopPoint

This feature is currently not supported.

ojp:Location/ojp:StopPlace

Item Cardinality Description Example
ojp:StopPlaceRef 1:1 The reference to the stop. New: SLOID number
<ojp:StopPlaceRef>ch:1:sloid:8052</ojp:StopPlaceRef>
ojp:StopPlaceName 1:1 The name of the stop
<ojp:StopPlaceName>
	<ojp:Text>Bern Tiefenau</ojp:Text>
</ojp:StopPlaceName>

 

ojp:TopographicPlaceRef 1:1 The reference to the location.
<ojp:TopographicPlaceRef>23006351:1</ojp:TopographicPlaceRef>