{
	"id": "VideoObject.json",
	"title": "Video Object",
	"description": "A video file.",
	"media": {"type": "application/json;profile=http://schema.org/VideoObject"},
	"allOf": [{"$ref": "Thing.json"}, {"$ref": "CreativeWork.json"}, {"$ref": "MediaObject.json"}],
	"type": "object",
	"properties": {
		"actor": {"$ref": "Person.json#/definitions/possibleRefArray"},
		"caption": {"$ref": "#/definitions/caption"},
		"director": {"$ref": "Person.json#/definitions/possibleRef"},
		"musicBy": {"$ref": "#/definitions/musicBy"},
		"thumbnail": {"$ref": "ImageObject.json#/definitions/possibleRef"},
		"transcript": {"$ref": "#/definitions/transcript"},
		"videoFrameSize": {"$ref": "#/definitions/videoFrameSize"},
		"videoQuality": {"$ref": "#/definitions/videoQuality"}
	},
	"definitions": {
		"array": {
			"type": "array",
			"items": {"$ref": "#"}
		},
		"possibleRef": {
			"oneOf": [
				{"$ref": "#"},
				{
					"type": "string",
					"format": "uri",
					"links": [{
						"rel": "full",
						"href": "{+$}"
					}]
				}
			]
		},
		"possibleRefArray": {
			"oneOf": [
				{
					"type": "array",
					"items": {"$ref": "#/definitions/possibleRef"}
				},
				{
					"type": "string",
					"format": "uri",
					"links": [{
						"rel": "full",
						"href": "{+$}"
					}]
				}
			]
		},
		"caption": {
			"title": "Caption",
			"description": "The caption for this object. For downloadable machine formats (closed caption, subtitles etc.) use MediaObject and indicate the encodingFormat.",
			"anyOf": [{"type": "string"}, {"$ref": "MediaObject.json#/definitions/possibleRef"}]
		},
		"musicBy": {
			"title": "Music by",
			"description": "The composer of the soundtrack.",
			"anyOf": [{"$ref": "Person.json#/definitions/possibleRef"}, {"$ref": "MusicGroup.json#/definitions/possibleRef"}]
		},
		"transcript": {
			"title": "Transcript",
			"description": "If this MediaObject is an AudioObject or VideoObject, the transcript of that object.",
			"type": "string"
		},
		"videoFrameSize": {
			"title": "Video Frame Size",
			"description": "The frame size of the video.",
			"type": "string"
		},
		"videoQuality": {
			"title": "Video Quality",
			"description": "The quality of the video.",
			"type": "string"
		}
	}
}