{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://www.uamkt.com/open-source/drone-eol-record/deol-record.schema.json",
  "title": "Drone End-of-Life Assessment Record",
  "description": "Stage 0 reference record. Not a certificate, administrative decision, or disposal proof.",
  "type": "object",
  "additionalProperties": false,
  "required": ["schemaVersion", "recordType", "createdAt", "aircraft", "reportingAssessment", "riskScreening"],
  "properties": {
    "schemaVersion": { "const": "0.1.0-draft" },
    "recordType": { "const": "assessment-only" },
    "createdAt": { "type": "string", "format": "date-time" },
    "aircraft": {
      "type": "object",
      "additionalProperties": false,
      "required": ["manufacturer", "model", "businessUse", "maximumTakeoffMassKg", "previousReportStatus"],
      "properties": {
        "manufacturer": { "type": ["string", "null"] },
        "model": { "type": ["string", "null"] },
        "serialNumber": { "type": ["string", "null"] },
        "businessUse": { "enum": ["yes", "no", "unknown"] },
        "maximumTakeoffMassKg": { "type": ["number", "null"], "minimum": 0 },
        "previousReportStatus": { "enum": ["yes", "no", "unknown"] },
        "reportNumber": { "type": ["string", "null"] }
      }
    },
    "reportingAssessment": {
      "type": "object",
      "additionalProperties": false,
      "required": ["resultCode", "administrativeStatus"],
      "properties": {
        "resultCode": { "enum": ["A", "B", "C", "D"] },
        "administrativeStatus": { "const": "not-determined" },
        "officialPortal": { "type": "string", "format": "uri" },
        "sourceCheckedAt": { "type": ["string", "null"], "format": "date" }
      }
    },
    "riskScreening": {
      "type": "object",
      "additionalProperties": false,
      "required": ["batteryRemoved", "batteryCondition", "dataRisk", "contaminationHistory"],
      "properties": {
        "batteryRemoved": { "enum": ["yes", "no", "unknown"] },
        "batteryCondition": { "enum": ["normal", "damaged", "swollen", "leaking", "unknown", "not-applicable"] },
        "dataRisk": { "enum": ["present", "cleared", "unknown", "not-applicable"] },
        "contaminationHistory": { "enum": ["present", "none-reported", "unknown"] },
        "notes": { "type": ["string", "null"], "maxLength": 2000 }
      }
    },
    "originalEvidence": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": false,
        "required": ["issuerType", "documentType", "uri"],
        "properties": {
          "issuerType": { "enum": ["competent-authority", "licensed-operator", "owner", "other"] },
          "documentType": { "type": "string" },
          "uri": { "type": "string", "format": "uri" },
          "issuedAt": { "type": ["string", "null"], "format": "date" }
        }
      }
    },
    "disclaimer": {
      "const": "This record is not a certificate, deregistration confirmation, disposal proof, transport permit, or regulatory decision."
    }
  }
}
