{
	"id": "HowTo.json",
	"title": "How to",
	"description": "Instructions that explain how to achieve a result by performing a sequence of steps.",
	"media": {"type": "application/json;profile=http://schema.org/HowTo"},
	"allOf": [{"$ref": "Thing.json"}, {"$ref": "CreativeWork.json"}],
	"type": "object",
	"properties": {
		"estimatedCost": {"$ref": "#/definitions/estimatedCost"},
		"performTime": {"$ref": "Duration.json#/definitions/possibleRef"},
		"prepTime": {"$ref": "Duration.json#/definitions/possibleRef"},
		"step": {
			"oneOf": [
				{
					"type": "array",
					"items": {"$ref": "#/definitions/step"}
				},
				{"$ref": "#/definitions/step"}
			]
		},
		"supply": {
			"oneOf": [
				{
					"type": "array",
					"items": {"$ref": "#/definitions/supply"}
				},
				{"$ref": "#/definitions/supply"}
			]
		},
		"tool": {
			"oneOf": [
				{
					"type": "array",
					"items": {"$ref": "#/definitions/tool"}
				},
				{"$ref": "#/definitions/tool"}
			]
		},
		"totalTime": {"$ref": "Duration.json#/definitions/possibleRef"},
		"yield": {"$ref": "#/definitions/yield"}
	},
	"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": "{+$}"
					}]
				}
			]
		},
		"estimatedCost": {
			"title": "Estimated Cost",
			"description": "The estimated cost of the supply or supplies consumed when performing instructions.",
			"anyOf": [{"type": "string"}, {"$ref": "MonetaryAmount.json#/definitions/possibleRef"}]
		},
		"step": {
			"title": "Step",
			"description": "A single step item (as HowToStep, text, document, video, etc.) or a HowToSection. Supersedes steps.",
			"anyOf": [{"$ref": "CreativeWork.json#/definitions/possibleRef"}, {"$ref": "HowToSection.json#/definitions/possibleRef"}, {"$ref": "HowToStep.json#/definitions/possibleRef"}, {"type": "string"}]
		},
		"supply": {
			"title": "Supply",
			"description": "A sub-property of instrument. A supply consumed when performing instructions or a direction.",
			"anyOf": [{"type": "string"}, {"$ref": "HowToSupply.json#/definitions/possibleRef"}]
		},
		"tool": {
			"title": "Tool",
			"description": "A sub property of instrument. An object used (but not consumed) when performing instructions or a direction.",
			"anyOf": [{"type": "string"}, {"$ref": "HowToTool.json#/definitions/possibleRef"}]
		},
		"yield": {
			"title": "Yield",
			"description": "The quantity that results by performing instructions. For example, a paper airplane, 10 personalized candles.",
			"anyOf": [{"$ref": "QuantitativeValue.json#/definitions/possibleRef"}, {"type": "string"}]
		}
	}
}