{
    "id": "https://xshl.org/schemas/1/content/chunk/photo.json",
    "$schema": "http://json-schema.org/draft-07/schema#",
    "name": "photo",
    "version": "0.0.1",
    "description": "A represantion objects of photo",
    "definitions": {
        "language": {
            "id": "#definitions/language",
            "type": "object",
            "additionalProperties": false,
            "properties": {
                "title": {"$ref": "https://xshl.org/schemas/1/content/def/locale.json"},
                "description": {"$ref": "https://xshl.org/schemas/1/content/def/locale.json"}
            }
        }
    },
    "type": "object",
    "required": ["@type", "@id", "@class", "@context"],
    "additionalProperties": false,
    "properties": {
        "@id": {
            "oneOf": [
                {
                    "type": "integer",
                    "minimum": 1
                },
                {
                    "type": "string"
                }
            ]
        },
        "@class": {
            "oneOf": [
                {
                    "type": "integer",
                    "minimum": 1
                },
                {
                    "type": "string"
                }
            ]
        },
        "@context": {
            "type": "string",
            "enum": ["photo", "banner"]
        },
        "@type": {
            "type": "array",
            "items": {
                "type": "string"
            },
            "minItems": 1,
            "uniqueItems": true
        },
        "url": {
            "type": "string",
            "format": "uriref"
        },
        "author": {
            "anyOf": [
                {"$ref": "https://xshl.org/schemas/1/content/share/person.json"},
                {
                    "type": "array",
                    "items": [
                        {"$ref": "https://xshl.org/schemas/1/content/share/person.json"}
                    ],
                    "minItems": 1,
                    "uniqueItems": true
                }
            ]
        },
        "person": {
            "anyOf": [
                {"$ref": "https://xshl.org/schemas/1/content/share/person.json"},
                {
                    "type": "array",
                    "items": [
                        {"$ref": "https://xshl.org/schemas/1/content/share/person.json"}
                    ],
                    "minItems": 1,
                    "uniqueItems": true
                }
            ]
        },
        "ru": { "$ref": "#definitions/language"},
        "en": { "$ref": "#definitions/language"},
        "by": { "$ref": "#definitions/language"},
        "md": { "$ref": "#definitions/language"},
        "kg": { "$ref": "#definitions/language"},
        "meta": {
            "$ref": "https://xshl.org/schemas/1/content/def/meta.json"
        }
    }
}