{
    "title": "SHARE ChangeSet JSONLD",
    "description": "A sub-set of JSONLD",
    "$schema": "http://json-schema.org/draft-04/schema#",
    "definitions": {
        "primitives": {
            "type": [
                "string",
                "number",
                "boolean",
                "null"
            ]
        },
        "reference": {
            "type": "object",
            "required": [
                "@id",
                "@type"
            ],
            "additionalProperties": false,
            "properties": {
                "@type": {
                    "type": "string"
                },
                "@id": {
                    "type": "string"
                }
            }
        }
    },
    "required": [
        "@graph"
    ],
    "additionalProperties": false,
    "properties": {
        "@context": {
            "type": "object"
        },
        "@graph": {
            "description": "Used to express a graph.",
            "type": "array",
            "items": {
                "type": "object",
                "required": [
                    "@id",
                    "@type"
                ],
                "properties": {
                    "extra": {
                        "type": "object"
                    },
                    "@type": {
                        "type": "string"
                    },
                    "@id": {
                        "type": [
                            "string",
                            "integer"
                        ]
                    }
                },
                "additionalProperties": {
                    "oneOf": [
                        {
                            "$ref": "#/definitions/reference"
                        },
                        {
                            "$ref": "#/definitions/primitives"
                        },
                        {
                            "type": "array",
                            "items": {
                                "$ref": "#/definitions/reference"
                            }
                        }
                    ]
                }
            }
        }
    }
}