59 lines
2.3 KiB
JSON
59 lines
2.3 KiB
JSON
{
|
|
"$schema": "https://json-schema.org/draft/2020-12/schema",
|
|
"$id": "schema:MenuItem",
|
|
"title": "MenuItem",
|
|
"description": "A food or drink item listed in a menu or menu section.",
|
|
"type": "object",
|
|
"allOf": [
|
|
{
|
|
"description": "A utility class that serves as the umbrella for a number of 'intangible' things such as quantities, structured values, etc.",
|
|
"$ref": "schema:Intangible"
|
|
}
|
|
],
|
|
"properties": {
|
|
"menuAddOn": {
|
|
"description": "Additional menu item(s) such as a side dish of salad or side order of fries that can be added to this menu item. Additionally it can be a menu section containing allowed add-on menu items for this menu item.",
|
|
"oneOf": [
|
|
{
|
|
"anyOf": [
|
|
{ "$ref": "schema:MenuItem" },
|
|
{ "$ref": "schema:MenuSection" }
|
|
]
|
|
},
|
|
{
|
|
"type": "array",
|
|
"items": {
|
|
"anyOf": [
|
|
{ "$ref": "schema:MenuItem" },
|
|
{ "$ref": "schema:MenuSection" }
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"nutrition": {
|
|
"description": "Nutrition information about the recipe or menu item.",
|
|
"$ref": "schema:NutritionInformation"
|
|
},
|
|
"offers": {
|
|
"description": "An offer to provide this item—for example, an offer to sell a product, rent the DVD of a movie, perform a service, or give away tickets to an event. Use [[businessFunction]] to indicate the kind of transaction offered, i.e. sell, lease, etc. This property can also be used to describe a [[Demand]]. While this property is listed as expected on a number of common types, it can be used in others. In that case, using a second type, such as Product or a subtype of Product, can clarify the nature of the offer.\n ",
|
|
"oneOf": [
|
|
{ "anyOf": [{ "$ref": "schema:Demand" }, { "$ref": "schema:Offer" }] },
|
|
{
|
|
"type": "array",
|
|
"items": {
|
|
"anyOf": [{ "$ref": "schema:Demand" }, { "$ref": "schema:Offer" }]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"suitableForDiet": {
|
|
"description": "Indicates a dietary restriction or guideline for which this recipe or menu item is suitable, e.g. diabetic, halal etc.",
|
|
"oneOf": [
|
|
{ "$ref": "schema:RestrictedDiet" },
|
|
{ "type": "array", "items": { "$ref": "schema:RestrictedDiet" } }
|
|
]
|
|
}
|
|
}
|
|
}
|