{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://opengdd.org/schema/core/v0.8/collection.schema.json",
  "title": "OpenGDD v0.7 drawer label (_collection.json)",
  "type": "object",
  "additionalProperties": false,
  "properties": {
    "record": {
      "type": "object",
      "additionalProperties": {
        "type": "object"
      },
      "$comment": "The optional record schema uses the closed field grammar: type (number, integer, string, grid, link, list), required or when (row domain), options, pattern, unique, description; link adds to/many/loops/mirrored_by and list adds recursive of. Grammar, target, existence, loop, and mirror checks are validator-level; with a schema present every record is validated against it.",
      "description": "Optional record schema; field name to field shape",
      "patternProperties": {
        "^_": {}
      }
    }
  },
  "$comment": "The label is optional and appears only when it has something to say. record is its one field; a drawer with no label holds free-form designer data.",
  "patternProperties": {
    "^_": {}
  }
}
