{
  "$schema": "https://json-schema.org/draft/2019-09/schema",
  "widgets": {
    "DataArray": {
      "inherits": [
        "VtkWidget"
      ],
      "properties": {
        "_model_name": "DataArray",
        "data": {
          "type": "dataunion"
        },
        "name": {
          "allowNull": true,
          "default": null,
          "type": "string"
        }
      }
    },
    "DataContainer": {
      "inherits": [
        "VtkWidget"
      ],
      "properties": {
        "_model_name": "DataContainer",
        "attributes": {
          "type": "object"
        },
        "data_arrays": {
          "items": {
            "type": "widgetRef",
            "widgetType": "DataArray"
          },
          "type": "array"
        },
        "kind": {
          "type": "string"
        }
      }
    },
    "DataSet": {
      "inherits": [
        "VtkWidget"
      ],
      "properties": {
        "pieces": {
          "items": {
            "type": "widgetRef",
            "widgetType": "Piece"
          },
          "type": "array"
        }
      }
    },
    "ImageData": {
      "inherits": [
        "DataSet"
      ],
      "properties": {
        "_model_name": "ImageData",
        "origin": {
          "items": [
            {
              "type": "float"
            },
            {
              "type": "float"
            },
            {
              "type": "float"
            }
          ],
          "type": "array"
        },
        "spacing": {
          "items": [
            {
              "type": "float"
            },
            {
              "type": "float"
            },
            {
              "type": "float"
            }
          ],
          "type": "array"
        },
        "whole_extent": {
          "items": [
            {
              "type": "float"
            },
            {
              "type": "float"
            },
            {
              "type": "float"
            },
            {
              "type": "float"
            },
            {
              "type": "float"
            },
            {
              "type": "float"
            }
          ],
          "type": "array"
        }
      }
    },
    "Piece": {
      "help": "This text describes the Piece widget",
      "inherits": [
        "VtkWidget"
      ],
      "properties": {
        "_model_name": "Piece",
        "attributes": {
          "default": {
            "foo": "bar"
          },
          "type": "object"
        },
        "data": {
          "help": "This text describes the data attribute",
          "items": {
            "type": "widgetRef",
            "widgetType": "DataContainer"
          },
          "type": "array"
        }
      }
    },
    "UnstructuredGrid": {
      "inherits": [
        "DataSet"
      ],
      "properties": {
        "_model_name": "UnstructuredGrid"
      }
    },
    "VtkWidget": {
      "inherits": [
        "Widget"
      ],
      "properties": {
        "model_module_name": "test-widget",
        "model_module_version": "1.0.0",
        "model_view_version": {
          "allowNull": true,
          "default": null,
          "type": "string"
        },
        "view_module_name": "test-widget"
      }
    }
  }
}