{
    "AccessToken": {
        "properties": {},
        "type": "object"
    },
    "AuthenticationData": {
        "properties": {},
        "type": "object"
    },
    "AuthorisationData": {
        "properties": {},
        "type": "object"
    },
    "IDToken": {
        "properties": {},
        "type": "object"
    },
    "IdAssertion": {
        "properties": {
            "assertion": {
                "type": "string"
            },
            "idp": {
                "type": "string"
            },
            "scope": {
                "type": "string"
            }
        },
        "required": [
            "assertion",
            "idp",
            "scope"
        ],
        "type": "object"
    },
    "IdValidation": {
        "properties": {
            "contents": {
                "type": "string"
            },
            "identity": {
                "type": "string"
            }
        },
        "required": [
            "identity",
            "contents"
        ],
        "type": "object"
    },
    "JWT": {
        "anyOf": [
            {
                "$ref": "#/IDToken"
            },
            {
                "$ref": "#/AccessToken"
            }
        ],
        "properties": {},
        "type": "object"
    },
    "ServiceAddress": {
        "properties": {
            "address": {
                "type": "string"
            }
        },
        "required": [
            "address"
        ],
        "type": "object"
    },
    "ServiceType": {
        "properties": {
            "E164_TELEPHONY": {
                "type": "null"
            },
            "EMAIL": {
                "type": "null"
            },
            "TWITTER": {
                "type": "null"
            },
            "VOIP_SIP": {
                "type": "null"
            },
            "W3C_PUSH": {
                "type": "null"
            }
        },
        "required": [
            "E164_TELEPHONY",
            "VOIP_SIP",
            "EMAIL",
            "W3C_PUSH",
            "TWITTER"
        ],
        "type": "object"
    },
    "UserProfile": {
        "properties": {
            "avatar": {
                "type": "string"
            },
            "cn": {
                "type": "string"
            },
            "context": {
                "type": "string"
            },
            "username": {
                "type": "string"
            }
        },
        "required": [
            "username",
            "cn",
            "avatar",
            "context"
        ],
        "type": "object"
    },
    "_comment": "This Spec is for Phase 1!! Most updated version is at https://github.com/reTHINK-project/specs/tree/master/schemas",
    "properties": {
        "guid": {
            "type": "string"
        },
        "identifiers": {
            "type": "string"
        }
    },
    "required": [
        "guid",
        "identifiers"
    ],
    "type": "object"
}