Ga naar inhoud

Locatie Referentie NL profielen DATEX II v3

Hieronder worden de mogelijke locatiereferentie methodes beschreven ten behoeve van de Nederlandse DATEX II versie 3 profielen.

Alle mogelijke elementen en attributen worden generiek benoemd, zie voor het gebruik de specifieke profielen.

LocationReference

De abstracte klasse LocationReference wordt gebruikt voor het beschrijven van één of meer fysiek gescheiden locaties. Wij kennen drie verschillende locatie beschrijvingen; punten, lijnen en gebieden. Wanneer er meerdere locaties beschreven zijn binnen een LocationReference kunnen deze gerelateerd zijn, zoals in een reisroute (of route), maar ze kunnen ook niet gerelateerd zijn.

Per locatiebeschrijving gebruiken wij de volgende specialisaties (xsi:types):

Locatiebeschrijving Type
Punten PointLocation
Lijnen ItineraryByIndexedLocations
Gebieden AreaLocation

De top-level structuur is als volgt:

image

Algemene Attributen

Door middel van overerving via Location en/of NetworkLocation kunnen ExternalReferencing, SupplementaryPositionalDescription en SecondarySupplementaryDescription worden toegevoegd.

Via NetworkLocation en Itinerary kan er ook nog een Destination worden toegevoegd, indien er een bestemmingslocatie benoemd moet worden.

ExternalReferencing

ExternalReferencing is een niet verplicht element wat een locatie definieert door verwijzing naar een extern/ander referentiesysteem. Hierbij wordt gebruik gemaakt van:

Attribuut Type Verplicht Domein Omschrijving
externalLocationCode String Ja NVT Een code in het externe referentiesysteem die de locatie definieert
externalReferencingSystem String Ja NVT Identificatie van het externe/andere locatiereferentiesysteem

In de specifieke usecases is te vinden wanneer en hoe deze velden gebruikt worden.

SupplementaryPositionalDescription

supplementaryPositionalDescription is altijd verplicht en beschrijft aanvullende locatie informatie, zoals de specifieke rijbaan, rijstroken of lengte van een locatie. Het element bestaat uit één (of meer) optionele elementen locationDescriptor èn één (of meer) verplicht(e) element(en) affectedCarriagewayAndLanes.

Bij een LinearLocation dient er een tweede supplementaryPositionalDescription worden meegegeven als een secondarySupplementaryDescription.

image

Attribuut Type Verplicht Domein Omschrijving
infrastructureDescriptor InfrastructureDescriptorEnum Nee atMotorwayInterchange, atRestArea, atServiceArea, atTollPlaza, atTunnelEntryOrExit, inGallery, inTunnel, onBridge, onConnector, onElevatedSection, onFlyover, onIceRoad, onLevelCrossing, onLinkRoad, onRoundabout, onTheRoadway, onUndergroundSection, onUnderpass, withinJunction Beschrijving die infrastructuur identificeert om de specifieke locatie te helpen identificeren
lengthAffected MetresAsFloat Nee >=0 Dit geeft de lengte (gemeten in meters) aan van de rijbaan (en rijstroken) die wordt beïnvloed door het bijbehorende verkeerselement
locationDescription MultilingualString Nee NVT tekstuele beschrijving van de locatie
roadInformation RoadInformation 0, 1 of meerdere NVT Informatie over een set van een of meer wegen. De locatie kan overeenkomen met een deel van de geïdentificeerde weg, het hele geïdentificeerde weggedeelte of een combinatie van meerdere weggedeelten
carriageway Carriageway 1 of meerdere NVT Geeft aan op welk deel van de rijbaan de locatie betrekking heeft
carriageway

Met behulp van carriageway wordt aanvullende rijbaaninformatie opgenomen over (het eindpunt van) de locatie.

Attribuut Type Verplicht Domein Omschrijving
carriageway CarriagewayEnum Ja connectingCarriageway, entrySlipRoad, exitSlipRoad, flyover, leftHandParallelCarriageway, mainCarriageway, parallelCarriageway, rightHandParallelCarriageway, slipRoads, underpass, Geeft aan op welk deel van de rijbaan de locatie betrekking heeft
originalNumberOfLanes Integer Nee NVT Normaal aantal rijstroken, potentieel beschikbaar voor doorgaand verkeer, vóór reductie door situaties. Vluchtstrook mag niet worden meegeteld, tenzij deze soms operationeel wordt gebruikt voor doorgaand verkeer
lane Lane 0, 1 of meerdere NVT Geeft een specifieke rijstrook of groep rijstroken aan

Let op

De waarde ‘slipRoads’ bij carriageway dient enkel gebruikt te worden voor berichten waar geen specifieke rijbaan aanduiding mogelijk is, zoals bij “het is glad op op-en afritten”.

Lane
Attribuut Type Verplicht Domein Omschrijving
laneNumber Integer Nee NVT Het nummer van de rijstrook, waarbij 1 het dichtst bij de vluchtstrook/berm ligt en de nummers oplopend richting middenberm/wegas
laneUsage LaneEnum Nee allLanesCompleteCarriageway, busLane, centralReservation, emergencyLane, hardShoulder, heavyVehicleLane, , leftLane, rightLane, rushHourLane, throughTrafficLane, tidalFlowLane Geeft de specifieke rijstrook aan waarop de locatie betrekking heeft

De volgende richtlijnen dienen gebruikt te worden bij het benoemen van rijstroken:

  • Stroken, behalve bus-, wissel- en vluchtstroken, worden in volgorde vanuit de wegoriëntatielijn (WOL)/wegas aangeduid met een Integer. Gezien vanuit de weggebruiker is rijstrook 1 dus uiterst links
  • In afwijking van het gestelde in (a) wordt een spitsstrook die ter linkerzijde van de rijbaan erbij komt aangeduid met de waarde rushHourLane
  • Een busstrook wordt in alle gevallen aangeduid met busLane
  • Een wisselstrook wordt in alle gevallen aangeduid met tidalFlowLane
  • Een vluchtstrook, waarover informatie beschikbaar is (bijvoorbeeld een spitsstrook ter rechterzijde), wordt aangeduid als hardShoulder
  • Indien bedoeld wordt de gehele rijbaan aan te duiden, wordt gebruik gemaakt van de waarde allLanesCompleteCarriageWay.
RoadInformation

Dit onderdeel geeft de mogelijkheid tekstuele beschrijving toe te voegen middels:

Attribuut Type Verplicht Domein Omschrijving
roadDestination String Nee NVT Een bestemming die aan deze weg is gekoppeld
roadName String Nee NVT De naam van de weg
roadNumber String Nee NVT Het door de wegbeheerder aangewezen wegnummer

SecondarySupplementaryDescription

Bij het beschrijven van een lijnlocatie is het verplicht om een SecondarySupplementaryDescription toe te voegen. Dit is een tweede instanciëring van de supplementaryPositionalDescription zoals hierboven beschreven.

Destination

Een Destination beschrijft een bestemmingslocatie en is altijd van het type pointDestination. Dit element mag alleen gebruikt worden bij omleidingen en is gevuld met een pointLocation van het type PointByCoordinates.

PointLocation

Deze specialisatie wordt toegepast als de locatiebeschrijving bestaat uit een enkel punt op een weg of in een regio. Point is afgeleid van het abstracte element NetworkLocation. NetworkLocation is afgeleid van het element Location.

De structuur van de specialisatie is als volgt:

image

Binnen het Nederlands Profiel zijn de onderstaande elementen toegestaan om te gebruiken. Verplichting van de elementen kan verschillen per usecase.

Attribuut AVG SB VMS Omschrijving
pointByCoordinates Verplicht Verplicht Verplicht
_pointLocationExtension Optioneel Optioneel Optioneel Deze wordt gevuld met de openLrBinary
alertCPoint NVT Verplicht waar mogelijk NVT
externalReferencing NVT Optioneel NVT
supplementaryPositionalDescription Optioneel Verplicht Verplicht

pointByCoordinates

Het element pointByCoordinates wordt gebruikt om aan de hand van coördinaten het punt te beschrijven. Het element is rijker dan het element pointCoordinates, doordat er een richting (bearing) opgenomen wordt. Het opnemen van de richting is van groot belang voor de correcte interpretatie van de locatie.

Attribuut Type Verplicht
bearing AngleInDegrees Ja
pointCoordinates PointCoordinates Ja
PointCoordinates

Dit element geeft het punt weer aan de hand van coördinaten op basis van het WGS84 systeem. Het World Geodetic System 1984 (WGS84) is het coördinatenreferentiesysteem voor de aarde dat is ontworpen voor gps. WGS84 wordt standaard gebruikt door gps-ontvangers (hoewel ook andere coördinatenreferentiesystemen kunnen worden ingesteld). Daardoor is WGS84 een van de meest gebruikte wereldwijde coördinatenreferentiesystemen.

Het type PointCoordinates wordt vaak gebruikt als type van een element binnen een overkoepelend element.

Attribuut Verplicht
latitude Ja
longitude Ja

alertCPoint

Het abstracte element alertCPoint wordt gebruikt om de locatie te beschrijven op basis van VILD. Het element kan van het type AlertCMethod2Point of AlertCMethod4Point zijn. Deze specialisatie wordt aangegeven middels het attribuut xsi-type. De specialisaties bepalen de subelementen.

Attribuut Type Verplicht Domein Omschrijving
alertCLocationCountryCode String Ja 8 (code voor Nederland) Het element bevat de EBU country code
alertCLocationTableNumber String Ja NVT Dit element bevat de (middels een punt gescheiden) release- en versie-nummers van de gebruikte VILD. Bijvoorbeeld de waarde "6.7"
alertCLocationTableVersion String Ja NVT Dit element bevat de subversie van de gebruikte VILD. Bijvoorbeeld de waarde "A"
AlertCMethod2Point en AlertCMethod4Point

Beide specialisaties beschrijven een enkel punt op het wegennet gedefinieerd door verwijzing naar een punt in een vooraf gedefinieerde ALERT-C locatietabel met de bijbehorende verkeersstroomrichting. Waarbij er bij AlerCMethod4Point ook nog een OffsetDistance wordt meegegeven.

Type Toepassing
AlertCMethod2Point Beschrijft een VILD puntlocatie
AlertCMethod4Point Beschrijft een puntlocatie met offset ten opzichte van een VILD puntlocatie

In onderstaande afbeelding is AlertCMethod4Point ter illustratie toegevoegd.

image

Beide bevatten zodoende een alertCDirection welke de volgende subelementen bevat:

Attribuut Type Verplicht Domein Omschrijving
alertCAffectedDirection LinearDirectionEnum Ja both, opposite, aligned, unknown Dit element geeft additionele informatie voor navigatie doeleinden.
alertCDirectionCoded AlertCDirectionEnum Ja negative, positive Dit element beschrijft de richting waarin het verkeer rijdt zoals weergegeven in de VILD (via POS_OFF of NEG_OFF)

Let op

Indien de alertCAffectedDirection "Both" is, dient AlertCDirectionCoded met "positive" te worden gevuld.

alertCLocation

Het element alertCLocation is verplicht voor: alertCmethod2PrimaryPointLocation, alertCmethod4PrimaryPointLocation, alertCmethod2SecondaryPointLocation en alertCmethod4SecondaryPointLocation . Optioneel wordt ook de naam van de locatie opgenomen.

Attribuut Type Verplicht Domein Omschrijving
alertCLocationName MultiLingualString Nee NVT Voor locaties op ongenummerde wegen (VILD locatiecode > 50.000) geldt dat alertCLocationName gevuld mag worden met de locatienaam opgebouwd uit de straatnaam van betreffende locatie en de ter plaatse kruisende weg
specificLocation AlertCLocationCode (NonNegativeInteger) Ja >=1 Het element specificLocation verwijst naar de VILD code waarmee de locatie beschreven wordt. Het betreft de unieke code uit VILD waarme de locatie beschreven wordt
AlertCMethod4Point

Deze specialisatie onderscheidt zich door toevoeging van het verplichte element offsetDistance met de afstand (in stroomrichting) tussen de alertCLocation.specificLocation en de locatie uitgedrukt in meters

_pointLocationExtension

Dit optionele element beschrijft de binaire waarde van OpenLr en is verplicht gevuld met openLrPointExtended, welke is gevuld met een verplicht element openLrPointAsBinary.

LinearLocation in een ItineraryByIndexedLocations

ItineraryByIndexedLocations wordt als standaard toegepast binnen trajectlocaties. Toepassing vindt ook plaats bij de beschrijving van een omleidingsroute. Het element locationReference van type ItineraryByIndexedLocations bestaat uit één of meer elementen locationContainedInItinerary:

LocationContainedInItinerary

Het element LocationContainedInItinerary wordt gebruikt om een geordende lijst van locaties op te kunnen nemen. Het element LocationContainedInItinerary wordt met het attribuut xsi-type gespecialiseerd naar een LinearLocation of SingleRoadLinearLocation. De ordering wordt vastgelegd met behulp van het verplichte attribuut index. Hierbij wordt begonnen met index waarde 0 waarna opvolgend doorgenummerd wordt.

Een binnen de itinerary uniek en aaneengesloten volgnummer. Hierbij wordt begonnen met de waarde 0.

Type: Verplicht Domein
xs:int Ja >=0
  • index 0 is altijd een LinearLocation met daarin een gmlLinestring en eventueel openLR.
  • Index 1 - n wordt gevuld met SingleRoadLinearLocation met daarin de VILD referenties.

LinearLocation

Deze specialisatie wordt toegepast als de locatiebeschrijving van een traject. LinearLocation is afgeleid van het abstracte element NetworkLocation. NetworkLocation is afgeleid van het element Location.

De structuur van de specialisatie is als volgt:

image

Binnen het Nederlands Profiel zijn de onderstaande elementen toegestaan om te gebruiken. Verplichting van de elementen verschilt per profiel.

Element Verplicht Omschrijving
gmlLineString Ja Beschrijft het complete traject in een reeks van coördinaten
_linearLocationExtension Nee Beschrijft het complete traject middels openLRBinary
supplementaryPositionalDescription Ja Beschrijft aanvullende locatieinformatie voor de start van het complete traject
secondarySupplementaryDescription Ja Beschrijft aanvullende locatieinformatie voor het einde van het complete traject

SingleRoadLinearLocation

Voor het opnemen van alertClinears gebruiken we vanaf index 1, één of meerdere elementen SingleRoadLinear. SingleRoadLinearLocation is afgeleid van LinearLocation. LinearLocation is afgeleid van het abstracte element NetworkLocation. NetworkLocation is afgeleid van het element Location. De structuur van de specialisatie is als volgt:

image

Binnen het Nederlands Profiel zijn de onderstaande elementen toegestaan om te gebruiken. Verplichting van de elementen verschilt per profiel.

Attribuut Verplicht Omschrijving
alertCLinear Afhankelijk van profiel Beschrijft een (deel) traject conform de VILD methodiek
supplementaryPositionalDescription Ja Beschrijft aanvullende locatieinformatie voor de start van het (deel) traject
secondarySupplementaryDescription Ja Beschrijft aanvullende locatieinformatie voor het einde van het (deel) traject
alertCLinear

Het element alertCLinear wordt gebruikt om de lijn locatie te beschrijven op basis van VILD, en heeft drie mogelijke xsi:type:

  • AlertCMethod2Linear, wordt gebruikt indien er directe verwijzingen worden opgenomen naar de betreffende AlertC (VILD) locaties
  • AlertCMethod4Linear, wordt gebruikt indien er sprake is van een locatie op een bepaald afstand (offset) ten opzichte van de AlertC (VILD) start- en eindlocatie
  • AlertCLinearByCode, wordt gebruikt indien er een toerit, afrit of verbindingsboog beschreven wordt middels VILD.
Attribuut Type Verplicht Domein Omschrijving
alertCLocationCountryCode String Ja 8 (code voor Nederland) Het element bevat de EBU country code
alertCLocationTableNumber String Ja NVT Dit element bevat de (middels een punt gescheiden) release- en versie-nummers van de gebruikte VILD. Bijvoorbeeld de waarde "6.7"
alertCLocationTableVersion String Ja NVT Dit element bevat de subversie van de gebruikte VILD. Bijvoorbeeld de waarde "A"
Method2, Method4 en ByCode

AlertCLinearbyCode kent alleen een AlertCDirection en een AlertCLocation (gerefereerd als LocationCodeForLinearLocation) . Beide methodes (2 en 4) beschrijven een lijn locatie langs een weg tussen twee punten, Primair en Secundair, die vooraf zijn gedefinieerd in een ALERT-C locatietabel. De richting is VAN HET Secundaire punt NAAR het Primaire punt, d.w.z. het Primaire punt is stroomafwaarts van het Secundaire punt. In dat geval wordt de AlertCLocation meegegeven aan zowel de primary als de secundary point.
Waarbij er bij AlerCMethod4Point ook nog een OffsetDistance wordt meegegeven.

Type Toepassing
AlertCMethod2Linear Beschrijft een traject tussen twee VILD puntlocaties zonder specificatie waar tussen de twee punten het traject zich bevindt
AlertCMethod4Linear Beschrijft een traject tussen twee VILD puntlocaties, waarbij door middel van offset de exactere locatie wordt aangeduid
AlertCLinearByCode Beschrijft een traject welke in de VILD wordt gerepresenteerd als een punt, zoals een toe- of afrit, of verbindingsboog

Zie onderstaand diagram van de drie varianten:

image

Attribuut Type Verplicht Domein Omschrijving
alertCDirection AlertCDirection Ja NVT Met dit element wordt de richting aangegeven waarin het verkeer rijdt. Het element bestaat uit twee verplichte elementen alertCDirectionCoded en alertCAffectedDirection
...PrimaryPointLocation ...PrimaryPointLocation Ja NVT De referentie naar de primaire locatie uit de VILD
...SecondaryPointLocation ...SecondaryPointLocation Ja NVT De referentie naar de secundaire locatie uit de VILD
AlertCLinearByCode

Deze specialisatie wordt gebruikt om een lijn te beschrijven bij een enkele AlertC puntlocatie. Denk hierbij aan af- en toeritten en verbindingswegen.

gmlLineString

Het element gmlLineString wordt gebruikt om een reeks coörindaten te definiëren die gezamenlijk de geografische locatie beschrijven. Toepassing van de gmlLineString kan zijn in de vorm van een polyline, maar ook in de vorm van een polygoon. Uitgangspunt is dat een linestring minimaal alle routebepalende coördinaten beschrijft en dat deze coördinaten afwijkend zijn van elkaar.

Het element gmlLineString heeft 3 attributen:

Attribuut Type Verplicht Domein Omschrijving
posList GmlPosList Ja NVT geordende lijst van tweedimensionale puntcoördinaten met volgorde: "breedtegraad" en daarna "lengtegraad" conform EPSG:4326
srsDimension NonNegativeInteger Nee 2 Aantal dimensies van toepassing in het gebruikte Spatail Referencing System (SRS)
srsName String Nee EPSG:4326 Tekstuele omschrijving van het Spatail Referencing System (SRS)
GmlPosList

Het element GmlPosList is afgeleid van het type LongString, wat in de basis een xs:string is. De inhoud van het element is beperkt door middel van een restrictief patroon. Het toegestane patroon is:

RegEx restrictie op GmlPosList

[-+]?[0-9]*\.?[0-9]+(\s[-+]?[0-9]*\.?[0-9]+){3,}
Om eventuele performance issues te voorkomen kan deze RegEx validatie uit het XSD worden gehaald

_linearLocationExtension

Binnen het element LinearLocation is gebruik gemaakt van het optionele element _linearLocationExtension om de binaire waarde van OpenLr te beschrijven. Het element _linearLocationExtension is gevuld met een verplicht element linearLocationExtended, welke is gevuld met een verplicht element openLrLinearAsBinary.

AreaLocation

Deze specialisatie wordt toegepast als de locatiebeschrijving bestaat uit een gebied. De structuur van de specialisatie is als volgt:

image

Binnen het Nederlands profiel zijn de onderstaande elementen toegestaan om te gebruiken. Verplichting van de elementen kan verschillen per usecase.

Element Verplicht Oorsprong
alertCArea Nee AreaLocation
gmlMultiPolygon Ja AreaLocation
namedArea Nee AreaLocation

alertCArea

Het element alertCArea wordt gebruikt om de gebiedslocatie te beschrijven op basis van VILD.

image

Attribuut Type Verplicht Domein Omschrijving
alertCLocationCountryCode String Ja 8 (code voor Nederland) Het element bevat de EBU country code
alertCLocationTableNumber String Ja NVT Dit element bevat de (middels een punt gescheiden) release- en versie-nummers van de gebruikte VILD. Bijvoorbeeld de waarde "6.7"
alertCLocationTableVersion String Ja NVT Dit element bevat de subversie van de gebruikte VILD. Bijvoorbeeld de waarde "A"
areaLocation AlertCLocation Ja NVT De referentie naar een locatie(nummer) uit de VILD en optioneel de naam van de locatie

gmlMultiPolygon

Het element gmlMultiPolygon wordt gebruikt om de gebiedslocatie te beschrijven op basis van een of meerdere polygonen. Elk polygoon wordt gedefinieerd door één externe lineaire ring en nul tot meerdere interne lineaire ringen die interne gebieden definiëren.

Het element gmlMultiPolygon bevat een specifieke lineaire ring, een niet-zelfdoorsnijdende gesloten curve afgeleid van een lijnstring, waarbij de laatste coördinaat hetzelfde is als de eerste. De overige coördinaten zijn afwijkend van het start/eindpunt. Zo'n lineaire ring bestaat uit minimaal vier posities. Deze lineaire ring is niet-zelfdoorsnijdend om het creëren van gefragmenteerde (niet-compacte) gebieden te voorkomen, aangezien meerdere externe ringen kunnen worden gekoppeld aan een instantie van de klasse GmlMultiPolygon.

Attribuut Type Verplicht Domein Omschrijving
gmlAreaName MultilingualString Nee NVT Tekstuele omschrijving van het gebied
gmlPolygon GmlPolygon Ja, maximaal 1 NVT De polygoon beschrijving van het gebied

GmlPolygon

Attribuut Type Verplicht Domein Omschrijving
exterior GmlLinearRing Ja NVT Definitie van de buitenste kaders van de poylgoon
interior GmlLinearRing Nee NVT Definitie van de kaders van uit te sluiten gebieden binnen de poylgoon beschreven in exterior

GmlLinearRing

Het element GmlLinearRing is afgeleid van het type GmlLineString en voegt enkel de mogelijkheid toe om extensies op te nemen op het basistype.

namedArea

Een gebied gedefinieerd door een naam en/of in termen van bekende grenzen, zoals land- of provinciegrenzen of toegewezen controlegebied van een bepaalde autoriteit. De attributen vormen geen eenheid; in plaats daarvan vormt de kleinste kruising het resulterende gebied

Attribuut Type Verplicht Domein Omschrijving
areaName MultilingualString Ja NVT De naam van het gebied
namedAreaType NamedAreaTypeEnum Nee applicationRegion, continent, country, countryGroup, carParkArea, carpoolArea, fuzzyArea, industrialArea, lake, meteorologicalArea, metropolitanArea, municipality, parkAndRideSite, ruralCounty, sea, touristArea, trafficArea, urbanCounty, order1AdministrativeArea, order2AdministrativeArea,order3AdministrativeArea, order4AdministrativeArea, order5AdministrativeArea, policeForceControlArea, roadOperatorControlArea, waterArea Het type gebied
country CountryCode Nee nl land van de verzendende partij volgens ISO 3166-1