{
    "$schema": "http://json-schema.org/draft-07/schema",
    "$id": "https://dash-large-files.akamaized.net/WAVE/3GPP/5GVideo/ReferenceSequences/raw-schema.json",
    "type": "object",
    "title": "The root schema",
    "description": "Schema for raw sequences.",
    "default": {},
    "required": ["Sequence", "Properties", "copyRight", "Contact"],
    "properties": {
        "Sequence": {
            "$id": "#/properties/Sequence",
            "type": "object",
            "title": "Schema for the Sequence",
            "description": "Includes all information about the sequence",
            "default": {},
            "required": ["Name", "Background", "Scenario", "URI", "md5", "size"],
            "properties": {
                "Name": {
                    "$id": "#/properties/Sequence/properties/Name",
                    "type": "string",
                    "title": "The Name schema",
                    "description": "Provides a unique name of the sequence."
                },
                "Background": {
                    "$id": "#/properties/Sequence/properties/Background",
                    "type": "string",
                    "title": "The Background schema",
                    "description": "Provides some background information on the sequence."
                },
                "Scenario": {
                    "$id": "#/properties/Sequence/properties/Scenario",
                    "type": "string",
                    "title": "The Scenario schema",
                    "description": "Provides information to which Scenario this sequence relates."
                },
                "Key": {
                    "$id": "#/properties/Sequence/properties/Key",
                    "type": "string",
                    "title": "The Key schema",
                    "description": "Provides the key used in TR 26.955.",
                    "examples": ["S5-R5"]
                },
                "URI": {
                    "$id": "#/properties/Sequence/properties/URI",
                    "type": "uri",
                    "title": "The URI schema",
                    "description": "Provides a reference/URL to the raw video data."
                },
                "md5": {
                    "$id": "#/properties/Sequence/properties/md5",
                    "type": "string",
                    "title": "The md5 schema",
                    "description": "Provides the md5 of the raw sequence.",
                    "examples": ["d055a94f35f7594776186fc5d09a9fa4"]
                },
                "thumbnail": {
                    "$id": "#/properties/Sequence/properties/thumbnail",
                    "type": "uri",
                    "title": "The thumbnail schema",
                    "description": "Provides a reference/URL to a typical frame of the video."
                },
                "preview": {
                    "$id": "#/properties/Sequence/properties/preview",
                    "type": "uri",
                    "title": "The preview schema",
                    "description": "Provides a reference/URL to an mp4 encoded video."
                },
                "TR26.955": {
                    "$id": "#/properties/Sequence/properties/TR26.955",
                    "type": "string",
                    "title": "The TR26.955 schema",
                    "description": "An explanation about the purpose of this instance.",
                    "default": "",
                    "examples": ["Annex C.3.2.3.2"]
                },
                "size": {
                    "$id": "#/properties/Sequence/properties/size",
                    "type": "integer",
                    "title": "The size schema",
                    "description": "The size of the raw video in octets."
                }
            },
            "additionalProperties": true
        },
        "Properties": {
            "$id": "#/properties/Properties",
            "type": "object",
            "title": "The Properties schema",
            "description": "the properties of the raw video."
            ],
            "required": ["width", "height", "bitDepth", "frameRate", "colourPrimaries", "transferCharacteristics", "matrixCoefficients", "sampleAspectRatio", "duration", "frameCount"],
            "properties": {
                "width": {
                    "$id": "#/properties/Properties/properties/width",
                    "type": "integer",
                    "title": "The width schema",
                    "description": "width in pixels.",
                    "examples": [3840]
                },
                "height": {
                    "$id": "#/properties/Properties/properties/height",
                    "type": "integer",
                    "title": "The height schema",
                    "description": "height in pixels.",
                    "examples": [2160]
                },
                "format": {
                    "$id": "#/properties/Properties/properties/format",
                    "type": "string",
                    "title": "The format schema",
                    "description": "raw video format",
                    "default": "yuv",
                    "examples": ["yuv"]
                },
                "packing": {
                    "$id": "#/properties/Properties/properties/packing",
                    "type": "string",
                    "title": "The packing schema",
                    "description": "packing of the raw video.",
                    "default": "planar",
                    "examples": ["planar"]
                },
                "scan": {
                    "$id": "#/properties/Properties/properties/scan",
                    "type": "string",
                    "title": "The scan schema",
                    "description": "scan schema of the raw video.",
                    "default": "progressive",
                    "examples": ["progressive"]
                },
                "subsampling": {
                    "$id": "#/properties/Properties/properties/subsampling",
                    "type": "string",
                    "title": "The subsampling schema",
                    "description": "colour subsampling.",
                    "default": "420",
                    "examples": ["420"]
                },
                "bitDepth": {
                    "$id": "#/properties/Properties/properties/bitDepth",
                    "type": "integer",
                    "title": "The bitDepth schema",
                    "description": "bitdepth of the video.",
                    "default": 0,
                    "examples": [10]
                },
                "frameRate": {
                    "$id": "#/properties/Properties/properties/frameRate",
                    "type": "number",
                    "title": "The frameRate schema",
                    "description": "Framerate of the video."
                },
                "colourPrimaries": {
                    "$id": "#/properties/Properties/properties/colourPrimaries",
                    "type": "string",
                    "title": "The colourPrimaries schema",
                    "description": "Colour Primaries according to ISO/IEC 23091-3.",
                    "examples": ["1", "9"]
                },
                "transferCharacteristics": {
                    "$id": "#/properties/Properties/properties/transferCharacteristics",
                    "type": "string",
                    "title": "The transferCharacteristics schema",
                    "description": "Transfer Characteristics according to ISO/IEC 23091-3.",
                    "examples": ["1", "14", "16", "18"]
                },
                "matrixCoefficients": {
                    "$id": "#/properties/Properties/properties/matrixCoefficients",
                    "type": "string",
                    "title": "The matrixCoefficients schema",
                    "description": "Matrix Coefficients according to ISO/IEC 23091-3.",
                    "examples": ["1", "9"]
                },
                "sampleAspectRatio": {
                    "$id": "#/properties/Properties/properties/sampleAspectRatio",
                    "type": "string",
                    "title": "The sampleAspectRatio schema",
                    "description": "Sample Aspect Ratio according to ISO/IEC 23091-3.",
                    "examples": ["1"]
                },
                "duration": {
                    "$id": "#/properties/Properties/properties/duration",
                    "type": "number",
                    "title": "The duration schema",
                    "description": "Duration of the sequence in seconds.",
                    "examples": [5.46]
                },
                "frameCount": {
                    "$id": "#/properties/Properties/properties/frameCount",
                    "type": "integer",
                    "title": "The frameCount schema",
                    "description": "The number of frames in the sequence.",
                    "examples": [327]
                },
                "startFrame": {
                    "$id": "#/properties/Properties/properties/startFrame",
                    "type": "integer",
                    "title": "The startFrame schema",
                    "description": "The first frame in the sequence that is to be used starting from 1.",
                    "default": 1,
                    "examples": [1]
                },
                "videoFullRangeFlag": {
                    "$id": "#/properties/Properties/properties/videoFullRangeFlag",
                    "type": "string",
                    "title": "The videoFullRangeFlag schema",
                    "description": "The fullRange video flag according to ISO/IEC 23091-3.",
                    "default": "1",
                    "examples": ["0", "1"]
                },
                "chromaSampleLocType": {
                    "$id": "#/properties/Properties/properties/chromaSampleLocType",
                    "type": "string",
                    "title": "The chromaSampleLocType schema",
                    "description": "THe chroma sample location according to ISO/IEC 23091-3.",
				  "default": "0",
                    "examples": ["0", "2"]
                },
                "HDRmasterDisplay": {
                    "$id": "#/properties/Properties/properties/HDRmasterDisplay",
                    "type": "string",
                    "title": "The HDRmasterDisplay schema",
                    "description": "HDR Master Display metadata.",
                    "examples": ["G(13250,34500)B(7500,3000)R(34000,16000)WP(15635,16450)L(40000000,47)"]
                },
                "HDRmaxCLL": {
                    "$id": "#/properties/Properties/properties/HDRmaxCLL",
                    "type": "string",
                    "title": "The HDRmaxCLL schema",
                    "description": "HDRmaxCLL information.",
                    "examples": ["4000"]
                },
                "HDRmaxFALL": {
                    "$id": "#/properties/Properties/properties/HDRmaxFALL",
                    "type": "string",
                    "title": "The HDRmaxFALL schema",
                    "description": "HDRmaxFALL schema.",
                    "examples": ["0"]
                }
            },
            "additionalProperties": true
        },
        "copyRight": {
            "$id": "#/properties/copyRight",
            "type": "string",
            "title": "The copyRight schema",
            "description": "Copyright statement."
        },
        "Contact": {
            "$id": "#/properties/Contact",
            "type": "object",
            "title": "The Contact schema",
            "description": "A contact for the sequence."
                }
            ],
            "required": ["Name"],
            "properties": {
                "Name": {
                    "$id": "#/properties/Contact/properties/Name",
                    "type": "string",
                    "title": "The Name schema",
                    "description": "The name of a person."
                },
                "Company": {
                    "$id": "#/properties/Contact/properties/Company",
                    "type": "string",
                    "title": "The Company schema",
                    "description": "Company."
                },
                "e-mail": {
                    "$id": "#/properties/Contact/properties/e-mail",
                    "type": "string",
                    "title": "The e-mail schema",
                    "description": "e-mail or web page link."
                },
                "generation": {
                    "$id": "#/properties/Contact/properties/generation",
                    "type": "string",
                    "title": "The generation schema",
                    "description": "Information on how the data was generated"
                }
            },
            "additionalProperties": true
        }
    },
    "additionalProperties": true
}
