Skip to content

Data Models

The canonical VDV 463 types live in src/vdv_463/message.py, src/vdv_463/models.py, and src/vdv_463/errors.py.

Envelope Model

Model Purpose
MessageStructure WebSocket envelope containing messageType, source, presystemId, timeStamp, messageId, messageAction, and payload.
MessageType Enum for Request, Confirmation, and Error.
MessageAction Enum for BootNotification, ProvideChargingRequests, ProvideChargingInformation, and Error.
ErrorResponse Error payload returned when a message cannot be validated or handled.

Payload Families

Payload family Purpose
BootNotificationRequest / BootNotificationResponse Connection/bootstrap handshake between the presystem and the CMS.
ProvideChargingRequestsRequest / ProvideChargingRequestsResponse Upstream scheduling input, including charging requests, priorities, departure targets, and optional preconditioning data.
ProvideChargingInformationRequest / ProvideChargingInformationResponse CMS-originated depot, station, charging point, vehicle, and charging-process telemetry.

Modelling Notes

  • VdvBaseModel forbids unknown fields and excludes None values during serialization.
  • ChargingRequestData normalizes maxTargetSoc so it cannot end up below minTargetSoc.
  • The nested model set covers depot topology, charging hardware state, charging-process state, vehicle state, traction battery data, faults, and prediction data.
  • The generated schema artifacts describe named JSON objects, not positional arrays.

Published Artifacts