{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://openeik.org/schemas/0.1/proposed/framingLayout/roof-opening-header.schema.json",
  "$comment": "Proposed for OpenEik 0.2: Part IV, 7.4.13, rule 10. Written by hand, not generated. In 0.1, a roof opening's header is a member the element schema does not know, kept; a validator holds it to this schema only when asked for the proposal (@openeik/tools: proposals [\"framingLayout\"]).",
  "title": "A roof opening's header",
  "description": "The header across a roof opening that a layout of rafters frames (Part IV, 7.4.13, rule 10): none, \"none\", where a modelled beam carries the opening; or one piece of its own section, width up the slope and depth square to it from the rafters' top, a glulam or a laminated veneer header for a wide opening. Where it gives none, the header is the layout's openingFraming.headerPlies plies of its family's Width by its ChordDepth.",
  "anyOf": [
    { "const": "none" },
    {
      "type": "object",
      "properties": {
        "width": { "type": "number", "minimum": 45, "maximum": 600 },
        "depth": { "type": "number", "minimum": 90, "maximum": 2000 }
      },
      "required": ["width", "depth"],
      "additionalProperties": false
    }
  ]
}
