{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "$ref": "#/definitions/User",
  "definitions": {
    "Pet": {
      "required": [
        "name"
      ],
      "properties": {
        "name": {
          "type": "string",
          "title": "Name",
          "description": "Name of the animal."
        }
      },
      "additionalProperties": false,
      "type": "object",
      "description": "Pet defines the user's fury friend."
    },
    "Plant": {
      "required": [
        "variant"
      ],
      "properties": {
        "variant": {
          "type": "string",
          "title": "Variant"
        }
      },
      "additionalProperties": false,
      "type": "object",
      "description": "Plant represents the plants the user might have and serves as a test of structs inside a `type` set."
    },
    "User": {
      "required": [
        "id",
        "name",
        "pets",
        "plants"
      ],
      "properties": {
        "id": {
          "type": "integer",
          "description": "Unique sequential identifier."
        },
        "name": {
          "maxLength": 20,
          "minLength": 1,
          "pattern": ".*",
          "type": "string",
          "title": "the name",
          "description": "this is a property",
          "default": "alex",
          "examples": [
            "joe",
            "lucy"
          ]
        },
        "friends": {
          "items": {
            "type": "integer"
          },
          "type": "array",
          "description": "list of IDs, omitted when empty"
        },
        "tags": {
          "patternProperties": {
            ".*": {
              "additionalProperties": true
            }
          },
          "type": "object"
        },
        "pets": {
          "items": {
            "$schema": "http://json-schema.org/draft-04/schema#",
            "$ref": "#/definitions/Pet"
          },
          "type": "array",
          "description": "An array of pets the user cares for."
        },
        "plants": {
          "items": {
            "$schema": "http://json-schema.org/draft-04/schema#",
            "$ref": "#/definitions/Plant"
          },
          "type": "array",
          "title": "Pants",
          "description": "Set of plants that the user likes"
        }
      },
      "additionalProperties": false,
      "type": "object",
      "description": "User is used as a base to provide tests for comments."
    }
  }
}