{
  "$defs": {
    "ParsedTemplateDocumentContent": {
      "additionalProperties": false,
      "properties": {
        "title": {
          "maxLength": 128,
          "minLength": 1,
          "pattern": "^[\\w:\\,\\ \\-\u2013\\.\\&\\[\\]\\(\\)\\/]*$",
          "title": "Title",
          "type": "string"
        },
        "type": {
          "enum": [
            "Header",
            "Text",
            "Table"
          ],
          "title": "Type",
          "type": "string"
        },
        "content": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": "",
          "title": "Content"
        },
        "number_of_table_columns": {
          "anyOf": [
            {
              "enum": [
                1,
                2,
                3,
                4,
                5,
                6
              ],
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Number Of Table Columns"
        },
        "repeat_per_phase": {
          "default": false,
          "title": "Repeat Per Phase",
          "type": "boolean"
        },
        "is_user_repeatable": {
          "default": false,
          "title": "Is User Repeatable",
          "type": "boolean"
        },
        "children": {
          "items": {
            "$ref": "#/$defs/ParsedTemplateDocumentContent"
          },
          "title": "Children",
          "type": "array"
        },
        "order": {
          "default": 0,
          "minimum": 0,
          "title": "Order",
          "type": "integer"
        },
        "rows": {
          "items": {
            "$ref": "#/$defs/ParsedTemplateDocumentTableRow"
          },
          "title": "Rows",
          "type": "array"
        }
      },
      "required": [
        "title",
        "type"
      ],
      "title": "ParsedTemplateDocumentContent",
      "type": "object"
    },
    "ParsedTemplateDocumentTableRow": {
      "additionalProperties": false,
      "properties": {
        "display_order": {
          "anyOf": [
            {
              "minimum": 0,
              "type": "integer"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Display Order"
        },
        "field1": {
          "default": "",
          "title": "Field1",
          "type": "string"
        },
        "field2": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": "",
          "title": "Field2"
        },
        "field3": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": "",
          "title": "Field3"
        },
        "field4": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": "",
          "title": "Field4"
        },
        "field5": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": "",
          "title": "Field5"
        },
        "field6": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": "",
          "title": "Field6"
        }
      },
      "title": "ParsedTemplateDocumentTableRow",
      "type": "object"
    }
  },
  "additionalProperties": false,
  "properties": {
    "title": {
      "maxLength": 255,
      "minLength": 1,
      "title": "Title",
      "type": "string"
    },
    "description": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": "",
      "title": "Description"
    },
    "type": {
      "default": "Report",
      "maxLength": 32,
      "title": "Type",
      "type": "string"
    },
    "content": {
      "items": {
        "$ref": "#/$defs/ParsedTemplateDocumentContent"
      },
      "title": "Content",
      "type": "array"
    }
  },
  "required": [
    "title",
    "content"
  ],
  "title": "ParsedTemplateDocument",
  "type": "object"
}