{
  "$ref": "#/definitions/Text",
  "definitions": {
    "Text": {
      "type": "object",
      "properties": {
        "nodeType": {
          "type": "string",
          "enum": [
            "text"
          ]
        },
        "value": {
          "type": "string"
        },
        "marks": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Mark"
          }
        },
        "data": {
          "$ref": "#/definitions/NodeData"
        }
      },
      "additionalProperties": false,
      "required": [
        "data",
        "marks",
        "nodeType",
        "value"
      ]
    },
    "Mark": {
      "type": "object",
      "properties": {
        "type": {
          "type": "string"
        }
      },
      "additionalProperties": false,
      "required": [
        "type"
      ]
    },
    "NodeData": {
      "additionalProperties": true,
      "type": "object"
    }
  },
  "$schema": "http://json-schema.org/draft-07/schema#"
}