{
  "$schema": "http://json-schema.org/draft-07/schema#",
  "$id": "https://example.com/schemas/vehicle-charging.json",
  "type": "object",
  "title": "Vehicle Charging",
  "description": "Schema for vehicle charging data",
  "required": [
    "eventTimestamp",
    "traceId",
    "sensorId",
    "messageNumber",
    "isConnected",
    "isCharging",
    "chargingEffect"
  ],
  "properties": {
    "eventTimestamp": {
      "type": "string",
      "format": "date-time",
      "description": "ISO 8601 timestamp of when the measurement was taken"
    },
    "traceId": {
      "type": "string",
      "description": "Unique identifier for tracing this message"
    },
    "sensorId": {
      "type": "string",
      "description": "Unique identifier for the sensor. Typically the serial number (S/N) from the sensor."
    },
    "messageNumber": {
      "type": "integer",
      "description": "Sequence number, increased by one for each new message."
    },
    "isConnected": {
      "type": "boolean",
      "description": "Indicates whether the vehicle is connected to a charging point"
    },
    "isCharging": {
      "type": "boolean",
      "description": "Indicates whether the vehicle is currently charging"
    },
    "chargingEffect": {
      "type": "number",
      "description": "The current charging effect in kilowatts (kW)"
    }
  },
  "additionalProperties": true
}