Loading ITS-Container.asn +62 −48 Original line number Diff line number Diff line ITS-Container { itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102637) cc (0) version (2) itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) en (302637) cc (0) version (1) } DEFINITIONS AUTOMATIC TAGS ::= BEGIN ItsPduHeader ::= SEQUENCE { protocolVersion INTEGER{ currentVersion(2) } (0..255), protocolVersion INTEGER{ currentVersion(1) } (0..255), messageID INTEGER{ denm(1),cam(2), poi(3) } (0..255), stationID StationID } Loading @@ -29,11 +28,11 @@ DeltaReferencePosition ::= SEQUENCE { deltaElevation DeltaElevation } Longitude ::= INTEGER { oneMicrodegreeEast (10), oneMicrodegreeWest (-10), unknown(1800000001) } (-1800000000..1800000001) -- multiples of 0.1 microdegree Longitude ::= INTEGER { oneMicrodegreeEast (10), oneMicrodegreeWest (-10) } (-1800000000..1800000001) -- multiples of 0.1 microdegree Latitude ::= INTEGER { oneMicrodegreeNorth (10), oneMicrodegreeSouth (-10), unknown(900000001) } (-900000000..900000001) -- multiples of 0.1 microdegree Latitude ::= INTEGER { oneMicrodegreeNorth (10), oneMicrodegreeSouth (-10) } (-900000000..900000001) -- multiples of 0.1 microdegree Elevation ::= INTEGER { seaLevel(0),oneMeter (1), unknown(7191) } (-1000..7191) Elevation ::= INTEGER { seaLevel(0),oneMeter (1) } (-1000..7191) DeltaLongitude ::= INTEGER { oneMicrodegreeEast (10), oneMicrodegreeWest (-10) } (-131072..131071) -- multiples of 0.1 microdegree Loading @@ -50,7 +49,7 @@ PosConfidenceEllipse ::= SEQUENCE { PathPoint ::= SEQUENCE { pathPosition DeltaReferencePosition, pathDeltaTime PathDeltaTime pathDeltaTime PathDeltaTime OPTIONAL -- omitted for path recommended by infrastructure } PathDeltaTime ::= INTEGER { tenMilliSecondsInPast(1) } (0..65535, ...) -- timing of predicted future path will be using the range extension Loading Loading @@ -80,6 +79,7 @@ SemiAxisLength ::= INTEGER{ oneCentimeter(1), notValid(4095) } (0..4095) precipitation PrecipitationSubCauseCode, slowVehicleWarning SlowVehicleWarningSubCauseCode, stationaryVehicleIndication StationaryVehicleIndicationSubCauseCode, humanProblem HumanProblemSubCauseCode, emergencyVehicleApproachingIndication EmergencyVehicleApproachingIndicationSubCauseCode, hazardousLocation HazardousLocationSubCauseCode, collisionRiskWarning CollisionRiskWarningSubCauseCode, Loading @@ -104,7 +104,9 @@ SemiAxisLength ::= INTEGER{ oneCentimeter(1), notValid(4095) } (0..4095) SlowVehicleWarningSubCauseCode ::= INTEGER {unknown(0), maintenanceVehicle(1), vehiclesSlowingToLookAtAccident(2), abnormalLoad(3), abnormalWideLoad(4), convoy(5), snowplough(6), deicing(7), saltingVehicles(8) } (0..8, ...) StationaryVehicleIndicationSubCauseCode ::= INTEGER {unknown(0), unknownHumanProblem(1), glycemiaProblem(2), heartProblem(3), accidentSignalledByManualECall(4), accidentSignalledByAutomaticECall(5), unknownVehicleProblem(6), lackOfFuel(7), lackOfBattery(8), engineProblem(9), transmissionProblem(10), engineCoolingProblem(11), brakingSystemProblem(12), steeringProblem(13), tyrePressureProblem(14) } (0..14, ...) StationaryVehicleIndicationSubCauseCode ::= INTEGER {unknown(0), accidentSignalledByManualECall(1), accidentSignalledByAutomaticECall(2), unknownVehicleProblem(3), lackOfFuel(4), lackOfBattery(5), engineProblem(6), transmissionProblem(7), engineCoolingProblem(8), brakingSystemProblem(9), steeringProblem(10), tyrePressureProblem(11) } (0..11, ...) HumanProblemSubCauseCode ::= INTEGER { unknown(0), unknownHumanProblem(1), glycemiaProblem(2), heartProblem(3) } (0..3, ...) EmergencyVehicleApproachingIndicationSubCauseCode ::= INTEGER {unknown(0), emergencyVehicleApproaching(1), prioritizedVehicleApproaching(2) } (0..2, ...) Loading @@ -119,17 +121,15 @@ SemiAxisLength ::= INTEGER{ oneCentimeter(1), notValid(4095) } (0..4095) Curvature ::= INTEGER{ straight(0), reciprocalOf1MeterRadiusToRight(1), reciprocalOf1MeterRadiusToLeft(-1) } (-30000..30000) CurvatureChange ::= INTEGER{ noChange(0) } (-1020..1020) -- removing this type is under discussion CurvatureAccuracy ::= INTEGER { lessThanOnePercentDeviation(0), onePercentDeviatfion(1), tenPercentDeviation(10), overTenPercentDeviation(11), notAvailable(12) } (0..12) CurvatureConfidence ::= INTEGER { lessThanOnePercentDeviation(0), onePercentDeviation(1), tenPercentDeviation(10), overTenPercentDeviation(11), notAvailable(12) } (0..12) CurvatureCalculationMode ::= ENUMERATED { yawRateNotAvailable(0), yawRateAvailable(1), ... } Direction ::= INTEGER {north(0), east(900), south(1800), west(2700)} (0..3599) DirectionConfidence ::= INTEGER { notValid(127), withinOneDegree(1), withinTenDegree(10) } (0..127) DirectionConfidence ::= INTEGER { withinZeroPointOneDegree(1), withinOneDegree(10), notValid(127) } (1..127) ElevationConfidence ::= INTEGER { notValid(127) } (0..127) ElevationConfidence ::= INTEGER { withinOneMeter(1), notValid(127) } (1..127) LaneNumber ::= INTEGER { offTheRoad(0) } (0..15) Loading @@ -139,9 +139,9 @@ LaneNumberConfidence ::= Percentage Percentage ::= INTEGER (0..100) VehicleSpeed ::= INTEGER { standstill(0), oneCentimeterPerSec(1), unknown(16383) } (0..16383) VehicleSpeed ::= INTEGER { standstill(0), oneCentimeterPerSec(1) } (0..16383) VehicleSpeedConfidence ::= INTEGER { notValid(127) } (0..127) VehicleSpeedConfidence ::= INTEGER { withinOneCentimeterPerSec(1), withinOneMeterPerSec(100), outOfRange(126), notValid(127) } (1..127) VehicleMass ::= INTEGER { hundredKg(1), notValid(1024) } (1..1024) Loading @@ -164,22 +164,47 @@ ExteriorLights ::= BIT STRING { highBeamHeadlightsOn (1), leftTurnSignalOn (2), rightTurnSignalOn (3), daytimeRunningLightsOn (4), reverseLightOn (5), fogLightOn (6), parkingLightsOn (7) } (SIZE(8)) DangerousGoods ::= ENUMERATED { unknown(0), explosives(1), flammableGases(2), toxicGases(3), flammableLiquids(4), flammalbeSolids(5), substancesLiableToSpontaneousCombustion(6), substancesEmittingFlammableGasesUponContactWithWater(7), oxidizingSubstances(8), organicPeroxides(9), toxicSubstances(10), infectiousSubstances(11), radioactiveMaterial(12), corrosiveSubstances(13), miscellaneousDangerousSubstances(14) } DangerousGoodsBasic::= ENUMERATED { explosives1(0), explosives2(1), explosives3(2), explosives4(3), explosives5(4), explosives6(5), flammableGases(6), nonFlammableGases(7), toxicGases(8), flammableLiquids(9), flammableSolids(10), substancesLiableToSpontaneousCombustion(11), substancesEmittingFlammableGasesUponContactWithWater(12), oxidizingSubstances(13), organicPeroxides(14), toxicSubstances(15), infectiousSubstances(16), radioactiveMaterial(17), corrosiveSubstances(18), miscellaneousDangerousSubstances(19) } DangerousGoodsExtended ::= SEQUENCE { dangerousGoodsType DangerousGoodsBasic unNumber INTEGER (0..9999), emergencyActionCode IA5String OPTIONAL, phoneNumber IA5String OPTIONAL, companyName IA5String OPTIONAL, elevatedTemperature BOOLEAN, tunnelsRestricted BOOLEAN, limitedQuantity BOOLEAN } SpecialTransportType ::= ENUMERATED { heavyLoad(0), excessWidth(1) } Loading @@ -192,9 +217,9 @@ HeightLonCarr ::= INTEGER { oneCentimeter(1) } (0..100) PosLonCarr ::= INTEGER { oneCentimeter(1) } (0..127) PosPillar ::= INTEGER { tenCentimeters(1), notUsed(30) } (0..30) PosPillar ::= INTEGER { tenCentimeters(1), unknown(30) } (0..30) PosCentMass ::= INTEGER { tenCentimeters(1), notUsed(63) } (0..63) PosCentMass ::= INTEGER { tenCentimeters(1), unknown(63) } (0..63) RoadworkType ::= ENUMERATED { winterService(0), streetCleaning(1) Loading @@ -202,6 +227,8 @@ RoadworkType ::= ENUMERATED { winterService(0), SpeedLimit ::= INTEGER { oneKmPerHour(1) } (0..150) Temperature ::= INTEGER { oneDegreeCelsius(1) } (-60..67) TrafficRule ::= ENUMERATED { noPassing(0), noPassingForTrucks(1) } Loading @@ -221,21 +248,17 @@ PositionOfOccupants ::= BIT STRING { tier2MidOccupied (5), tier3LeftOccupied (6), tier3RightOccupied (7), tier3MidOccupied (8), tier3NotDetectable (9) tier3MidOccupied (8) } VehicleLength ::= INTEGER { tenCentimeters(1), outOfRange(1022), unknown(1023) } (0..1023) VehicleLength ::= INTEGER { tenCentimeters(1), outOfRange(1022), unknown(1023) } (1..1023) VehicleLengthConfidenceIndication ::= ENUMERATED { noTrailerPresent(0), trailerPresentWithUnknownLength(1), trailerPresenceIsUnknown(2) } PathHistory::= SEQUENCE SIZE(0..23) OF PathPoint VehicleWidth ::= INTEGER { tenCentimeters(1), outOfRange(30), unknown(31) } (1..31) IncidentRule ::= BIT STRING { leftLaneClosed (0), rightLaneClosed (1), noPassing (2), noPassingForTrucks (3) } PathHistory::= SEQUENCE (SIZE(0..40)) OF PathPoint Priority ::= INTEGER { lowest(0), highest(3) } (0..3) Loading @@ -254,16 +277,7 @@ highway(5), reserved(6), unknown(7) } TimestampUtc ::= SEQUENCE { year INTEGER (2010..2130, ...), mon INTEGER (1..12), day INTEGER (1..31), hh INTEGER (0..23), min INTEGER (0..59), sec INTEGER (0..60), -- Note upper limit 60 to account for leap seconds msec INTEGER (0..999) } TimestampUtc ::= TIME (SETTINGS "Basic=Date-Time Date=YMD Year=Basic Time=HMSF3 Local-or-UTC=Z") VehicleRole ::= ENUMERATED { default(0), publicTransport(1), Loading Loading
ITS-Container.asn +62 −48 Original line number Diff line number Diff line ITS-Container { itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102637) cc (0) version (2) itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) en (302637) cc (0) version (1) } DEFINITIONS AUTOMATIC TAGS ::= BEGIN ItsPduHeader ::= SEQUENCE { protocolVersion INTEGER{ currentVersion(2) } (0..255), protocolVersion INTEGER{ currentVersion(1) } (0..255), messageID INTEGER{ denm(1),cam(2), poi(3) } (0..255), stationID StationID } Loading @@ -29,11 +28,11 @@ DeltaReferencePosition ::= SEQUENCE { deltaElevation DeltaElevation } Longitude ::= INTEGER { oneMicrodegreeEast (10), oneMicrodegreeWest (-10), unknown(1800000001) } (-1800000000..1800000001) -- multiples of 0.1 microdegree Longitude ::= INTEGER { oneMicrodegreeEast (10), oneMicrodegreeWest (-10) } (-1800000000..1800000001) -- multiples of 0.1 microdegree Latitude ::= INTEGER { oneMicrodegreeNorth (10), oneMicrodegreeSouth (-10), unknown(900000001) } (-900000000..900000001) -- multiples of 0.1 microdegree Latitude ::= INTEGER { oneMicrodegreeNorth (10), oneMicrodegreeSouth (-10) } (-900000000..900000001) -- multiples of 0.1 microdegree Elevation ::= INTEGER { seaLevel(0),oneMeter (1), unknown(7191) } (-1000..7191) Elevation ::= INTEGER { seaLevel(0),oneMeter (1) } (-1000..7191) DeltaLongitude ::= INTEGER { oneMicrodegreeEast (10), oneMicrodegreeWest (-10) } (-131072..131071) -- multiples of 0.1 microdegree Loading @@ -50,7 +49,7 @@ PosConfidenceEllipse ::= SEQUENCE { PathPoint ::= SEQUENCE { pathPosition DeltaReferencePosition, pathDeltaTime PathDeltaTime pathDeltaTime PathDeltaTime OPTIONAL -- omitted for path recommended by infrastructure } PathDeltaTime ::= INTEGER { tenMilliSecondsInPast(1) } (0..65535, ...) -- timing of predicted future path will be using the range extension Loading Loading @@ -80,6 +79,7 @@ SemiAxisLength ::= INTEGER{ oneCentimeter(1), notValid(4095) } (0..4095) precipitation PrecipitationSubCauseCode, slowVehicleWarning SlowVehicleWarningSubCauseCode, stationaryVehicleIndication StationaryVehicleIndicationSubCauseCode, humanProblem HumanProblemSubCauseCode, emergencyVehicleApproachingIndication EmergencyVehicleApproachingIndicationSubCauseCode, hazardousLocation HazardousLocationSubCauseCode, collisionRiskWarning CollisionRiskWarningSubCauseCode, Loading @@ -104,7 +104,9 @@ SemiAxisLength ::= INTEGER{ oneCentimeter(1), notValid(4095) } (0..4095) SlowVehicleWarningSubCauseCode ::= INTEGER {unknown(0), maintenanceVehicle(1), vehiclesSlowingToLookAtAccident(2), abnormalLoad(3), abnormalWideLoad(4), convoy(5), snowplough(6), deicing(7), saltingVehicles(8) } (0..8, ...) StationaryVehicleIndicationSubCauseCode ::= INTEGER {unknown(0), unknownHumanProblem(1), glycemiaProblem(2), heartProblem(3), accidentSignalledByManualECall(4), accidentSignalledByAutomaticECall(5), unknownVehicleProblem(6), lackOfFuel(7), lackOfBattery(8), engineProblem(9), transmissionProblem(10), engineCoolingProblem(11), brakingSystemProblem(12), steeringProblem(13), tyrePressureProblem(14) } (0..14, ...) StationaryVehicleIndicationSubCauseCode ::= INTEGER {unknown(0), accidentSignalledByManualECall(1), accidentSignalledByAutomaticECall(2), unknownVehicleProblem(3), lackOfFuel(4), lackOfBattery(5), engineProblem(6), transmissionProblem(7), engineCoolingProblem(8), brakingSystemProblem(9), steeringProblem(10), tyrePressureProblem(11) } (0..11, ...) HumanProblemSubCauseCode ::= INTEGER { unknown(0), unknownHumanProblem(1), glycemiaProblem(2), heartProblem(3) } (0..3, ...) EmergencyVehicleApproachingIndicationSubCauseCode ::= INTEGER {unknown(0), emergencyVehicleApproaching(1), prioritizedVehicleApproaching(2) } (0..2, ...) Loading @@ -119,17 +121,15 @@ SemiAxisLength ::= INTEGER{ oneCentimeter(1), notValid(4095) } (0..4095) Curvature ::= INTEGER{ straight(0), reciprocalOf1MeterRadiusToRight(1), reciprocalOf1MeterRadiusToLeft(-1) } (-30000..30000) CurvatureChange ::= INTEGER{ noChange(0) } (-1020..1020) -- removing this type is under discussion CurvatureAccuracy ::= INTEGER { lessThanOnePercentDeviation(0), onePercentDeviatfion(1), tenPercentDeviation(10), overTenPercentDeviation(11), notAvailable(12) } (0..12) CurvatureConfidence ::= INTEGER { lessThanOnePercentDeviation(0), onePercentDeviation(1), tenPercentDeviation(10), overTenPercentDeviation(11), notAvailable(12) } (0..12) CurvatureCalculationMode ::= ENUMERATED { yawRateNotAvailable(0), yawRateAvailable(1), ... } Direction ::= INTEGER {north(0), east(900), south(1800), west(2700)} (0..3599) DirectionConfidence ::= INTEGER { notValid(127), withinOneDegree(1), withinTenDegree(10) } (0..127) DirectionConfidence ::= INTEGER { withinZeroPointOneDegree(1), withinOneDegree(10), notValid(127) } (1..127) ElevationConfidence ::= INTEGER { notValid(127) } (0..127) ElevationConfidence ::= INTEGER { withinOneMeter(1), notValid(127) } (1..127) LaneNumber ::= INTEGER { offTheRoad(0) } (0..15) Loading @@ -139,9 +139,9 @@ LaneNumberConfidence ::= Percentage Percentage ::= INTEGER (0..100) VehicleSpeed ::= INTEGER { standstill(0), oneCentimeterPerSec(1), unknown(16383) } (0..16383) VehicleSpeed ::= INTEGER { standstill(0), oneCentimeterPerSec(1) } (0..16383) VehicleSpeedConfidence ::= INTEGER { notValid(127) } (0..127) VehicleSpeedConfidence ::= INTEGER { withinOneCentimeterPerSec(1), withinOneMeterPerSec(100), outOfRange(126), notValid(127) } (1..127) VehicleMass ::= INTEGER { hundredKg(1), notValid(1024) } (1..1024) Loading @@ -164,22 +164,47 @@ ExteriorLights ::= BIT STRING { highBeamHeadlightsOn (1), leftTurnSignalOn (2), rightTurnSignalOn (3), daytimeRunningLightsOn (4), reverseLightOn (5), fogLightOn (6), parkingLightsOn (7) } (SIZE(8)) DangerousGoods ::= ENUMERATED { unknown(0), explosives(1), flammableGases(2), toxicGases(3), flammableLiquids(4), flammalbeSolids(5), substancesLiableToSpontaneousCombustion(6), substancesEmittingFlammableGasesUponContactWithWater(7), oxidizingSubstances(8), organicPeroxides(9), toxicSubstances(10), infectiousSubstances(11), radioactiveMaterial(12), corrosiveSubstances(13), miscellaneousDangerousSubstances(14) } DangerousGoodsBasic::= ENUMERATED { explosives1(0), explosives2(1), explosives3(2), explosives4(3), explosives5(4), explosives6(5), flammableGases(6), nonFlammableGases(7), toxicGases(8), flammableLiquids(9), flammableSolids(10), substancesLiableToSpontaneousCombustion(11), substancesEmittingFlammableGasesUponContactWithWater(12), oxidizingSubstances(13), organicPeroxides(14), toxicSubstances(15), infectiousSubstances(16), radioactiveMaterial(17), corrosiveSubstances(18), miscellaneousDangerousSubstances(19) } DangerousGoodsExtended ::= SEQUENCE { dangerousGoodsType DangerousGoodsBasic unNumber INTEGER (0..9999), emergencyActionCode IA5String OPTIONAL, phoneNumber IA5String OPTIONAL, companyName IA5String OPTIONAL, elevatedTemperature BOOLEAN, tunnelsRestricted BOOLEAN, limitedQuantity BOOLEAN } SpecialTransportType ::= ENUMERATED { heavyLoad(0), excessWidth(1) } Loading @@ -192,9 +217,9 @@ HeightLonCarr ::= INTEGER { oneCentimeter(1) } (0..100) PosLonCarr ::= INTEGER { oneCentimeter(1) } (0..127) PosPillar ::= INTEGER { tenCentimeters(1), notUsed(30) } (0..30) PosPillar ::= INTEGER { tenCentimeters(1), unknown(30) } (0..30) PosCentMass ::= INTEGER { tenCentimeters(1), notUsed(63) } (0..63) PosCentMass ::= INTEGER { tenCentimeters(1), unknown(63) } (0..63) RoadworkType ::= ENUMERATED { winterService(0), streetCleaning(1) Loading @@ -202,6 +227,8 @@ RoadworkType ::= ENUMERATED { winterService(0), SpeedLimit ::= INTEGER { oneKmPerHour(1) } (0..150) Temperature ::= INTEGER { oneDegreeCelsius(1) } (-60..67) TrafficRule ::= ENUMERATED { noPassing(0), noPassingForTrucks(1) } Loading @@ -221,21 +248,17 @@ PositionOfOccupants ::= BIT STRING { tier2MidOccupied (5), tier3LeftOccupied (6), tier3RightOccupied (7), tier3MidOccupied (8), tier3NotDetectable (9) tier3MidOccupied (8) } VehicleLength ::= INTEGER { tenCentimeters(1), outOfRange(1022), unknown(1023) } (0..1023) VehicleLength ::= INTEGER { tenCentimeters(1), outOfRange(1022), unknown(1023) } (1..1023) VehicleLengthConfidenceIndication ::= ENUMERATED { noTrailerPresent(0), trailerPresentWithUnknownLength(1), trailerPresenceIsUnknown(2) } PathHistory::= SEQUENCE SIZE(0..23) OF PathPoint VehicleWidth ::= INTEGER { tenCentimeters(1), outOfRange(30), unknown(31) } (1..31) IncidentRule ::= BIT STRING { leftLaneClosed (0), rightLaneClosed (1), noPassing (2), noPassingForTrucks (3) } PathHistory::= SEQUENCE (SIZE(0..40)) OF PathPoint Priority ::= INTEGER { lowest(0), highest(3) } (0..3) Loading @@ -254,16 +277,7 @@ highway(5), reserved(6), unknown(7) } TimestampUtc ::= SEQUENCE { year INTEGER (2010..2130, ...), mon INTEGER (1..12), day INTEGER (1..31), hh INTEGER (0..23), min INTEGER (0..59), sec INTEGER (0..60), -- Note upper limit 60 to account for leap seconds msec INTEGER (0..999) } TimestampUtc ::= TIME (SETTINGS "Basic=Date-Time Date=YMD Year=Basic Time=HMSF3 Local-or-UTC=Z") VehicleRole ::= ENUMERATED { default(0), publicTransport(1), Loading