{
    "definitions": {
        "email": {
            "type": "string",
            "format": "email"
        },
        "user": {
            "required": [
                "name",
                "email"
            ],
            "type": "object",
            "properties": {
                "name": {
                    "$ref": "#/definitions/name"
                },
                "email": {
                    "$ref": "#/definitions/email"
                }
            }
        },
        "name": {
            "pattern": "^[a-zA-Z][- 'a-zA-Z0-9]+",
            "type": "string"
        }
    },
    "$schema": "http://json-schema.org/draft-04/schema#",
    "properties": {
        "email": {
            "$ref": "#/definitions/email"
        },
        "user": {
            "$ref": "#/definitions/user"
        },
        "name": {
            "$ref": "#/definitions/name"
        }
    },
    "required": [
        "email",
        "user",
        "name"
    ]
}