json_schema: {
      "version": "0.1",
      "type": "object",
      "$schema": "http://json-schema.org/draft-07/schema#",
      "required": [
          "fixed",
          "ui"
      ],
      "properties": {
          "name": {
              "type": "string",
              "description": "Unique display name (to be used instead of plugin ID)",
              "examples": [
                  "Swing"
              ]
          },
          "fixed": {
              "type": "boolean",
              "description": "true if fixed set (e.g. UI Library)"
          },
          "ui": {
              "type": "array",
              "minItems": 1,
              "items": {
                  "type": "object",
                  "properties": {
                      "key": {
                          "type": "string",
                          "description": "The customization key",
                          "examples": [
                              "PasswordField.inactiveBackground"
                          ]
                      },
                      "description": {
                          "type": "string",
                          "description": "Description text for this key"
                      },
                      "source": {
                          "type": "string",
                          "description": "FQN of the underlying component (if applicable)",
                          "examples": [
                              "javax.swing.JPasswordField"
                          ]
                      },
                      "deprecated": {
                          "type": "boolean",
                          "description": "Whether this key is deprecated. Note replacement (if any) in description.",
                          "default": false
                      }
                  },
                  "required": [
                      "key"
                  ]
              }
          }
      }
  }