← Files Drum Notation ImporterARCHIVED FILE

skills/import-drum-score/references/drum-import-report.schema.json

2.46 KB · Oct 5, 2026 · 18:31 UTC

↓ Download file

{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://github.com/vkamolov/obsidian-drum-notation/schemas/drum-import-report-v1.json",
  "type": "object",
  "additionalProperties": false,
  "required": ["schemaVersion", "importerVersion", "notationCoreVersion", "notationCoreDigest", "validatorBuildDigest", "source", "validationStatus", "segments", "humanReviewRequired"],
  "properties": {
    "schemaVersion": { "const": 1 },
    "importerVersion": { "type": "string" },
    "notationCoreVersion": { "type": "string" },
    "notationCoreDigest": { "type": "string", "pattern": "^[a-f0-9]{64}$" },
    "validatorBuildDigest": { "type": "string", "pattern": "^[a-f0-9]{64}$" },
    "source": {
      "type": "object",
      "additionalProperties": false,
      "required": ["kind"],
      "properties": {
        "kind": { "enum": ["image", "pdf-page"] },
        "page": { "type": "integer", "minimum": 1 }
      }
    },
    "validationStatus": { "enum": ["clean", "warnings", "unavailable"] },
    "segments": {
      "type": "array",
      "minItems": 1,
      "maxItems": 16,
      "items": {
        "type": "object",
        "additionalProperties": false,
        "required": ["id", "blockIndex", "validationStatus", "issues", "ambiguities", "workarounds"],
        "properties": {
          "id": { "type": "string", "minLength": 1 },
          "title": { "type": "string" },
          "blockIndex": { "type": "integer", "minimum": 0 },
          "validationStatus": { "enum": ["clean", "warnings", "unavailable"] },
          "issues": { "$ref": "#/$defs/messages" },
          "ambiguities": { "$ref": "#/$defs/messages" },
          "workarounds": {
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": false,
              "required": ["feature", "action", "loss"],
              "properties": {
                "feature": { "type": "string" },
                "action": { "type": "string" },
                "loss": { "enum": ["none", "appearance", "structure", "meaning"] }
              }
            }
          }
        }
      }
    },
    "humanReviewRequired": { "const": true }
  },
  "$defs": {
    "messages": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": false,
        "required": ["code", "message"],
        "properties": {
          "code": { "type": "string" },
          "message": { "type": "string" }
        }
      }
    }
  }
}

SHA-256: d86992a7025386d0ff1babdf5d5a1f9c8007cc2c719a82673ff8ac6b9616d92b