{
	"id": "APIReference.json",
	"title": "API Reference",
	"description": "Reference documentation for application programming interfaces (APIs).",
	"media": {"type": "application/json;profile=http://schema.org/APIReference"},
	"allOf": [{"$ref": "Thing.json"}, {"$ref": "CreativeWork.json"}, {"$ref": "Article.json"}, {"$ref": "TechArticle.json"}],
	"type": "object",
	"properties": {
		"assemblyVersion": {"$ref": "#/definitions/assemblyVersion"},
		"executableLibraryName": {
			"oneOf": [
				{"$ref": "#/definitions/executableLibraryName"},
				{
					"type": "array",
					"items": {"$ref": "#/definitions/executableLibraryName"}
				}
			]
		},
		"programmingModel": {
			"oneOf": [
				{
					"type": "array",
					"items": {"$ref": "#/definitions/programmingModel"}
				},
				{"$ref": "#/definitions/programmingModel"}
			]
		},
		"targetPlatform": {
			"oneOf": [
				{
					"type": "array",
					"items": {"$ref": "#/definitions/targetPlatform"}
				},
				{"$ref": "#/definitions/targetPlatform"}
			]
		}
	},
	"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": "{+$}"
					}]
				}
			]
		},
		"assemblyVersion": {
			"title": "Assembly Version",
			"description": "Associated product/technology version. e.g., .NET Framework 4.5.",
			"type": "string"
		},
		"executableLibraryName": {
			"title": "Executable Library Name",
			"description": "Library file name e.g., mscorlib.dll, system.web.dll. Supersedes assembly.",
			"type": "string"
		},
		"programmingModel": {
			"title": "Programming Model",
			"description": "Indicates whether API is managed or unmanaged.",
			"type": "string"
		},
		"targetPlatform": {
			"title": "Target Platform",
			"description": "Type of app development: phone, Metro style, desktop, XBox, etc.",
			"type": "string"
		}
	}
}