{
    "$schema": "http://json-schema.org/draft-04/schema#",
    "id": "http://kaif.me",
    "edit_info": {
        "type": "object",
        "properties": {
            "video_file": {
                "type": "string",
                "format": "uri"
            },
            "audio_file": {
                "type": "string",
                "format": "uri"
            },
            "start_timecode": {
                "type": "string"
            }
        },
        "required": [
            "video_file",
            "audio_file",
            "start_timecode"
        ],
        "additionalProperties": false
    },
    "file": {
        "type": "object",
        "properties": {
            "title": {
                "type": "string",
                "minLength": 7,
                "maxLength": 7
            },
            "author": {
                "type": "string"
            },
            "licence": {
                "type": "string"
            },
            "licence_uri": {
                "type": "string",
                "format": "uri"
            },
            "energy_level": {
                "type": "number",
                "minimum": 1,
                "maximum": 5,
                "multipleOf": 1.0
            },
            "audio_stream": {
                "type": "object",
                "properties": {
                    "title": {
                        "type": "string"
                    },
                    "author": {
                        "type": "string"
                    },
                    "author_uri": {
                        "type": "string",
                        "format": "uri"
                    },
                    "licence": {
                        "type": "string"
                    },
                    "licence_uri": {
                        "type": "string",
                        "format": "uri"
                    },
                    "modifications": {
                        "type": "string"
                    }
                },
                "required": [
                    "title",
                    "author",
                    "author_uri",
                    "licence",
                    "licence_uri",
                    "modifications"
                ],
                "additionalProperties": false
            },
            "video_stream": {
                "type": "object",
                "properties": {
                    "title": {
                        "type": "string"
                    },
                    "author": {
                        "type": "string"
                    },
                    "author_uri": {
                        "type": "string",
                        "format": "uri"
                    },
                    "licence": {
                        "type": "string"
                    },
                    "licence_uri": {
                        "type": "string",
                        "format": "uri"
                    },
                    "modifications": {
                        "type": "string"
                    }
                }
            }
        },
        "required": [
            "title",
            "author",
            "licence",
            "licence_uri",
            "audio_stream",
            "video_stream"
        ],
        "additionalProperties": false
    },
    "properties": {
        "edit_info": {
            "$ref": "#/edit_info"
        },
        "file": {
            "$ref": "#/file"
        }
    },
    "required": [
        "edit_info",
        "file"
    ]
}