{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "CORE Lemma Record",
  "description": "A single lemma entry in a CORE language pack. Lemmas are the stable lexical unit — not tokens, not surface forms.",
  "type": "object",
  "required": ["lemma_id", "language", "script_form", "pos", "morph_class", "semantic_family"],
  "properties": {
    "lemma_id": {
      "type": "string",
      "description": "Unique identifier in the form '<lang>:<canonical_form>'. Example: 'he:dabar'."
    },
    "language": {
      "type": "string",
      "enum": ["en", "he", "el"],
      "description": "ISO 639-1 code for the pack language."
    },
    "script_form": {
      "type": "string",
      "description": "The lemma in its native script. Hebrew right-to-left; Greek polytonic or monotonic as appropriate."
    },
    "transliteration": {
      "type": ["string", "null"],
      "description": "SBL-style transliteration for Hebrew and Greek. Null for English."
    },
    "gloss_seed": {
      "type": ["string", "null"],
      "description": "A single-word English gloss for orientation only. Not a definition. Not used in semantic lift."
    },
    "pos": {
      "type": "string",
      "description": "Part of speech. Examples: verb, noun, adjective, particle, conjunction, preposition."
    },
    "morph_class": {
      "type": "string",
      "description": "Morphological class within the pack. Hebrew: qal, niphal, etc. Greek: thematic, athematic, etc. English: regular, irregular, copular, etc."
    },
    "semantic_family": {
      "type": "string",
      "description": "The broad semantic domain this lemma inhabits. Must correspond to a recognized CORE field primitive family."
    },
    "field_hooks": {
      "type": "array",
      "items": { "type": "string" },
      "description": "List of CORE field primitive targets this lemma can lift into. Must be non-empty for any lemma that participates in semantic lift."
    },
    "readback_priority": {
      "type": ["number", "integer"],
      "description": "Relative priority when this lemma is a candidate during readback disambiguation. Higher is preferred."
    }
  },
  "additionalProperties": false
}
