Skip to content

schema: add DENM JSON schema v2.3.0#531

Merged
mathieu1fb merged 3 commits into
Orange-OpenSource:masterfrom
raphael-ram:add-denm-schema
May 28, 2026
Merged

schema: add DENM JSON schema v2.3.0#531
mathieu1fb merged 3 commits into
Orange-OpenSource:masterfrom
raphael-ram:add-denm-schema

Conversation

@raphael-ram
Copy link
Copy Markdown
Contributor

@raphael-ram raphael-ram commented May 26, 2026

Description

Adds the DENM (Decentralized Environmental Notification Message) JSON Schema v2.3.0 at schema/denm/denm_schema_2-3-0.json.

This version extends the alacarte optional container to follow the ETSI spec structure, introducing a proper stationary_vehicle_container with all fields defined in StationaryVehicleContainer.

Changes

  • Add schema/denm/denm_schema_2-3-0.json — full JSON Schema for DENM messages (v2.3.0)
  • Extend alacarte container with:
    • lane_position — transversal position on the carriageway
    • stationary_vehicle_container — nested container following StationaryVehicleContainer (ETSI EN 302 637-3), with:
      • stationary_since — duration the vehicle has been stationary
      • stationary_cause — main and sub cause code
      • carrying_dangerous_goods — dangerous goods type and UN number
      • number_of_occupants — number of occupants in the vehicle
      • vehicle_identification — WMI code and VDS
      • energy_storage_type — energy storage bitmask

All fields are optional, consistent with the ETSI ASN.1 definition.

@mathieu1fb mathieu1fb self-requested a review May 26, 2026 08:24
@mathieu1fb mathieu1fb added the Schema JSON schema files label May 26, 2026
@mathieu1fb
Copy link
Copy Markdown
Collaborator

mathieu1fb commented May 26, 2026

After reviewing DENM spec, I would prefer that we follow the same structure : the AlacarteContainer can optionally contain aStationaryVehicleContainer which has more fields than currently present in your update.

AlacarteContainer ::= SEQUENCE {
    lanePosition        LanePosition OPTIONAL,
    impactReduction     ImpactReductionContainer OPTIONAL,
    externalTemperature Temperature OPTIONAL,
    roadWorks           RoadWorksContainerExtended OPTIONAL,
    positioningSolution PositioningSolutionType OPTIONAL,
    stationaryVehicle   StationaryVehicleContainer OPTIONAL,
    ...,
[[  roadConfiguration 	RoadConfigurationContainer OPTIONAL,
    preCrash            PreCrashContainer OPTIONAL ]]
}
StationaryVehicleContainer ::= SEQUENCE {
    stationarySince        StationarySince OPTIONAL, 
    stationaryCause        CauseCodeV2 OPTIONAL,
    carryingDangerousGoods DangerousGoodsExtended OPTIONAL,
    numberOfOccupants      NumberOfOccupants OPTIONAL,
    vehicleIdentification  VehicleIdentification OPTIONAL,
    energyStorageType      EnergyStorageType OPTIONAL
}

We do not need to specify everything present in the AlacarteContainer for now as all fields are optional, maybe the LanePosition, StationaryVehicleContainer and RoadWorksContainerExtended would be enough.

RoadWorksContainerExtended ::= SEQUENCE {
    lightBarSirenInUse      LightBarSirenInUse OPTIONAL,
    closedLanes             ClosedLanes OPTIONAL,
    restriction             RestrictedTypes OPTIONAL,
    speedLimit              SpeedLimit OPTIONAL,
    incidentIndication      CauseCodeV2 OPTIONAL,
    recommendedPath         ItineraryPath OPTIONAL,
    startingPointSpeedLimit DeltaReferencePosition OPTIONAL,
    trafficFlowRule         TrafficRule OPTIONAL,
    referenceDenms          ActionIdList OPTIONAL
}

Comment thread schema/denm/denm_schema_2-3-0.json
Comment thread schema/denm/denm_schema_2-3-0.json
Signed-off-by: Raphael Ramanantsoa <raphael.ramanantsoa@orange.com>
Signed-off-by: Raphael Ramanantsoa <raphael.ramanantsoa@orange.com>
Signed-off-by: Raphael Ramanantsoa <raphael.ramanantsoa@orange.com>
Copy link
Copy Markdown
Collaborator

@mathieu1fb mathieu1fb left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the update, approved!

@mathieu1fb mathieu1fb merged commit ec3f98c into Orange-OpenSource:master May 28, 2026
119 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Schema JSON schema files

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants