Commit 1665e21b authored by kovacsa's avatar kovacsa
Browse files

asn1 update

parent 07fbfc83
Loading
Loading
Loading
Loading
+4 −4
Original line number Diff line number Diff line
@@ -9,7 +9,7 @@ DEFINITIONS AUTOMATIC TAGS ::=
BEGIN

IMPORTS 
   ItsPduHeader, CauseCode, ReferencePosition, AccelerationControl, Curvature, CurvatureConfidence, CurvatureCalculationMode, Direction, DirectionConfidence, LaneNumber, Percentage, Priority, PtLineRoute, PtScheduleDelay, EmbarkationStatus, Movement, DriveDirection, LongitudinalAcceleration, StationType, ExteriorLights, DangerousGoodsBasic, SpecialTransportType, LightBarSirenInUse, VehicleRole, VehicleLength, VehicleWidth, VehicleLengthConfidenceIndication, PathHistory, RoadworkType, LaneInfo, TrafficRule, SpeedLimit FROM ITS-Container {
   ItsPduHeader, CauseCode, ReferencePosition, AccelerationControl, Curvature, CurvatureCalculationMode, Direction, LaneNumber, Percentage, Priority, PtLineRoute, PtScheduleDelay, EmbarkationStatus, Movement, DriveDirection, LongitudinalAcceleration, LateralAcceleration, VerticalAcceleration, StationType, ExteriorLights, DangerousGoodsBasic, SpecialTransportType, LightBarSirenInUse, VehicleRole, VehicleLength, VehicleWidth, PathHistory, RoadworkType, LaneInfo, TrafficRule, SpeedLimit, SteeringWheelAngle FROM ITS-Container {
 itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) en (302637) cc (0) version (1) 
};

@@ -66,21 +66,21 @@ CamPdu ::= SEQUENCE {
 
 BasicVehicleContainerHighFrequency  ::= SEQUENCE {
  direction Direction,
  directionConfidence DirectionConfidence,
  movement Movement,
  driveDirection DriveDirection,
  longitudinalAcceleration LongitudinalAcceleration,
  accelerationControl AccelerationControl,
  curvature Curvature,
  curvatureConfidence CurvatureConfidence,
  curvatureCalculationMode CurvatureCalculationMode,
  laneNumber LaneNumber OPTIONAL
  steeringWheelAngle SteeringWheelAngle OPTIONAL,
  lateralAcceleration LateralAcceleration OPTIONAL,
  verticalAcceleration VerticalAcceleration OPTIONAL
 }

 BasicVehicleContainerLowFrequency  ::= SEQUENCE {
  vehicleRole VehicleRole,
  vehicleLength VehicleLength,
  vehicleLengthConfidenceIndication VehicleLengthConfidenceIndication,
  vehicleWidth VehicleWidth,
  exteriorLights ExteriorLights,
  pathHistory PathHistory
+115 −35
Original line number Diff line number Diff line
@@ -18,8 +18,7 @@ ReferencePosition ::= SEQUENCE {
  latitude Latitude,
  longitude Longitude,
  positionConfidenceEllipse PosConfidenceEllipse ,
  elevation Elevation,
  elevationConfidence ElevationConfidence
  elevation Elevation
}

DeltaReferencePosition ::= SEQUENCE {
@@ -32,7 +31,14 @@ Longitude ::= INTEGER { oneMicrodegreeEast (10), oneMicrodegreeWest (-10) } (-18

Latitude ::= INTEGER { oneMicrodegreeNorth (10), oneMicrodegreeSouth (-10) } (-900000000..900000001) -- multiples of 0.1 microdegree

Elevation ::= INTEGER { seaLevel(0),oneMeter (1) } (-1000..7191)
Elevation ::= SEQUENCE {
 elevationValue ElevationValue,
 elevationConfidence ElevationConfidence
}

ElevationValue ::= INTEGER { seaLevel(0),oneMeter (1) } (-1000..7191)

ElevationConfidence ::= INTEGER { withinOneMeter(1), notValid(127) } (1..127)

DeltaLongitude ::= INTEGER { oneMicrodegreeEast (10), oneMicrodegreeWest (-10) } (-131072..131071) -- multiples of 0.1 microdegree

@@ -72,64 +78,107 @@ SemiAxisLength ::= INTEGER{ oneCentimeter(1), notValid(4095) } (0..4095)
  trafficCondition TrafficConditionSubCauseCode,
  accident AccidentSubCauseCode,
  roadworks RoadworksSubCauseCode,
  peopleOnTheRoad PeopleOnTheRoadSubCauseCode,
  wrongWayDrivingWarning NULL,
  adverseWeatherConditionIndication AdverseWeatherConditionIndicationSubCauseCode,
  visibilityReduced VisibilityReducedSubCauseCode,
  precipitation PrecipitationSubCauseCode,
  slowVehicleWarning SlowVehicleWarningSubCauseCode,
  stationaryVehicleIndication StationaryVehicleIndicationSubCauseCode,
  humanPresenceOnTheRoad HumanPresenceOnTheRoadSubCauseCode,
  wrongWayDriving WrongWayDrivingSubCauseCode,
  adverseWeatherCondition-ExtremeWeatherCondition AdverseWeatherCondition-ExtremeWeatherConditionSubCauseCode,
  adverseWeatherCondition-Adhesion AdverseWeatherCondition-AdhesionSubCauseCode,
  adverseWeatherCondition-Visibility AdverseWeatherCondition-VisibilitySubCauseCode,
  adverseWeatherCondition-Precipitation AdverseWeatherCondition-PrecipitationSubCauseCode,
  slowVehicle SlowVehicleSubCauseCode,
  stationaryVehicle StationaryVehicleSubCauseCode,
  humanProblem HumanProblemSubCauseCode,
  emergencyVehicleApproachingIndication EmergencyVehicleApproachingIndicationSubCauseCode,
  hazardousLocation HazardousLocationSubCauseCode,
  collisionRiskWarning CollisionRiskWarningSubCauseCode,
  signalViolationWarning SignalViolationWarningSubCauseCode,
  emergencyVehicleApproaching EmergencyVehicleApproachingSubCauseCode,
  hazardousLocation-DangerousCurve HazardousLocation-DangerousCurveSubCauseCode,
  hazardousLocation-SurfaceCondition HazardousLocation-SurfaceConditionSubCauseCode,
  hazardousLocation-ObstacleOnTheRoad HazardousLocation-ObstacleOnTheRoadSubCauseCode,
  hazardousLocation-AnimalOnTheRoadCurve HazardousLocation-AnimalOnTheRoadSubCauseCode,
  collisionRisk CollisionRiskSubCauseCode,
  signalViolation SignalViolationSubCauseCode,
  emergencyElectronicBrakeLights EmergencyElectronicBrakeLightsSubCauseCode,
  rescueAndRecoveryWorkInProgress RescueAndRecoveryWorkInProgressSubCauseCode,
  dangerousEndOfQueue DangerousEndOfQueueSubCauseCode,
  dangerousDriving DangerousDrivingSubCauseCode,
  vehicleBreakdown VehicleBreakdownSubCauseCode,
  postCrash PostCrashSubCauseCode
  ...
 }

 TrafficConditionSubCauseCode ::= INTEGER {unknown(0), increasedVolumeOfTraffic(1) }  (0..1, ...)
 TrafficConditionSubCauseCode ::= INTEGER {noSpecificInformationAvailable(0), increasedVolumeOfTraffic(1), trafficJamSlowlyIncreasing(2), trafficJamIncreasing(3), trafficJamStronglyIncreasing(4), trafficStationary(5), trafficJamSlightlyDecreasing(6), trafficJamDecreasing(7), trafficJamStronglyDecreasing(8) }  (0..8, ...)
 
 AccidentSubCauseCode ::= INTEGER {noSpecificInformationAvailable(0), multiVehicleAccident(1), heavyAccident(2), accidentInvolvingLorry(3), accidentInvolvingBus(4), accidentInvolvingHazardousMaterials(5), accidentOnOppositeLane(6), unsecuredAccident(7), assistanceRequested(8) } (0..8, ...)
 
 RoadworksSubCauseCode ::= INTEGER {noSpecificInformationAvailable(0), majorRoadworks(1), roadMarkingWork(2), slowMovingRoadMaintenance(3) }  (0..3, ...)
 
 HumanPresenceOnTheRoadSubCauseCode ::= INTEGER {noSpecificInformationAvailable(0), childrenOnRoadway(1), cyclistOnRoadway(2), motorcyclistOnRoadway(3) }  (0..3, ...)
 
 WrongWayDrivingSubCauseCode ::= INTEGER {noSpecificInformationAvailable(0), wrongLane(1), wrongDirection(2) }  (0..2, ...)
 
 AccidentSubCauseCode ::= INTEGER {unknown(0), multiVehicleAccident(1), heavyAccident(2), accidentInvolvingLorry(3), accidentInvolvingBus(4), accidentInvolvingHazardousMaterials(5), accidentOnOppositeLane(6), unsecuredAccident(7), assistanceRequested(8) } (0..8, ...)
 AdverseWeatherCondition-ExtremeWeatherConditionSubCauseCode ::= INTEGER {noSpecificInformationAvailable(0), strongWinds(1), damagingHail(2), hurricane(3), thunderstorm(4), tornado(5), blizzard(6) }  (0..6, ...)
 
 RoadworksSubCauseCode ::= INTEGER {unknown(0), majorRoadworks(1), roadMarkingWork(2), slowMovingRoadMaintenance(3) }  (0..3, ...)
 AdverseWeatherCondition-AdhesionSubCauseCode ::= INTEGER {noSpecificInformationAvailable(0), heavyFrostOnRoad(1), fuelOnRoad(2), mudOnRoad(3), snowOnRoad(4), iceOnRoad(5), blackIceOnRoad(6), oilOnRoad(7), looseChippings(8), instantBlackIce(9), roadsSalted(10) }  (0..10, ...)
 
 PeopleOnTheRoadSubCauseCode ::= INTEGER {unknown(0), childrenOnRoadway(1), cyclistOnRoadway(2), motorcyclistOnRoadway(3) }  (0..3, ...)
 AdverseWeatherCondition-VisibilitySubCauseCode ::= INTEGER {noSpecificInformationAvailable(0), fog(1), smoke(2), heavySnowfall(3), heavyRain(4), heavyHail(5), lowSunGlare(6), sandstorms(7), swarmsOfInsects(8) }  (0..8, ...)
 
 AdverseWeatherConditionIndicationSubCauseCode ::= INTEGER {unknown(0), strongWinds(1), damagingHail(2), hurricane(3), thunderstorm(4), tornado(5), blizzard(6) }  (0..6, ...)
 AdverseWeatherCondition-PrecipitationSubCauseCode ::= INTEGER {noSpecificInformationAvailable(0), heavyRain(1), heavySnowfall(2), softHail(3) }  (0..3, ...)
 
 VisibilityReducedSubCauseCode ::= INTEGER {unknown(0), fog(1), smoke(2), heavySnowfall(3), heavyRain(4), heavyHail(5), lowSunGlare(6), sandstorms(7), swarmsOfInsects(8) }  (0..8, ...)
 SlowVehicleSubCauseCode ::= INTEGER {noSpecificInformationAvailable(0), maintenanceVehicle(1), vehiclesSlowingToLookAtAccident(2), abnormalLoad(3), abnormalWideLoad(4), convoy(5), snowplough(6), deicing(7), saltingVehicles(8) }  (0..8, ...)
 
 PrecipitationSubCauseCode ::= INTEGER {unknown(0), heavyRain(1), heavySnowfall(2), heavyHail(3) }  (0..3, ...)
 StationaryVehicleSubCauseCode ::= INTEGER {noSpecificInformationAvailable(0),  humanProblem(1), vehicleBreakdown(2), postCrash(3), publicTransportStop(4), carryingDangerousGoods(5) }  (0..5, ...)
 
 SlowVehicleWarningSubCauseCode ::= INTEGER {unknown(0), maintenanceVehicle(1), vehiclesSlowingToLookAtAccident(2), abnormalLoad(3), abnormalWideLoad(4), convoy(5), snowplough(6), deicing(7), saltingVehicles(8) }  (0..8, ...)
 HumanProblemSubCauseCode ::= INTEGER { noSpecificInformationAvailable(0), unknownHumanProblem(1), glycemiaProblem(2), heartProblem(3) } (0..3, ...)
 
 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, ...)
 EmergencyVehicleApproachingSubCauseCode ::= INTEGER {noSpecificInformationAvailable(0), emergencyVehicleApproaching(1), prioritizedVehicleApproaching(2) }  (0..2, ...)
 
 HumanProblemSubCauseCode ::= INTEGER { unknown(0), unknownHumanProblem(1), glycemiaProblem(2), heartProblem(3) } (0..3, ...)
 HazardousLocation-DangerousCurveSubCauseCode ::= INTEGER {noSpecificInformationAvailable(0), dangerousLeftTurnCurve(1), dangerousRightTurnCurve(2), multipleCurvesStartingWithUnknownTurningDirection(3), multipleCurvesStartingWithLeftTurn(4), multipleCurvesStartingWithRightTurn(5) }  (0..5, ...)
 
 EmergencyVehicleApproachingIndicationSubCauseCode ::= INTEGER {unknown(0), emergencyVehicleApproaching(1), prioritizedVehicleApproaching(2) }  (0..2, ...)
 HazardousLocation-SurfaceConditionSubCauseCode ::= INTEGER {noSpecificInformationAvailable(0), rockfalls(1), earthquakeDamage(2), sewerCollapse(3), subsidence(4), snowDrifts(5), stormDamage(6), burstPipe(7), volcanoEruption(8), fallingIce(9) }  (0..9, ...)
 
 HazardousLocationSubCauseCode ::= INTEGER {unknown(0), dangerousCurve(1) }  (0..1, ...)
 HazardousLocation-ObstacleOnTheRoadSubCauseCode ::= INTEGER {noSpecificInformationAvailable(0), shedLoad(1), partsOfVehicles(2), partsOfTyres(3), bigObjects(4), fallenTrees(5), hubCaps(6), waitingVehicles(7) }  (0..7, ...)
 
 CollisionRiskWarningSubCauseCode ::= INTEGER {unknown(0), longitudinalCollisionRisk(1), crossingCollisionRisk(2), lateralCollisionRisk(3), vulnerableRoadUser(4) }  (0..4, ...)
 HazardousLocation-AnimalOnTheRoadSubCauseCode ::= INTEGER {noSpecificInformationAvailable(0), wildAnimals(1), herdOfAnimals(2), smallAnimals(3), largeAnimals(4) }  (0..4, ...)

 SignalViolationWarningSubCauseCode ::= INTEGER {unknown(0), stopSignViolation(1), trafficLightViolation(2), turningRegulationViolation(3) }  (0..3, ...)
 CollisionRiskSubCauseCode ::= INTEGER {noSpecificInformationAvailable(0), longitudinalCollisionRisk(1), crossingCollisionRisk(2), lateralCollisionRisk(3), vulnerableRoadUser(4) }  (0..4, ...)
 
 EmergencyElectronicBrakeLightsSubCauseCode ::= INTEGER {unknown(0), hardBrakingVehicle(1) }  (0..1, ...)
 SignalViolationSubCauseCode ::= INTEGER {noSpecificInformationAvailable(0), stopSignViolation(1), trafficLightViolation(2), turningRegulationViolation(3) }  (0..3, ...)
 
 EmergencyElectronicBrakeLightsSubCauseCode ::= INTEGER {noSpecificInformationAvailable(0), hardBrakingVehicle(1) }  (0..1, ...)

Curvature ::= INTEGER{ straight(0), reciprocalOf1MeterRadiusToRight(1), reciprocalOf1MeterRadiusToLeft(-1) } (-30000..30000)
 RescueAndRecoveryWorkInProgressSubCauseCode ::= INTEGER {noSpecificInformationAvailable(0), emergencyVehicles(1), rescueHelicopterLanding(2), policeActivityOngoing(3), medicalEmergencyOngoing(4), childAbductionInProgress(5) }  (0..5, ...)

 DangerousEndOfQueueSubCauseCode ::= INTEGER {noSpecificInformationAvailable(0), suddenEndOfQueue(1), queueOverHill(2), queueAroundBend(3), queueInTunnel(4) }  (0..4, ...)

 DangerousDrivingSubCauseCode ::= INTEGER {noSpecificInformationAvailable(0), emergencyElectronicBrake(1), preCrashSystemActivated(2), espActivated(3), absActivated(4), aebActivated(5), brakeWarningActivated(6), collisionRiskWarningActivated(7) }  (0..7, ...)
 
 VehicleBreakdownSubCauseCode ::= INTEGER {noSpecificInformationAvailable(0), lackOfFuel (1), lackOfBatteryPower (2), engineProblem(3), transmissionProblem(4), engineCoolingProblem(5), brakingSystemProblem(6), steeringProblem(7), tyrePuncture(8)} (0..8, ...)
 
 PostCrashSubCauseCode ::= INTEGER {noSpecificInformationAvailable(0), accidentWithoutECallTriggered (1), accidentWithECallManuallyTriggered (2), accidentWithECallAutomaticallyTriggered (3), accidentWithECallTriggeredWithoutAccessToCellularNetwork(4)} (0..4, ...)


Curvature ::= SEQUENCE {
 curvatureValue CurvatureValue,
 curvatureConfidence CurvatureConfidence
}
 
CurvatureValue ::= INTEGER{ straight(0), reciprocalOf1MeterRadiusToRight(1), reciprocalOf1MeterRadiusToLeft(-1) } (-30000..30000)

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)
Direction ::= SEQUENCE {
 directionValue DirectionValue,
 directionConfidence DirectionConfidence
}

DirectionValue ::= INTEGER {north(0), east(900), south(1800), west(2700)} (0..3599)

DirectionConfidence ::= INTEGER { withinZeroPointOneDegree(1), withinOneDegree(10), notValid(127) } (1..127)

ElevationConfidence ::= INTEGER { withinOneMeter(1), notValid(127) } (1..127)
LaneCount ::= SEQUENCE {
 laneNumber LaneNumber,
 laneNumberConfidence LaneNumberConfidence
}


LaneNumber ::= INTEGER { offTheRoad(0) } (0..15)

@@ -154,7 +203,18 @@ DriveDirection ::= ENUMERATED { forward (0), backward (1) }

EmbarkationStatus ::= BOOLEAN

LongitudinalAcceleration ::= INTEGER { pointOneMeterPerSecSquared(1), notValid (160)} (-160 .. 160)
LongitudinalAcceleration ::= SEQUENCE {
 longitudinalAccelerationValue LongitudinalAccelerationValue,
 longitudinalAccelerationConfidence LongitudinalAccelerationConfidence
}

LongitudinalAccelerationValue ::= INTEGER { pointOneMeterPerSecSquaredForward(1), pointOneMeterPerSecSquaredBackward(-1)} (-160 .. 160)

LongitudinalAccelerationConfidence ::= INTEGER { pointOneMeterPerSecSquared(1), outOfRange(101), notValid(102)} (0 .. 102)

LateralAcceleration ::= INTEGER { pointOneMeterPerSecSquaredToRight(1), pointOneMeterPerSecSquaredToLeft(-1)} (-160 .. 160)

VerticalAcceleration ::= INTEGER { eightCentimeterPerSecSquaredUp(1), eightCentimeterPerSecSquaredDown(-1)} (-126 .. 127)

StationType ::= INTEGER { unknown(0), pedestrian(1), cyclist(2), moped(3), motorcycle(4), passengerCar(5), bus(6), 
lightTruck(7), heavyTruck(8), trailer(9), specialVehicles(10), tram(11), roadSideUnit(15) } (0..255)
@@ -199,7 +259,7 @@ DangerousGoodsExtended ::= SEQUENCE {
   unNumber            INTEGER (0..9999),
   emergencyActionCode IA5String OPTIONAL,
   phoneNumber         IA5String OPTIONAL,
   companyName         IA5String OPTIONAL,
   companyName         UTF8String OPTIONAL,
   elevatedTemperature BOOLEAN,
   tunnelsRestricted   BOOLEAN,
   limitedQuantity     BOOLEAN
@@ -251,7 +311,25 @@ PositionOfOccupants ::= BIT STRING {
 tier3MidOccupied     (8)
}

VehicleLength  ::= INTEGER { tenCentimeters(1), outOfRange(1022), unknown(1023) }  (1..1023)
PositioningSolutionType ::= ENUMERATED { noPositioningSolution(0), SGNSS(1), DGNSS(2), SGNSSplusDR(3), DGNSSplusDR(4), DR(5), ... }

VehicleIdentification ::= SEQUENCE {
 wMInumber WMInumber,
 vDS VDS
}
 
WMInumber ::= IA5String (SIZE(1..3))

VDS ::= IA5String (SIZE(6))

VehicleStorageType::= BIT STRING { hydrogenStorage(0), electricEnergyStorage(1), liquidPropaneGas(2), compressedNaturalGas(3), diesel(4), gasoline(5), ammonia(6) } (SIZE(6))

VehicleLength ::= SEQUENCE {
 vehicleLengthValue VehicleLengthValue,
 VehicleLengthConfidenceIndication VehicleLengthConfidenceIndication
}

VehicleLengthValue  ::= INTEGER { tenCentimeters(1), outOfRange(1022), unknown(1023) }  (1..1023)

VehicleLengthConfidenceIndication ::= ENUMERATED { noTrailerPresent(0), trailerPresentWithUnknownLength(1), 
trailerPresenceIsUnknown(2) }
@@ -277,6 +355,8 @@ highway(5),
reserved(6), 
unknown(7) }

SteeringWheelAngle  ::= INTEGER { straight(0), onePointFiveDegreesToRight(1), onePointFiveDegreesToLeft(-1), 189degreesAndBeyondToRight(126), 189degreesAndBeyondToLeft(-126), unavailable(127) }  (-126..127)

TimestampUtc ::= TIME (SETTINGS "Basic=Date-Time Date=YMD Year=Basic Time=HMSF3 Local-or-UTC=Z")

VehicleRole ::= ENUMERATED { default(0), 
+15 −5
Original line number Diff line number Diff line
@@ -9,7 +9,7 @@ DEFINITIONS AUTOMATIC TAGS ::=
BEGIN

IMPORTS 
   ItsPduHeader, CauseCode, Percentage, StationID, TimestampUtc, Movement,InformationQuality, ReferencePosition, DangerousGoodsExtended, Direction, DirectionConfidence, LaneNumber, LaneNumberConfidence, StationID, PathHistory, RoadClass, HeightLonCarr, PosLonCarr, PosPillar, PosCentMass, WheelBaseVehicle, TurningRadius, PosFrontAx, PositionOfOccupants, Temperature, VehicleMass  FROM ITS-Container {
   ItsPduHeader, CauseCode, Percentage, StationID, TimestampUtc, Movement,InformationQuality, ReferencePosition, DangerousGoodsExtended, Direction, LaneCount, PathHistory, RoadClass, HeightLonCarr, PosLonCarr, PosPillar, PosCentMass, PositioningSolutionType, StationType, WheelBaseVehicle, TurningRadius, PosFrontAx, PositionOfOccupants, Temperature, VehicleMass, VehicleIdentification, VehicleStorageType FROM ITS-Container {
 itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) en (302637) cc (0) version (1) 
};

@@ -50,7 +50,6 @@ LocationContainer ::= SEQUENCE {
	eventPosition ReferencePosition,
	eventSpeed Movement OPTIONAL,
	eventPositionHeading Direction OPTIONAL,
	eventPositionHeadingConfidence DirectionConfidence OPTIONAL,
	traces Traces,
	roadClass RoadClass OPTIONAL,
	relevanceDistance RelevanceDistance,
@@ -87,15 +86,26 @@ LaneSets ::= SEQUENCE OF LaneNumber

LaneSets ::= SEQUENCE OF StationType

StationaryVehicleContainer ::= SEQUENCE {
 stationType StationType,
 humanProblem HumanProblemSubCauseCode OPTIONAL,
 vehicleBreakDown VehicleBreakdownSubCauseCode OPTIONAL, 
 postCrash PostCrashSubCauseCode OPTIONAL,
 carryingDangerousGoods DangerousGoodsExtended OPTIONAL,
 numberOfOccupants INTEGER(0..127) OPTIONAL,
 vehicleIdentification VehicleIdentification OPTIONAL,
 vehicleStorageType VehicleStorageType OPTIONAL
}


AlacarteContainer ::= SEQUENCE {
	laneNumber LaneNumber OPTIONAL,
	laneNumberConfidence LaneNumberConfidence OPTIONAL,
	laneCount LaneNumber OPTIONAL,
	impactReduction	ImpactReductionContainer OPTIONAL,
	externalTemperature Temperature OPTIONAL,
	roadWorks RoadWorksContainer OPTIONAL,
	positioningSolution PositioningSolutionType OPTIONAL,
	dangerousGoodsExtended DangerousGoodsExtended OPTIONAL
	dangerousGoodsExtended DangerousGoodsExtended OPTIONAL,
	stationaryVehicle StationaryVehicleContainer OPTIONAL
	...
}