{
  "$defs": {
    "accent": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "orient": {
          "$ref": "#/$defs/orientation"
        }
      },
      "type": "object",
      "unevaluatedProperties": false
    },
    "accidental-display": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "enclosure": {
          "$ref": "#/$defs/accidental-enclosure"
        },
        "force": {
          "type": "boolean"
        },
        "show": {
          "type": "boolean"
        }
      },
      "required": [
        "show"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "accidental-enclosure": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "symbol": {
          "$ref": "#/$defs/accidental-enclosure-symbol"
        }
      },
      "required": [
        "symbol"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "accidental-enclosure-symbol": {
      "enum": [
        "parentheses",
        "brackets"
      ],
      "type": "string"
    },
    "alter": {
      "type": "integer"
    },
    "arpeggio": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "arrow": {
          "type": "boolean"
        },
        "direction": {
          "$ref": "#/$defs/up-down-auto"
        },
        "position": {
          "$ref": "#/$defs/rhythmic-position"
        },
        "span": {
          "$ref": "#/$defs/id-pair"
        }
      },
      "required": [
        "position",
        "span"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "arpeggio-list": {
      "items": {
        "$ref": "#/$defs/arpeggio"
      },
      "type": "array"
    },
    "barline": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "type": {
          "$ref": "#/$defs/barline-type"
        }
      },
      "required": [
        "type"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "barline-type": {
      "enum": [
        "regular",
        "dotted",
        "dashed",
        "heavy",
        "double",
        "final",
        "heavyLight",
        "heavyHeavy",
        "tick",
        "short",
        "noBarline"
      ],
      "type": "string"
    },
    "beam": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "beams": {
          "$ref": "#/$defs/beam-list"
        },
        "direction": {
          "$ref": "#/$defs/beam-hook-direction"
        },
        "events": {
          "$ref": "#/$defs/id-list"
        }
      },
      "required": [
        "events"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "beam-hook-direction": {
      "enum": [
        "left",
        "right",
        "auto"
      ],
      "type": "string"
    },
    "beam-list": {
      "items": {
        "$ref": "#/$defs/beam"
      },
      "type": "array"
    },
    "bow-direction": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "direction": {
          "$ref": "#/$defs/up-down"
        },
        "orient": {
          "$ref": "#/$defs/orientation"
        }
      },
      "required": [
        "direction"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "bpm": {
      "type": "integer"
    },
    "breath-mark": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "orient": {
          "$ref": "#/$defs/orientation"
        },
        "symbol": {
          "$ref": "#/$defs/breath-mark-symbol"
        }
      },
      "type": "object",
      "unevaluatedProperties": false
    },
    "breath-mark-symbol": {
      "type": "string"
    },
    "clef": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "color": {
          "$ref": "#/$defs/simple-color"
        },
        "glyph": {
          "$ref": "#/$defs/smufl-glyph"
        },
        "octave": {
          "$ref": "#/$defs/ottava-amount-or-zero"
        },
        "showOctave": {
          "type": "boolean"
        },
        "sign": {
          "$ref": "#/$defs/clef-sign"
        },
        "staffPosition": {
          "$ref": "#/$defs/staff-position"
        }
      },
      "required": [
        "sign",
        "staffPosition"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "clef-sign": {
      "enum": [
        "C",
        "F",
        "G"
      ],
      "type": "string"
    },
    "color": {
      "type": "string"
    },
    "dynamic": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "glyph": {
          "$ref": "#/$defs/smufl-glyph"
        },
        "position": {
          "$ref": "#/$defs/rhythmic-position"
        },
        "staff": {
          "$ref": "#/$defs/staff-number"
        },
        "value": {
          "$ref": "#/$defs/dynamic-type"
        },
        "voice": {
          "$ref": "#/$defs/voice-name"
        }
      },
      "required": [
        "position",
        "value"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "dynamic-list": {
      "items": {
        "$ref": "#/$defs/dynamic"
      },
      "type": "array"
    },
    "dynamic-type": {
      "type": "string"
    },
    "ending": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "color": {
          "$ref": "#/$defs/color"
        },
        "duration": {
          "$ref": "#/$defs/ending-duration"
        },
        "numbers": {
          "$ref": "#/$defs/ending-numbers"
        },
        "open": {
          "$ref": "#/$defs/ending-open"
        }
      },
      "required": [
        "duration"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "ending-duration": {
      "type": "integer"
    },
    "ending-number": {
      "type": "integer"
    },
    "ending-numbers": {
      "items": {
        "$ref": "#/$defs/ending-number"
      },
      "type": "array"
    },
    "ending-open": {
      "type": "boolean"
    },
    "event": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "duration": {
          "$ref": "#/$defs/note-value"
        },
        "fermata": {
          "$ref": "#/$defs/fermata"
        },
        "kitNotes": {
          "$ref": "#/$defs/kit-notes"
        },
        "lyrics": {
          "$ref": "#/$defs/lyrics"
        },
        "markings": {
          "$ref": "#/$defs/event-markings"
        },
        "notes": {
          "$ref": "#/$defs/notes"
        },
        "orient": {
          "$ref": "#/$defs/orientation"
        },
        "rest": {
          "$ref": "#/$defs/rest"
        },
        "slurs": {
          "$ref": "#/$defs/slur-list"
        },
        "staff": {
          "$ref": "#/$defs/staff-number"
        },
        "stemDirection": {
          "$ref": "#/$defs/stem-direction"
        },
        "type": {
          "$ref": "#/$defs/literal-string-event"
        }
      },
      "required": [
        "duration"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "event-lyric-line": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "text": {
          "$ref": "#/$defs/string"
        },
        "type": {
          "$ref": "#/$defs/event-lyric-line-type"
        }
      },
      "required": [
        "text"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "event-lyric-line-type": {
      "enum": [
        "start",
        "middle",
        "end",
        "whole"
      ],
      "type": "string"
    },
    "event-lyric-lines": {
      "additionalProperties": false,
      "patternProperties": {
        "^.*$": {
          "$ref": "#/$defs/event-lyric-line"
        }
      },
      "type": "object"
    },
    "event-markings": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "accent": {
          "$ref": "#/$defs/accent"
        },
        "bowDirection": {
          "$ref": "#/$defs/bow-direction"
        },
        "breath": {
          "$ref": "#/$defs/breath-mark"
        },
        "softAccent": {
          "$ref": "#/$defs/soft-accent"
        },
        "spiccato": {
          "$ref": "#/$defs/spiccato"
        },
        "staccatissimo": {
          "$ref": "#/$defs/staccatissimo"
        },
        "staccato": {
          "$ref": "#/$defs/staccato"
        },
        "stress": {
          "$ref": "#/$defs/stress-marking"
        },
        "strongAccent": {
          "$ref": "#/$defs/strong-accent"
        },
        "tenuto": {
          "$ref": "#/$defs/tenuto"
        },
        "tremolo": {
          "$ref": "#/$defs/tremolo-single"
        },
        "unstress": {
          "$ref": "#/$defs/unstress-marking"
        }
      },
      "type": "object",
      "unevaluatedProperties": false
    },
    "fermata": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "duration": {
          "$ref": "#/$defs/fermata-duration"
        },
        "orient": {
          "$ref": "#/$defs/orientation"
        },
        "pointing": {
          "$ref": "#/$defs/up-down-auto"
        },
        "symbol": {
          "$ref": "#/$defs/fermata-symbol"
        }
      },
      "type": "object",
      "unevaluatedProperties": false
    },
    "fermata-duration": {
      "enum": [
        "auto",
        "none",
        "veryLong",
        "long",
        "normal",
        "short",
        "veryShort"
      ],
      "type": "string"
    },
    "fermata-symbol": {
      "enum": [
        "normal",
        "angled",
        "square",
        "doubleAngled",
        "doubleSquare",
        "doubleDot",
        "halfCurve",
        "curlew"
      ],
      "type": "string"
    },
    "fifths": {
      "type": "integer"
    },
    "fine": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "color": {
          "$ref": "#/$defs/color"
        },
        "location": {
          "$ref": "#/$defs/rhythmic-position"
        }
      },
      "required": [
        "location"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "fraction": {
      "items": {
        "$ref": "#/$defs/integer-unsigned"
      },
      "type": "array"
    },
    "full-measure-rest": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "fermata": {
          "$ref": "#/$defs/fermata"
        },
        "staffPosition": {
          "$ref": "#/$defs/staff-position"
        },
        "visualDuration": {
          "$ref": "#/$defs/note-value"
        }
      },
      "type": "object",
      "unevaluatedProperties": false
    },
    "global": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "lyrics": {
          "$ref": "#/$defs/lyrics-global"
        },
        "measures": {
          "$ref": "#/$defs/measures-global"
        },
        "sounds": {
          "$ref": "#/$defs/sounds-global"
        }
      },
      "required": [
        "measures"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "global-attrs": {
      "properties": {
        "_c": {
          "$ref": "#/$defs/string"
        },
        "_x": {
          "$ref": "#/$defs/vendor-extensions"
        },
        "id": {
          "$ref": "#/$defs/id"
        }
      },
      "type": "object"
    },
    "grace": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "color": {
          "$ref": "#/$defs/color"
        },
        "content": {
          "$ref": "#/$defs/grace-sequence-content"
        },
        "graceType": {
          "$ref": "#/$defs/grace-type"
        },
        "slash": {
          "type": "boolean"
        },
        "type": {
          "$ref": "#/$defs/literal-string-grace"
        }
      },
      "required": [
        "content",
        "type"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "grace-sequence-content": {
      "items": {
        "$ref": "#/$defs/event"
      },
      "type": "array"
    },
    "grace-type": {
      "enum": [
        "makeTime",
        "stealFollowing",
        "stealPrevious"
      ],
      "type": "string"
    },
    "id": {
      "pattern": "^[\\x21-\\x7E]{1,256}$",
      "type": "string"
    },
    "id-list": {
      "items": {
        "$ref": "#/$defs/id"
      },
      "type": "array"
    },
    "id-pair": {
      "properties": {
        "end": {
          "$ref": "#/$defs/id"
        },
        "start": {
          "$ref": "#/$defs/id"
        }
      },
      "required": [
        "end",
        "start"
      ],
      "type": "object"
    },
    "integer-signed": {
      "type": "integer"
    },
    "integer-unsigned": {
      "type": "integer"
    },
    "interval": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "halfSteps": {
          "$ref": "#/$defs/integer-signed"
        },
        "staffDistance": {
          "$ref": "#/$defs/integer-signed"
        }
      },
      "required": [
        "halfSteps",
        "staffDistance"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "jump": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "location": {
          "$ref": "#/$defs/rhythmic-position"
        },
        "type": {
          "$ref": "#/$defs/jump-type"
        }
      },
      "required": [
        "location",
        "type"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "jump-type": {
      "enum": [
        "dsalfine",
        "segno"
      ],
      "type": "string"
    },
    "key": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "color": {
          "$ref": "#/$defs/color"
        },
        "fifths": {
          "$ref": "#/$defs/fifths"
        }
      },
      "required": [
        "fifths"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "kit": {
      "additionalProperties": false,
      "patternProperties": {
        "^.*$": {
          "$ref": "#/$defs/kit-component"
        }
      },
      "type": "object"
    },
    "kit-component": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "name": {
          "$ref": "#/$defs/string"
        },
        "sound": {
          "$ref": "#/$defs/id"
        },
        "staffPosition": {
          "$ref": "#/$defs/staff-position"
        }
      },
      "required": [
        "staffPosition"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "kit-note": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "kitComponent": {
          "$ref": "#/$defs/id"
        },
        "perform": {
          "$ref": "#/$defs/perform-options"
        },
        "staff": {
          "$ref": "#/$defs/staff-number"
        },
        "ties": {
          "$ref": "#/$defs/tie-list"
        }
      },
      "required": [
        "kitComponent"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "kit-notes": {
      "items": {
        "$ref": "#/$defs/kit-note"
      },
      "type": "array"
    },
    "language-code": {
      "type": "string"
    },
    "layout-change": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "layout": {
          "$ref": "#/$defs/id"
        },
        "location": {
          "$ref": "#/$defs/measure-rhythmic-position"
        }
      },
      "required": [
        "layout",
        "location"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "layout-changes": {
      "items": {
        "$ref": "#/$defs/layout-change"
      },
      "type": "array"
    },
    "layouts": {
      "items": {
        "$ref": "#/$defs/system-layout"
      },
      "type": "array"
    },
    "line-type": {
      "enum": [
        "dashed",
        "dotted",
        "solid",
        "wavy"
      ],
      "type": "string"
    },
    "literal-string-event": {
      "const": "event",
      "type": "string"
    },
    "literal-string-grace": {
      "const": "grace",
      "type": "string"
    },
    "literal-string-group": {
      "const": "group",
      "type": "string"
    },
    "literal-string-space": {
      "const": "space",
      "type": "string"
    },
    "literal-string-staff": {
      "const": "staff",
      "type": "string"
    },
    "literal-string-tremolo": {
      "const": "tremolo",
      "type": "string"
    },
    "literal-string-tuplet": {
      "const": "tuplet",
      "type": "string"
    },
    "lyric-line-id": {
      "type": "string"
    },
    "lyric-line-id-list": {
      "items": {
        "$ref": "#/$defs/lyric-line-id"
      },
      "type": "array"
    },
    "lyric-line-label": {
      "type": "string"
    },
    "lyric-line-metadata": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "label": {
          "$ref": "#/$defs/lyric-line-label"
        },
        "lang": {
          "$ref": "#/$defs/language-code"
        }
      },
      "type": "object",
      "unevaluatedProperties": false
    },
    "lyric-lines-metadata": {
      "additionalProperties": false,
      "patternProperties": {
        "^.*$": {
          "$ref": "#/$defs/lyric-line-metadata"
        }
      },
      "type": "object"
    },
    "lyrics": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "lines": {
          "$ref": "#/$defs/event-lyric-lines"
        }
      },
      "type": "object",
      "unevaluatedProperties": false
    },
    "lyrics-global": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "lineMetadata": {
          "$ref": "#/$defs/lyric-lines-metadata"
        },
        "lineOrder": {
          "$ref": "#/$defs/lyric-line-id-list"
        }
      },
      "type": "object",
      "unevaluatedProperties": false
    },
    "measure-count": {
      "type": "integer"
    },
    "measure-global": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "barline": {
          "$ref": "#/$defs/barline"
        },
        "ending": {
          "$ref": "#/$defs/ending"
        },
        "fermata": {
          "$ref": "#/$defs/fermata"
        },
        "fine": {
          "$ref": "#/$defs/fine"
        },
        "jump": {
          "$ref": "#/$defs/jump"
        },
        "key": {
          "$ref": "#/$defs/key"
        },
        "number": {
          "$ref": "#/$defs/measure-number"
        },
        "repeatEnd": {
          "$ref": "#/$defs/repeat-end"
        },
        "repeatStart": {
          "$ref": "#/$defs/repeat-start"
        },
        "segno": {
          "$ref": "#/$defs/segno"
        },
        "tempos": {
          "$ref": "#/$defs/tempos"
        },
        "time": {
          "$ref": "#/$defs/time"
        }
      },
      "type": "object",
      "unevaluatedProperties": false
    },
    "measure-number": {
      "type": "integer"
    },
    "measure-rhythmic-position": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "measure": {
          "$ref": "#/$defs/id"
        },
        "position": {
          "$ref": "#/$defs/rhythmic-position"
        }
      },
      "required": [
        "measure",
        "position"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "measures-global": {
      "items": {
        "$ref": "#/$defs/measure-global"
      },
      "type": "array"
    },
    "midi-number": {
      "type": "integer"
    },
    "mnx": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "support": {
          "$ref": "#/$defs/support"
        },
        "version": {
          "$ref": "#/$defs/version-number"
        }
      },
      "required": [
        "version"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "multi-note-tremolo": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "content": {
          "$ref": "#/$defs/tremolo-sequence-content"
        },
        "individualDuration": {
          "$ref": "#/$defs/note-value"
        },
        "marks": {
          "$ref": "#/$defs/positive-integer"
        },
        "outer": {
          "$ref": "#/$defs/note-value-quantity"
        },
        "type": {
          "$ref": "#/$defs/literal-string-tremolo"
        }
      },
      "required": [
        "content",
        "marks",
        "outer",
        "type"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "multimeasure-rest": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "duration": {
          "$ref": "#/$defs/measure-count"
        },
        "label": {
          "$ref": "#/$defs/string"
        },
        "start": {
          "$ref": "#/$defs/id"
        }
      },
      "required": [
        "duration",
        "start"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "multimeasure-rests": {
      "items": {
        "$ref": "#/$defs/multimeasure-rest"
      },
      "type": "array"
    },
    "non-arpeggio": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "position": {
          "$ref": "#/$defs/rhythmic-position"
        },
        "span": {
          "$ref": "#/$defs/id-pair"
        }
      },
      "required": [
        "position",
        "span"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "non-arpeggio-list": {
      "items": {
        "$ref": "#/$defs/non-arpeggio"
      },
      "type": "array"
    },
    "note": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "accidentalDisplay": {
          "$ref": "#/$defs/accidental-display"
        },
        "perform": {
          "$ref": "#/$defs/perform-options"
        },
        "pitch": {
          "$ref": "#/$defs/pitch"
        },
        "staff": {
          "$ref": "#/$defs/staff-number"
        },
        "ties": {
          "$ref": "#/$defs/tie-list"
        },
        "written": {
          "$ref": "#/$defs/written"
        }
      },
      "required": [
        "pitch"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "note-value": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "base": {
          "$ref": "#/$defs/note-value-base"
        },
        "dots": {
          "$ref": "#/$defs/positive-integer"
        }
      },
      "required": [
        "base"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "note-value-base": {
      "enum": [
        "duplexMaxima",
        "maxima",
        "longa",
        "breve",
        "whole",
        "half",
        "quarter",
        "eighth",
        "16th",
        "32nd",
        "64th",
        "128th",
        "256th",
        "512th",
        "1024th",
        "2048th",
        "4096th"
      ],
      "type": "string"
    },
    "note-value-quantity": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "duration": {
          "$ref": "#/$defs/note-value"
        },
        "multiple": {
          "$ref": "#/$defs/positive-integer"
        }
      },
      "required": [
        "duration",
        "multiple"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "notes": {
      "items": {
        "$ref": "#/$defs/note"
      },
      "type": "array"
    },
    "octave": {
      "type": "integer"
    },
    "orientation": {
      "enum": [
        "above",
        "below",
        "auto"
      ],
      "type": "string"
    },
    "ottava": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "end": {
          "$ref": "#/$defs/measure-rhythmic-position"
        },
        "orient": {
          "$ref": "#/$defs/orientation"
        },
        "position": {
          "$ref": "#/$defs/rhythmic-position"
        },
        "staff": {
          "$ref": "#/$defs/staff-number"
        },
        "value": {
          "$ref": "#/$defs/ottava-amount"
        },
        "voice": {
          "$ref": "#/$defs/voice-name"
        }
      },
      "required": [
        "end",
        "position",
        "value"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "ottava-amount": {
      "enum": [
        1,
        2,
        -1,
        -2,
        3,
        -3
      ],
      "type": "integer"
    },
    "ottava-amount-or-zero": {
      "enum": [
        1,
        2,
        -1,
        -2,
        3,
        -3,
        0
      ],
      "type": "integer"
    },
    "ottava-list": {
      "items": {
        "$ref": "#/$defs/ottava"
      },
      "type": "array"
    },
    "page": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "layout": {
          "$ref": "#/$defs/id"
        },
        "systems": {
          "$ref": "#/$defs/systems"
        }
      },
      "required": [
        "systems"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "pages": {
      "items": {
        "$ref": "#/$defs/page"
      },
      "type": "array"
    },
    "part": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "kit": {
          "$ref": "#/$defs/kit"
        },
        "measures": {
          "$ref": "#/$defs/part-measures"
        },
        "name": {
          "$ref": "#/$defs/part-name"
        },
        "shortName": {
          "$ref": "#/$defs/part-short-name"
        },
        "smuflFont": {
          "$ref": "#/$defs/smufl-font"
        },
        "staves": {
          "$ref": "#/$defs/staff-count"
        },
        "transposition": {
          "$ref": "#/$defs/part-transposition"
        }
      },
      "required": [
        "measures"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "part-measure": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "arpeggios": {
          "$ref": "#/$defs/arpeggio-list"
        },
        "beams": {
          "$ref": "#/$defs/beam-list"
        },
        "clefs": {
          "$ref": "#/$defs/positioned-clef-list"
        },
        "dynamics": {
          "$ref": "#/$defs/dynamic-list"
        },
        "nonArpeggios": {
          "$ref": "#/$defs/non-arpeggio-list"
        },
        "ottavas": {
          "$ref": "#/$defs/ottava-list"
        },
        "sequences": {
          "$ref": "#/$defs/sequence-list"
        }
      },
      "required": [
        "sequences"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "part-measures": {
      "items": {
        "$ref": "#/$defs/part-measure"
      },
      "type": "array"
    },
    "part-name": {
      "type": "string"
    },
    "part-short-name": {
      "type": "string"
    },
    "part-transposition": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "interval": {
          "$ref": "#/$defs/interval"
        },
        "keyFifthsFlipAt": {
          "$ref": "#/$defs/integer-signed"
        },
        "prefersWrittenPitches": {
          "type": "boolean"
        }
      },
      "required": [
        "interval"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "parts": {
      "items": {
        "$ref": "#/$defs/part"
      },
      "type": "array"
    },
    "perform-options": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {},
      "type": "object",
      "unevaluatedProperties": false
    },
    "pitch": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "alter": {
          "$ref": "#/$defs/alter"
        },
        "octave": {
          "$ref": "#/$defs/octave"
        },
        "step": {
          "$ref": "#/$defs/step"
        }
      },
      "required": [
        "octave",
        "step"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "positioned-clef": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "clef": {
          "$ref": "#/$defs/clef"
        },
        "position": {
          "$ref": "#/$defs/rhythmic-position"
        },
        "staff": {
          "$ref": "#/$defs/staff-number"
        }
      },
      "required": [
        "clef"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "positioned-clef-list": {
      "items": {
        "$ref": "#/$defs/positioned-clef"
      },
      "type": "array"
    },
    "positive-integer": {
      "type": "integer"
    },
    "repeat-end": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "times": {
          "$ref": "#/$defs/repeat-times"
        }
      },
      "type": "object",
      "unevaluatedProperties": false
    },
    "repeat-start": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {},
      "type": "object",
      "unevaluatedProperties": false
    },
    "repeat-times": {
      "type": "integer"
    },
    "rest": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "staffPosition": {
          "$ref": "#/$defs/staff-position"
        }
      },
      "type": "object",
      "unevaluatedProperties": false
    },
    "rhythmic-position": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "fraction": {
          "$ref": "#/$defs/fraction"
        },
        "graceIndex": {
          "$ref": "#/$defs/integer-unsigned"
        }
      },
      "required": [
        "fraction"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "root": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "global": {
          "$ref": "#/$defs/global"
        },
        "layouts": {
          "$ref": "#/$defs/layouts"
        },
        "mnx": {
          "$ref": "#/$defs/mnx"
        },
        "parts": {
          "$ref": "#/$defs/parts"
        },
        "scores": {
          "$ref": "#/$defs/scores"
        }
      },
      "required": [
        "global",
        "mnx",
        "parts"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "score": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "layout": {
          "$ref": "#/$defs/id"
        },
        "multimeasureRests": {
          "$ref": "#/$defs/multimeasure-rests"
        },
        "name": {
          "$ref": "#/$defs/score-name"
        },
        "pages": {
          "$ref": "#/$defs/pages"
        },
        "useWritten": {
          "type": "boolean"
        }
      },
      "required": [
        "name"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "score-name": {
      "type": "string"
    },
    "scores": {
      "items": {
        "$ref": "#/$defs/score"
      },
      "type": "array"
    },
    "segno": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "color": {
          "$ref": "#/$defs/color"
        },
        "glyph": {
          "$ref": "#/$defs/smufl-glyph"
        },
        "location": {
          "$ref": "#/$defs/rhythmic-position"
        }
      },
      "required": [
        "location"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "sequence": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "content": {
          "$ref": "#/$defs/sequence-content"
        },
        "fullMeasure": {
          "$ref": "#/$defs/full-measure-rest"
        },
        "orient": {
          "$ref": "#/$defs/orientation"
        },
        "staff": {
          "$ref": "#/$defs/staff-number"
        },
        "voice": {
          "$ref": "#/$defs/voice-name"
        }
      },
      "required": [
        "content"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "sequence-content": {
      "items": {
        "anyOf": [
          {
            "$ref": "#/$defs/event"
          },
          {
            "$ref": "#/$defs/grace"
          },
          {
            "$ref": "#/$defs/tuplet"
          },
          {
            "$ref": "#/$defs/space"
          },
          {
            "$ref": "#/$defs/multi-note-tremolo"
          }
        ]
      },
      "type": "array"
    },
    "sequence-list": {
      "items": {
        "$ref": "#/$defs/sequence"
      },
      "type": "array"
    },
    "simple-color": {
      "pattern": "^#[0-9a-f]{6}$",
      "type": "string"
    },
    "slur": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "endNote": {
          "$ref": "#/$defs/id"
        },
        "lineType": {
          "$ref": "#/$defs/line-type"
        },
        "side": {
          "$ref": "#/$defs/slur-side"
        },
        "sideEnd": {
          "$ref": "#/$defs/slur-side"
        },
        "startNote": {
          "$ref": "#/$defs/id"
        },
        "target": {
          "$ref": "#/$defs/id"
        }
      },
      "required": [
        "target"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "slur-list": {
      "items": {
        "$ref": "#/$defs/slur"
      },
      "type": "array"
    },
    "slur-side": {
      "enum": [
        "up",
        "down"
      ],
      "type": "string"
    },
    "slur-tie-end-location": {
      "type": "string"
    },
    "smufl-font": {
      "type": "string"
    },
    "smufl-glyph": {
      "type": "string"
    },
    "soft-accent": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "orient": {
          "$ref": "#/$defs/orientation"
        }
      },
      "type": "object",
      "unevaluatedProperties": false
    },
    "sound": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "midiNumber": {
          "$ref": "#/$defs/midi-number"
        },
        "name": {
          "$ref": "#/$defs/string"
        }
      },
      "type": "object",
      "unevaluatedProperties": false
    },
    "sounds-global": {
      "additionalProperties": false,
      "patternProperties": {
        "^.*$": {
          "$ref": "#/$defs/sound"
        }
      },
      "type": "object"
    },
    "space": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "duration": {
          "$ref": "#/$defs/fraction"
        },
        "type": {
          "$ref": "#/$defs/literal-string-space"
        }
      },
      "required": [
        "duration",
        "type"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "spiccato": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "orient": {
          "$ref": "#/$defs/orientation"
        }
      },
      "type": "object",
      "unevaluatedProperties": false
    },
    "staccatissimo": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "orient": {
          "$ref": "#/$defs/orientation"
        }
      },
      "type": "object",
      "unevaluatedProperties": false
    },
    "staccato": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "orient": {
          "$ref": "#/$defs/orientation"
        }
      },
      "type": "object",
      "unevaluatedProperties": false
    },
    "staff": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "label": {
          "$ref": "#/$defs/staff-label"
        },
        "labelref": {
          "$ref": "#/$defs/staff-labelref"
        },
        "sources": {
          "$ref": "#/$defs/staff-sources"
        },
        "symbol": {
          "$ref": "#/$defs/staff-symbol"
        },
        "type": {
          "$ref": "#/$defs/literal-string-staff"
        }
      },
      "required": [
        "sources",
        "type"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "staff-count": {
      "type": "integer"
    },
    "staff-group": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "barlineStyle": {
          "$ref": "#/$defs/staff-group-barline-style"
        },
        "content": {
          "$ref": "#/$defs/system-layout-content"
        },
        "label": {
          "$ref": "#/$defs/staff-label"
        },
        "symbol": {
          "$ref": "#/$defs/staff-symbol"
        },
        "type": {
          "$ref": "#/$defs/literal-string-group"
        }
      },
      "required": [
        "content",
        "type"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "staff-group-barline-style": {
      "enum": [
        "individual",
        "instrument",
        "unified",
        "mensurstrich"
      ],
      "type": "string"
    },
    "staff-label": {
      "type": "string"
    },
    "staff-labelref": {
      "enum": [
        "name",
        "shortName"
      ],
      "type": "string"
    },
    "staff-number": {
      "type": "integer"
    },
    "staff-position": {
      "type": "integer"
    },
    "staff-source": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "label": {
          "$ref": "#/$defs/staff-label"
        },
        "labelref": {
          "$ref": "#/$defs/staff-labelref"
        },
        "part": {
          "$ref": "#/$defs/id"
        },
        "staff": {
          "$ref": "#/$defs/staff-number"
        },
        "stem": {
          "$ref": "#/$defs/stem-direction"
        },
        "voice": {
          "$ref": "#/$defs/voice-name"
        }
      },
      "required": [
        "part"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "staff-sources": {
      "items": {
        "$ref": "#/$defs/staff-source"
      },
      "type": "array"
    },
    "staff-symbol": {
      "enum": [
        "bracket",
        "brace",
        "noSymbol"
      ],
      "type": "string"
    },
    "stem-direction": {
      "enum": [
        "up",
        "down"
      ],
      "type": "string"
    },
    "step": {
      "enum": [
        "A",
        "B",
        "C",
        "D",
        "E",
        "F",
        "G"
      ],
      "type": "string"
    },
    "stress-marking": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "orient": {
          "$ref": "#/$defs/orientation"
        }
      },
      "type": "object",
      "unevaluatedProperties": false
    },
    "string": {
      "type": "string"
    },
    "strong-accent": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "orient": {
          "$ref": "#/$defs/orientation"
        },
        "pointing": {
          "$ref": "#/$defs/up-down-auto"
        }
      },
      "type": "object",
      "unevaluatedProperties": false
    },
    "support": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "useAccidentalDisplay": {
          "type": "boolean"
        },
        "useBeams": {
          "type": "boolean"
        }
      },
      "type": "object",
      "unevaluatedProperties": false
    },
    "system": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "layout": {
          "$ref": "#/$defs/id"
        },
        "layoutChanges": {
          "$ref": "#/$defs/layout-changes"
        },
        "measure": {
          "$ref": "#/$defs/id"
        }
      },
      "required": [
        "measure"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "system-layout": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "content": {
          "$ref": "#/$defs/system-layout-content"
        }
      },
      "required": [
        "content"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "system-layout-content": {
      "items": {
        "anyOf": [
          {
            "$ref": "#/$defs/staff-group"
          },
          {
            "$ref": "#/$defs/staff"
          }
        ]
      },
      "type": "array"
    },
    "systems": {
      "items": {
        "$ref": "#/$defs/system"
      },
      "type": "array"
    },
    "tempo": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "bpm": {
          "$ref": "#/$defs/bpm"
        },
        "location": {
          "$ref": "#/$defs/rhythmic-position"
        },
        "value": {
          "$ref": "#/$defs/note-value"
        }
      },
      "required": [
        "bpm",
        "value"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "tempos": {
      "items": {
        "$ref": "#/$defs/tempo"
      },
      "type": "array"
    },
    "tenuto": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "orient": {
          "$ref": "#/$defs/orientation"
        }
      },
      "type": "object",
      "unevaluatedProperties": false
    },
    "tie": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "lv": {
          "type": "boolean"
        },
        "side": {
          "$ref": "#/$defs/slur-side"
        },
        "target": {
          "$ref": "#/$defs/id"
        },
        "targetType": {
          "$ref": "#/$defs/tie-target-type"
        }
      },
      "type": "object",
      "unevaluatedProperties": false
    },
    "tie-list": {
      "items": {
        "$ref": "#/$defs/tie"
      },
      "type": "array"
    },
    "tie-target-type": {
      "enum": [
        "nextNote",
        "crossVoice",
        "arpeggio",
        "crossJump"
      ],
      "type": "string"
    },
    "time": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "count": {
          "$ref": "#/$defs/positive-integer"
        },
        "display": {
          "$ref": "#/$defs/time-signature-display"
        },
        "unit": {
          "$ref": "#/$defs/time-signature-unit"
        }
      },
      "required": [
        "count",
        "unit"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "time-signature-display": {
      "enum": [
        "common",
        "cut"
      ],
      "type": "string"
    },
    "time-signature-unit": {
      "enum": [
        1,
        2,
        4,
        8,
        16,
        32,
        64,
        128
      ],
      "type": "integer"
    },
    "tremolo-sequence-content": {
      "items": {
        "$ref": "#/$defs/event"
      },
      "type": "array"
    },
    "tremolo-single": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "marks": {
          "$ref": "#/$defs/positive-integer"
        },
        "orient": {
          "$ref": "#/$defs/orientation"
        }
      },
      "required": [
        "marks"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "tuplet": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "bracket": {
          "$ref": "#/$defs/yes-no-auto"
        },
        "content": {
          "$ref": "#/$defs/sequence-content"
        },
        "inner": {
          "$ref": "#/$defs/note-value-quantity"
        },
        "orient": {
          "$ref": "#/$defs/orientation"
        },
        "outer": {
          "$ref": "#/$defs/note-value-quantity"
        },
        "showNumber": {
          "$ref": "#/$defs/tuplet-display-setting"
        },
        "showValue": {
          "$ref": "#/$defs/tuplet-display-setting"
        },
        "staff": {
          "$ref": "#/$defs/staff-number"
        },
        "type": {
          "$ref": "#/$defs/literal-string-tuplet"
        }
      },
      "required": [
        "content",
        "inner",
        "outer",
        "type"
      ],
      "type": "object",
      "unevaluatedProperties": false
    },
    "tuplet-display-setting": {
      "enum": [
        "noNumber",
        "inner",
        "both"
      ],
      "type": "string"
    },
    "unstress-marking": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "orient": {
          "$ref": "#/$defs/orientation"
        }
      },
      "type": "object",
      "unevaluatedProperties": false
    },
    "up-down": {
      "enum": [
        "up",
        "down"
      ],
      "type": "string"
    },
    "up-down-auto": {
      "enum": [
        "up",
        "down",
        "auto"
      ],
      "type": "string"
    },
    "vendor-dict": {
      "properties": {},
      "type": "object"
    },
    "vendor-extensions": {
      "additionalProperties": false,
      "patternProperties": {
        "^.*$": {
          "$ref": "#/$defs/vendor-dict"
        }
      },
      "type": "object"
    },
    "version-number": {
      "type": "integer"
    },
    "voice-name": {
      "type": "string"
    },
    "written": {
      "allOf": [
        {
          "$ref": "#/$defs/global-attrs"
        }
      ],
      "properties": {
        "diatonicDelta": {
          "$ref": "#/$defs/integer-signed"
        }
      },
      "type": "object",
      "unevaluatedProperties": false
    },
    "yes-no-auto": {
      "enum": [
        "yes",
        "no",
        "auto"
      ],
      "type": "string"
    }
  },
  "$id": "https://w3c-cg.github.io/mnx/docs/mnx-schema.json/version/17",
  "$ref": "#/$defs/root",
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "description": "An encoding of Common Western Music Notation.",
  "title": "MNX document"
}