{
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "$id": "alphanume.news/item/v1",
 "title": "Alphanume News item",
 "type": "object",
 "required": [
  "schema",
  "id",
  "guid",
  "kind",
  "slug",
  "status",
  "version",
  "desk",
  "type",
  "headline",
  "published_at",
  "updated_at",
  "corrections"
 ],
 "properties": {
  "schema": {
   "const": "alphanume.news/item/v1"
  },
  "id": {
   "type": "string",
   "pattern": "^[sl]_[a-z2-7]{12}$"
  },
  "guid": {
   "type": "string",
   "pattern": "^tag:alphanume\\.com,2026:news:[sl]_[a-z2-7]{12}$"
  },
  "kind": {
   "enum": [
    "story",
    "ledger"
   ]
  },
  "slug": {
   "type": "string"
  },
  "status": {
   "enum": [
    "published",
    "corrected",
    "retracted"
   ]
  },
  "version": {
   "type": "integer",
   "minimum": 1
  },
  "url": {
   "type": "string"
  },
  "api_url": {
   "type": "string"
  },
  "desk": {
   "enum": [
    "registry",
    "activism",
    "regulatory"
   ]
  },
  "desk_label": {
   "type": "string"
  },
  "type": {
   "type": "string"
  },
  "headline": {
   "type": "string"
  },
  "dek": {
   "type": [
    "string",
    "null"
   ]
  },
  "body": {
   "type": "object",
   "required": [
    "html",
    "text"
   ],
   "properties": {
    "html": {
     "type": "string"
    },
    "text": {
     "type": "string"
    }
   }
  },
  "record_date": {
   "type": [
    "string",
    "null"
   ]
  },
  "published_at": {
   "type": "string"
  },
  "updated_at": {
   "type": "string"
  },
  "legal": {
   "type": "object",
   "properties": {
    "stage": {
     "type": [
      "string",
      "null"
     ]
    },
    "allegation": {
     "type": "boolean"
    }
   }
  },
  "entities": {
   "type": "array",
   "items": {
    "type": "object",
    "required": [
     "name",
     "role"
    ]
   }
  },
  "receipts": {
   "type": "array",
   "items": {
    "type": "object",
    "required": [
     "id",
     "type",
     "url"
    ]
   }
  },
  "facts": {
   "type": "array",
   "items": {
    "type": "object",
    "required": [
     "key",
     "text",
     "source",
     "receipt"
    ]
   }
  },
  "claims": {
   "type": "array",
   "items": {
    "type": "object",
    "required": [
     "kind"
    ]
   }
  },
  "fields": {
   "type": "array",
   "items": {
    "type": "object",
    "required": [
     "key",
     "label",
     "text",
     "source"
    ]
   }
  },
  "derived": {
   "type": "object"
  },
  "corrections": {
   "type": "array",
   "items": {
    "type": "object",
    "required": [
     "version",
     "kind",
     "text",
     "date"
    ]
   }
  },
  "provenance": {
   "type": "object"
  },
  "retraction": {
   "type": "object",
   "required": [
    "text",
    "date"
   ]
  },
  "contact": {
   "type": "string"
  }
 },
 "additionalProperties": false
}
