{
	"$schema": "http://json-schema.org/draft-04/schema#",
	"description": "Schema describing an OpenFlow features reply message, version 1.0",
	"id": "of10/ofp_features_reply.json",
	"type": "object",
	"required": [
		"header",
		"datapath_id",
		"n_buffers",
		"n_tables",
		"capabilities",
		"actions"
	],
	"properties": {
		"header": {
			"allOf": [
				{
					"$ref": "definitions.json#/ofp_header"
				},
				{
					"properties": {
						"type": {
							"enum": [
								"OFPT_FEATURES_REPLY"
							],
							"default": "OFPT_FEATURES_REPLY"
						}
					}
				}
			]
		},
		"datapath_id": {
			"type": "string",
			"pattern": "^[a-fA-F0-9]{16}$",
			"default": "0000000000000000"
		},
		"n_buffers": {
			"type": "integer",
			"minimum": 0,
			"maximum": 4294967295,
			"default": 0
		},
		"n_tables": {
			"type": "integer",
			"minimum": 0,
			"maximum": 255,
			"default": 0
		},
		"actions": {
			"type": "array",
			"uniqueItems": true,
			"default": [
				"OFPAT_OUTPUT"
			],
			"items": {
				"$ref": "definitions.json#/ofp_action_type"
			}
		},
		"capabilities": {
			"type": "array",
			"uniqueItems": true,
			"default": [
				"OFPC_FLOW_STATS"
			],
			"items": {
				"$ref": "definitions.json#/ofp_capabilities"
			}
		},
		"ports": {
			"type": "array",
			"items": {
				"$ref": "definitions.json#/ofp_phy_port"
			}
		}
	}
}