-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- ISO TS 14823 -- -- This ASN.1 was generated: 30.08.2016 -- -- This document contains only the data element needed for the encoding of an IVI message -- as defined in ISO TS 19321(2020) -- -- Published version location (yet missing there): -- https://standards.iso.org/iso/ts/14823/ -- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ GDD {iso (1) standard (0) gdd(14823) version1 (0)} DEFINITIONS AUTOMATIC TAGS::= BEGIN --Definition of GDD Structure GddStructure::= SEQUENCE{ pictogramCode SEQUENCE { countryCode OCTET STRING (SIZE (2)) OPTIONAL, serviceCategoryCode CHOICE { trafficSignPictogram ENUMERATED {dangerWarning, regulatory, informative,...}, publicFacilitiesPictogram ENUMERATED {publicFacilities, ...}, ambientOrRoadConditionPictogram ENUMERATED {ambientCondition, roadCondition,...}, ...}, pictogramCategoryCode SEQUENCE { nature INTEGER (1..9), serialNumber INTEGER (0..99) }}, attributes GddAttributes OPTIONAL } -- Definition of the single ISO 14823 Attributes GddAttributes::= SEQUENCE (SIZE(1..8),...) OF GddAttribute GddAttribute::= CHOICE{ dtm InternationalSign-applicablePeriod, -- Date/Time/Period edt InternationalSign-exemptedApplicablePeriod,-- Exemption status of Date/Time/Period dfl InternationalSign-directionalFlowOfLane,-- Directional Flow of Lane ved InternationalSign-applicableVehicleDimensions,-- Vehicle Dimensions spe InternationalSign-speedLimits,-- Speed roi InternationalSign-rateOfIncline,-- Rate of Incline dbv InternationalSign-distanceBetweenVehicles,-- Distance Between Vehicles ddd InternationalSign-destinationInformation,-- Destination/Direction/Distance set InternationalSign-section, -- Section nol InternationalSign-numberOfLane -- Number of Lanes } InternationalSign-applicablePeriod::= SEQUENCE { year SEQUENCE { -- contains yearRangeStartYear and yearRangeEndYear yearRangeStartYear INTEGER(2000..2127,...), yearRangeEndYear INTEGER(2000..2127,...) } OPTIONAL, month-day SEQUENCE { -- contains dateRangeStartMonth&Date and dateRangeEndMonth&Date dateRangeStartGDD-MonthDay GDD-MonthDay, dateRangeEndGDD-MonthDay GDD-MonthDay } OPTIONAL, repeatingPeriodDayTypes RepeatingPeriodDayTypes OPTIONAL, hourMinutes SEQUENCE { -- contains timeRangeStartTime and timeRangeEndTime timeRangeStartTime GDD-HoursMinutes, timeRangeEndTime GDD-HoursMinutes } OPTIONAL, dateRangeOfWeek GDD-DayOfWeek OPTIONAL, durationHourMinute GDD-HoursMinutes OPTIONAL } InternationalSign-exemptedApplicablePeriod::= InternationalSign-applicablePeriod InternationalSign-directionalFlowOfLane::= INTEGER { sDL (1),-- Straight Direction Only sLT (2),-- Straight and Left Turn Only sRT (3),-- Straight and Right Turn Only lTO (4),-- Left Turn Only rTO (5),-- Right Turn Only cLL (6),-- Convergence from the Left Lane cRI (7),-- Convergence from the Right Lane oVL (8) -- Oncoming Vehicles Lane } (1..8) InternationalSign-applicableVehicleDimensions::= SEQUENCE{ vehicleHeight GDD-Distance OPTIONAL, vehicleWidth GDD-Distance OPTIONAL, vehicleLength GDD-Distance OPTIONAL, vehicleGDD-Weight GDD-Weight OPTIONAL } InternationalSign-speedLimits::= SEQUENCE{ speedLimitMax INTEGER(0..250) OPTIONAL, speedLimitMin INTEGER(0..250) OPTIONAL, unit Code-Units (0..1) } InternationalSign-rateOfIncline::= INTEGER(1..32) InternationalSign-distanceBetweenVehicles::= GDD-Distance InternationalSign-destinationInformation::= SEQUENCE{ junctionDirection INTEGER(1..128) OPTIONAL, roundaboutCwDirection INTEGER(1..128)OPTIONAL, roundaboutCcwDirection INTEGER(1..128)OPTIONAL, ioList GDD-DDD-IO-LIST } InternationalSign-section::= SEQUENCE{ startingPointLength GDD-Distance OPTIONAL, continuityLength GDD-Distance OPTIONAL } InternationalSign-numberOfLane::= INTEGER(0..99) -- Definition of data elements used in ISO 14823 attributes Code-Units::= INTEGER { kmperh (0), milesperh (1), kilometre (2), metre (3), decimetre (4), centimetre (5), mile (6), yard (7), foot (8), minutesOfTime (9), tonnes (10),--1000 kg, not Ton! hundredkg (11), pound (12),--lbs rateOfIncline (13), durationinminutes (14) -- value 15 reserved for future use } (0..15) GDD-DayOfWeek::= BIT STRING {unused(0), monday(1), tuesday(2), wednesday(3), thursday(4), friday(5), saturday(6), sunday(7)} (SIZE (8)) GDD-DDD-IO-LIST ::= SEQUENCE (SIZE (1..8,...)) OF GDD-DDD-IO GDD-DDD-IO::= SEQUENCE{ arrowDirection INTEGER(0..7), destPlace GDD-DestinationPlaces OPTIONAL, destRoad GDD-DestinationRoads OPTIONAL, roadNumberIdentifier INTEGER(1..999) OPTIONAL, streetName INTEGER(1..999) OPTIONAL, streetNameText UTF8String OPTIONAL, distanceToDivergingPoint GDD-DistanceOrDuration OPTIONAL, distanceToGDD-DestinationPlace GDD-DistanceOrDuration OPTIONAL } GDD-DestinationPlace::= SEQUENCE{ destType DestinationType, destRSCode GddStructure (WITH COMPONENTS {..., attributes ABSENT}) OPTIONAL, destBlob OCTET STRING OPTIONAL, placeNameIdentification INTEGER(1..999) OPTIONAL, placeNameText UTF8String OPTIONAL } GDD-DestinationPlaces ::= SEQUENCE (SIZE (1..4,...)) OF GDD-DestinationPlace GDD-DestinationRoad::= SEQUENCE{ derType GDD-DestinationRoadType, roadNumberIdentifier INTEGER(1..999) OPTIONAL, roadNumberText UTF8String OPTIONAL } GDD-DestinationRoads ::= SEQUENCE (SIZE (1..4,...)) OF GDD-DestinationRoad GDD-DestinationRoadType::= INTEGER { none (0), nationalHighway (1), localHighway (2), tollExpresswayMotorway (3), internationalHighway (4), highway (5), expressway (6), nationalRoad (7), regionalProvincialRoad (8), localRoad (9), motorwayJunction (10), diversion (11), rfu1 (12), rfu2 (13), rfu3 (14), rfu4 (15) } (0..15, ...) DestinationType::= INTEGER { none (0), importantArea (1), principalArea (2), generalArea (3), wellKnownPoint (4), country (5), city (6), street (7), industrialArea (8), historicArea (9), touristicArea (10), culturalArea (11), touristicRoute (12), recommendedRoute (13), touristicAttraction (14), geographicArea (15) } (0..15, ...) GDD-Distance::= SEQUENCE{ value INTEGER(1..16384), unit Code-Units(2..4|6..8) } GDD-DistanceOrDuration::= SEQUENCE { value INTEGER(1..16384), unit Code-Units (2..9) } GDD-HoursMinutes::= SEQUENCE { hours INTEGER (0..23),-- number of hours after midnight mins INTEGER (0..59) -- number of minutes after the hour } GDD-MonthDay::= SEQUENCE { month INTEGER (1..12), day INTEGER (1..31) } RepeatingPeriodDayTypes::= BIT STRING {national-holiday (0), even-days(1), odd-days(2), market-day(3) } (SIZE (4)) GDD-Weight::= SEQUENCE { value INTEGER(1..16384), unit Code-Units (10..12) } END