食品カタログ フィードは、schema.org の DataFeed
エンティティに基づいています。食品カタログ フィードは、レストランの住所、メニュー、場所などのレストランのロケール情報と、レストランのサービスの詳細(配送料、配達地域、および以下で指定するその他のアイテム)で構成されます。
DataFeed
には要素のコレクションが含まれ、各要素は schema.org ボキャブラリで表現される 1 つのアイテムを表します。DataFeed
タイプを使用すると、すべての構造化データを JSON-LD 形式で公開できます。
この仕様を使用してフィードを作成する方法については、在庫の統合の概要をご覧ください。
DateTime 形式と Time 形式
DateTime
は schema.org タイプに基づいています。特に明記されていない限り、ISO 8601 形式に従い、日付、時刻、タイムゾーンを含める必要があります。DateTime
には次の構文を使用します。
// DateTime format: YYYY-MM-DDTHH:MM:SS[∓HH:MM|Z]
次に例を示します。
2017-05-01T06:30:00-07:00 // UTC minus 7 hours
2017-05-01T06:30:00Z // UTC time zone. The optional "Z" suffix represents the UTC time zone.
Time
も特定のレストランまたはサービスの場所のタイムゾーンの現地時間です。これも schema.org のタイプに基づいており、ISO 8601 形式に従う必要があります。Time の構文は次のとおりです。
// Time format: THH:MM:SS
次に例を示します。
T08:08:00 // 8:08 AM
DateTime
または Time
を指定するときは、次の点に注意してください。
- 時刻の前にある「T」接頭辞は、この形式の一部であり必須です。
DATETIME
にはタイムゾーンを指定する必要があります。TIME
では不要です。- 時刻はレストランまたはサービスの現地時間で指定する必要があります。
封筒
食品カタログ フィードの開始コードには「エンベロープ」セクションを含める必要があります。
「エンベロープ」は各フィードの最上位の構造であり、次のプロパティを持つ DataFeed
である必要があります。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@context |
URL | 必須 | 使用中のコンテキスト。通常は http://schema.googleapis.com です。 |
@type |
テキスト | 必須 | 常に「DataFeed」です。 |
dateModified |
DateTime |
必須 |
データフィードの最後に変更された このフィード内の商品アイテムが変更された日時(ISO_OFFSET_DATE_TIME 形式)。このフィールドがない場合、更新時刻は Google サーバーで push メッセージが受信された(またはクロールが行われた)時刻とみなされます。 push とクロールを併用している場合は、これを実装することを強くおすすめします。このタイムスタンプは、タイムゾーンとミリ秒単位で指定します。例: 2016-12-28T06:30:00:123-07:00 バッチフィードでは、エンティティのバージョニングはフィードのエンベロープの |
dataFeedElement |
Menu 、Restaurant 、または Service の配列 |
必須 | このフィードに含まれる 1 つ以上のアイテム。詳細については、以下をご覧ください。 |
次の例は、エンベロープを示しています。
例
{ "@context": "http://schema.googleapis.com", "dateModified": "2016-12-28T06:30:00:123-07:00", "@type": "DataFeed", "dataFeedElement": [ /* All items that are part of this feed go here */ ] }
AdditiveDetails
このタイプを使用するには、gs1 コンテキストを追加します。
"@context": ["http://gs1.org/voc/", "http://schema.org"]
次に、適切な MenuItem
または MenuItemOption
の型に FoodBeverageTobaccoProduct
を追加します。
次の表に、AdditiveDetails
タイプのプロパティを示します。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@type |
テキスト | 必須 | 常に「AdditiveDetails」になります。 |
additiveName |
テキスト | 任意 | 添加物の名前。 |
additiveLevelOfContainment |
テキスト | 任意 | gs1:LevelOfContainmentCode に基づく封じ込めコード。
たとえば、http://gs1.org/voc/LevelOfContainmentCode-CONTAINS 、http://gs1.org/voc/LevelOfContainmentCode-FREE_FROM 、http://gs1.org/voc/LevelOfContainmentCode-MAY_CONTAIN です。 |
次の例は、AdditiveDetails
タイプの使用方法を示しています。
{ "@type": ["MenuItem", "FoodBeverageTobaccoProduct"], "@id": "http://www.example.com/bar/menuitem/8", "name": "Energy Drink", "description": "A 0.25l can of energy drink.", "offers": { "@type": "Offer", "sku": "offer-energy-drink", "price": "3.49", "priceCurrency": "USD" }, "additive": [ { "@type": "AdditiveDetails", "additiveName": "caffeine", "additiveLevelOfContainment": "http://gs1.org/voc/LevelOfContainmentCode-CONTAINS" }, { "@type": "AdditiveDetails", "additiveName": "phosphate", "additiveLevelOfContainment": "http://gs1.org/voc/LevelOfContainmentCode-CONTAINS" } ] },
AddOnMenuItem
MenuItem
のアドオン メニュー項目に表示される食品や飲み物のアイテム。
次の表に、AddOnMenuItem
タイプのプロパティを示します。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@type |
テキスト | 必須 | これは常に「AddOnMenuItem」です。 |
@id |
URL | 必須 | アドオン メニュー項目の一意の識別子。 |
name |
テキスト | 必須 | ユーザーがメニューをブラウジングしているときに AddOnMenuItem を識別するテキスト。 |
description |
テキスト | 任意 | アドオンのメニュー項目の説明。 |
image |
URL | 任意 |
次のガイドラインに一致するアドオン メニュー項目の画像。
|
offers |
Offer の配列 |
必須* |
この AddOnMenuItem を提供するための 1 つ以上のオファー。 この AddOnMenuItem を利用できるタイミングと価格を記述します。特定の時点で有効なオファーは 1 つのみです。時間帯によって価格や在庫状況が変動する可能性がある場合は、有効な特典を多数設定できます。アドオンまたはアイテムが、基本属性またはアドオン アイテム自体のバリエーションによって異なっている場合(アドオンとして小、中、大のフライドポテトなど)は、
AddOnMenuItem では次の
|
hasMenuItemOptions |
MenuItemOption の配列 |
必須* |
このアドオン メニュー項目のアドオン アイテム自体のバリエーション(アドオンとして小、中、大のフライドポテトなど)を記述する基本属性の配列。オプションを使用して、このアドオン メニュー項目に使用できるさまざまなバリエーションを指定します。これが発生するシナリオは 2 つあります。
|
suitableForDiet |
RestrictedDiet の配列 |
任意 | 該当の料理が、記載されている食事制限(「GlutenFreeDiet」や「VeganDiet」など)を遵守している。これは、有効な値の列挙リストです。 |
nutrition |
NutritionInformation |
任意 | 料理の栄養情報、特にカロリー。 |
menuAddOn |
AddOnMenuSection の配列 |
任意 | AddOnMenuItem には、アドオンとして追加できる許可された項目で構成されたメニュー セクションを含めることができます。 |
次の例は、AddOnMenuItem
を示しています。
例 1
{ "@type": "AddOnMenuSection", "@id": "https://www.example.com/1089/addon/1", "name": "AddOnCheese", "hasMenuItem": [ { "@type": "AddOnMenuItem", "@id": "https://www.example.com/1089/addon/a", "name": "Swiss", "offers": { "@type": "Offer", "sku": "offer-swiss", "price": "2.99", "priceCurrency": "USD" } }, { "@type": "AddOnMenuItem", "@id": "https://www.example.com/1089/addon/b", "name": "Mozarella", "offers": { "@type": "Offer", "sku": "offer-mozzarella", "price": "1.99", "priceCurrency": "USD" } } ] }
例 2
{ "@type": "MenuItem", "@id": "https://www.example.com/1089/product/170067", "name": "Pepperoni Pizza", "hasMenuItemOptions": [ { "@type": "MenuItemOption", "value": { "@type": "PropertyValue", "name": "SIZE", "value": "Small" }, "offers": { "@type": "Offer", "sku": "offer-small-pepperoni-pizza", "price": "10.00", "priceCurrency": "USD" } }, { "@type": "MenuItemOption", "value": { "@type": "PropertyValue", "name": "SIZE", "value": "Large" }, "offers": { "@type": "Offer", "sku": "offer-large-pepperoni-pizza", "price": "20.00", "priceCurrency": "USD" } } ], "menuAddOn": [ { "@type": "AddOnMenuSection", "name": "Choice of toppings", "@id": "https://www.example.com/1089/addon/1", "hasMenuItem": [ { "@type": "AddOnMenuItem", "@id": "https://www.example.com/1089/addon/1/a", "name": "Shrimp", "hasMenuItemOptions": [ { "@type": "MenuItemOption", "value": [ { "@type": "PropertyValue", "name": "PIZZA_SIDE", "value": "PIZZA_SIDE_LEFT" // Values are predefined for pizza side. }, { "@type": "PropertyValue", "name": "APPLICABLE_ITEM_OPTION", "value": "Small" // Value should be same as mentioned in item's options. } ], "offers": { "@type": "Offer", "sku": "offer-topping-shrimp-left-small", "price": "1.00", "priceCurrency": "USD" } }, { "@type": "MenuItemOption", "value": [ { "@type": "PropertyValue", "name": "PIZZA_SIDE", "value": "PIZZA_SIDE_LEFT" // Values are predefined for pizza side. }, { "@type": "PropertyValue", "name": "APPLICABLE_ITEM_OPTION", "value": "Large" // Value should be same as mentioned in item's options. } ], "offers": { "@type": "Offer", "sku": "offer-topping-shrimp-left-large", "price": "2.00", "priceCurrency": "USD" } }, { "@type": "MenuItemOption", "value": [ { "@type": "PropertyValue", "name": "PIZZA_SIDE", "value": "PIZZA_SIDE_WHOLE" // Values are predefined for pizza side. }, { "@type": "PropertyValue", "name": "APPLICABLE_ITEM_OPTION", "value": "Small" // Value should be same as mentioned in item's options. } ], "offers": { "@type": "Offer", "sku": "offer-topping-shrimp-whole-small", "price": "1.50", "priceCurrency": "USD" } }, { "@type": "MenuItemOption", "value": [ { "@type": "PropertyValue", "name": "PIZZA_SIDE", "value": "PIZZA_SIDE_WHOLE" // Values are predefined for pizza side. }, { "@type": "PropertyValue", "name": "APPLICABLE_ITEM_OPTION", "value": "Large" // Value should be same as mentioned in item's options. } ], "offers": { "@type": "Offer", "sku": "offer-topping-shrimp-whole-large", "price": "2.50", "priceCurrency": "USD" } } ] } ] } ] }
AddOnMenuSection
メニュー項目のアドオン メニュー セクションとしての食品や飲料項目のサブグループ。
次の表に、AddOnMenuSection
タイプのプロパティを示します。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@type |
テキスト | 必須 | 常に「AddOnMenuSection」です。 |
@id |
URL | 必須 | メニュー セクションの一意の識別子。 |
name |
テキスト | 必須 | ユーザーがメニューをブラウジングしているときに AddOnMenuSection を識別できるテキスト。 |
description |
テキスト | 任意 | メニュー セクションの説明。 |
eligibleQuantity |
QuantitativeValue |
任意 | このメニュー セクションでアドオンとして許可されているアイテムの数を示します。このフィールドを使用して、ピザに選択できるトッピングの最小数と最大数など、アドオンの数を制限できます。 |
image |
URL | 任意 | メニュー セクションの画像。 |
hasMenuItem |
AddOnMenuItem の配列 |
必須* | AddOnMenuSection に含まれるアドオン メニュー項目。 |
offers |
Offer の配列 |
任意 |
AddOnMenuSection で使用される
|
hasMenuSection |
AddOnMenuSection の配列 |
必須* | アドオン メニューの論理的なサブグループ化(ディナー、前菜、魚料理など)。 |
defaultOption |
AddOnMenuItem の配列 |
任意 |
|
numberOfFreeAddOns |
Number | 任意 | ユーザーが無料で選択できるアドオンの数を示します。 |
次の例は、AddOnMenuSection
オブジェクトです。
例 1
{ "@type": "AddOnMenuSection", "@id": "https://www.example.com/1089/addon/1", "name": "AddOnCheese", "hasMenuItem": [ { "@type": "AddOnMenuItem", "@id": "https://www.example.com/1089/addon/a", "name": "Swiss", "offers": { "@type": "Offer", "sku": "offer-swiss", "price": "2.99", "priceCurrency": "USD" } }, { "@type": "AddOnMenuItem", "@id": "https://www.example.com/1089/addon/b", "name": "Mozarella", "offers": { "@type": "Offer", "sku": "offer-mozzarella", "price": "1.99", "priceCurrency": "USD" } } ] }
例 2
"menuAddOn": { "@type": "AddOnMenuSection", "name": "Cheese", "@id": "https://www.example.com/1089/addon/1", // Points to an AddOnMenuSection "eligibleQuantity": "@type": "QuantitativeValue", "minValue": 0, "maxValue": 2 // Maximum of 2 cheeses are allowed } }
例 3
「Cheese Sandwich」メニュー項目には「Choice of Cheese」AddOnMenuSection
があり、デフォルトでは「Swiss」と「Mozzarella」があらかじめ選択されています。
{ "@type": "AddOnMenuSection", "@id": "https://www.example.com/1089/addon/1", "name": "AddOnCheese", "defaultOption": [ { "@type": "AddOnMenuItem", "@id": "https://www.example.com/1089/addon/a" }, { "@type": "AddOnMenuItem", "@id": "https://www.example.com/1089/addon/b" } ], "hasMenuItem": [ { "@type": "AddOnMenuItem", "@id": "https://www.example.com/1089/addon/a", "name": "Swiss", "offers": { "@type": "Offer", "sku": "offer-swiss", "price": "2.99", "priceCurrency": "USD" } }, { "@type": "AddOnMenuItem", "@id": "https://www.example.com/1089/addon/b", "name": "Mozzarella", "offers": { "@type": "Offer", "sku": "offer-mozzarella", "price": "1.99", "priceCurrency": "USD" } } ] }
AdvanceServiceDeliveryHoursSpecification
ユーザーが宅配とテイクアウトの事前注文をスケジュールするフルフィルメント時間を表します。
通常、opens
の値は closes
の値よりも小さくなります。opens
プロパティと closes
プロパティを使用する場合は、次のガイドラインが適用されます。
AdvanceServiceDeliveryHoursSpecification
ではopens
プロパティとcloses
プロパティは省略可能ですが、含めることを強くおすすめします。- 時刻はサービスの現地時間で指定する必要があります。
opens
またはcloses
の値にタイムゾーンを含めないでください。指定したタイムゾーンは無視されます。 opens
とcloses
が明示的に指定されていない場合、いつでも事前注文が利用可能であるとみなされます。opens
とcloses
が同じ場合、事前注文は利用できないとみなされます。opens
がcloses
より大きい場合、終了時刻は翌日であると解釈されます。たとえば、営業時間が 1 月 1 日午後 5 時に設定され、閉店時間が午前 2 時である場合、レストランは 1 月 2 日の午前 2 時に閉店すると解釈されます。opens
とcloses
は、将来の時間帯を示します。closes
は排他的です。たとえば、opens
が午前 10 時、closes
が午後 4 時で、serviceTimeInterval
が 15 分の場合、最初の時間枠は午前 10 時に開始し、最後の時間枠は午後 3 時 45 分に開始されます。
次の表に、AdvanceServiceDeliveryHoursSpecification
タイプのプロパティを示します。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@type |
テキスト | 必須 | これは常に「AdvanceServiceDeliveryHoursSpecification」になります。 |
validFrom |
DateTime |
条件 |
ユーザーの事前注文を処理できる開始日。例: "2017-05-01T00:00:00-07:00" このプロパティが設定されていない場合は、毎日有効とみなされます。 この型が 詳細については、 DateTime 形式と Time 形式をご覧ください。 |
validThrough |
DateTime |
任意 |
ユーザーの事前予約注文を処理できない終了日。例: "2018-12-01T00:00:00-07:00" このプロパティが設定されていない場合は、毎日有効とみなされます。 この型が
詳細については、DateTime 形式と Time 形式をご覧ください。 |
opens |
Time |
任意 |
宅配またはテイクアウトの時間枠に適用されます。 ユーザーの予約注文を処理できる特定の時刻。たとえば、午前 6:30 は「T06:30:00」になります。 サービス提供時刻は現地時間で指定する必要があります。 詳細については、DateTime 形式と Time 形式をご覧ください。 |
closes |
Time |
任意 |
宅配またはテイクアウトの時間枠に適用されます。 ユーザーの事前注文を処理できない特定の時間帯。たとえば、午後 9 時は「T21:00:00」になります。 時刻はサービス提供地域の現地時間で指定する必要があります。 詳細については、DateTime 形式と Time 形式をご覧ください。 |
dayOfWeek |
DayOfWeek の配列 |
任意 |
事前配送が可能な曜日有効な値は次のとおりです。
曜日を指定しない場合、 |
serviceTimeInterval |
Duration |
必須 |
連続する 2 つのサービス提供時刻の間隔。 たとえば、
|
advanceBookingRequirement |
QuantitativeValue |
必須 |
注文時刻から事前注文を処理できる時間(分)。
たとえば、事前注文のフルフィルメントに 60 分以上必要で、2 日以上後の注文の処理が制限されている場合、 |
次の例は、AdvanceServiceDeliveryHoursSpecification
タイプの使用方法を示しています。
例 1
{ "@type": "AdvanceServiceDeliveryHoursSpecification", "opens": "T10:00:00", // Delivery between 10AM and 7:59:59PM "closes": "T20:00:00", "serviceTimeInterval": "PT15M", // in slots spaced 15 minutes apart (ISO8601) "advanceBookingRequirement": { "minValue": 60, // The slot should be at least 60 mins away "maxValue": 8640, // but not more than 6 days away "unitCode": "MIN" } }
AllergenDetails
このタイプを使用するには、gs1 コンテキストを追加します。
"@context": ["http://gs1.org/voc/", "http://schema.org"]
次に、適切な MenuItem
または MenuItemOption
の型に FoodBeverageTobaccoProduct
を追加します。
次の表に、AllergenDetails
タイプのプロパティを示します。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@type |
テキスト | 必須 | 常に「AllergenDetails」になります。 |
allergenType |
テキスト | 任意 | gs1:AllergenTypeCode
ごとのアレルゲンの種類。例: http://gs1.org/voc/AllergenTypeCode-PEANUTS |
allergenLevelOfContainmentCode |
テキスト | 任意 | gs1:LevelOfContainmentCode に基づく封じ込めコード。
たとえば、http://gs1.org/voc/LevelOfContainmentCode-CONTAINS 、http://gs1.org/voc/LevelOfContainmentCode-FREE_FROM 、http://gs1.org/voc/LevelOfContainmentCode-MAY_CONTAIN です。 |
次の例は、AllergenDetails
タイプの使用方法を示しています。
{ "@type": ["MenuItem", "FoodBeverageTobaccoProduct"], "@id": "http://www.example.com/bar/menuitem/6", "name": "Strawberry joghurt drink", "description": "A 0.5l bottle of strawberry joghurt drink.", "offers": { "@type": "Offer", "sku": "offer-joghurt-drink", "price": "2.49", "priceCurrency": "USD" }, "hasAllergen": [ { "@type": "AllergenDetails", "allergenType": "http://gs1.org/voc/AllergenTypeCode-GLUTEN", "allergenLevelOfContainmentCode": "http://gs1.org/voc/LevelOfContainmentCode-FREE_FROM" }, { "@type": "AllergenDetails", "allergenType": "http://gs1.org/voc/AllergenTypeCode-LACTOSE", "allergenLevelOfContainmentCode": "http://gs1.org/voc/LevelOfContainmentCode-CONTAINS" } ] },
DeliveryChargeSpecification
次の表に、DeliveryChargeSpecification
タイプのプロパティを示します。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@type |
テキスト | 必須 | 常に「DeliveryChargeSpecification」になります。 |
@id |
URL | 任意 | 送料の仕様の識別子。 |
price |
Number | 必須 | 送料の合計を数値のみで指定します。通貨記号の代わりに通貨の種類を指定するには、priceCurrency プロパティを使用します。(例: 通貨記号なしの「6.00」)。 |
priceCurrency |
テキスト | 必須 | 3 文字の ISO 4217 通貨コードを指定します。例: 「USD」 |
eligibleTransactionVolume |
PriceSpecification |
任意 | この配信料金の指定が有効なトランザクション量(金額単位)。たとえば、最小購入量を示したり、一定の注文数を超えると追加料金なしで配送可能であることを示したりします。 |
eligibleQuantity |
QuantitativeValue |
任意 | 配送料が有効な注文数量の測定間隔と測定単位。たとえば、特定の運賃が特定の数量に対してのみ有効であることを指定できます。 |
eligibleRegion |
GeoShape 、Place 、または GeoCircle の配列 |
任意 | 特典または配送料の仕様が有効な地政学的な地域の場所、または GeoShape/GeoCircle。このプロパティは、送料が地域によって異なる場合にのみ使用してください。 |
validFrom |
DateTime |
任意 | 指定した配送料が有効になる日時(タイムゾーンを含む)。例: "2017-05-01T06:30:00-07:00"詳細については、DateTime 形式と Time 形式をご覧ください。 |
validThrough |
DateTime |
任意 | 指定した配送料金が無効になる日時(タイムゾーンを含む)。例: "2017-05-01T06:30:00-07:00"validThrough の時刻は含まれません。たとえば、この時刻が午後 6 時に設定されている場合、この時刻は午後 5:59:59 まで有効です。詳細については、DateTime 形式と Time 形式をご覧ください。 |
次の例は、DeliveryChargeSpecification
要素を示しています。
例 1
"offers": { "@type":"Offer", "priceSpecification":[ { "@type": "DeliveryChargeSpecification", "price": "5.0", "priceCurrency": "USD" } ] }
例 2
"priceSpecification": [ { "@type": "DeliveryChargeSpecification", "@id": "http://www.provider.com/defaultdeliveryfee/foo", "price": "10.0", "priceCurrency": "USD", "eligibleQuantity": { "@type": "QuantitativeValue", "minValue": 3 // Minimum of 3 items required for delivery } }, { "@type": "DeliveryChargeSpecification", "@id": "http://www.provider.com/deliveryfee/foo/1", "price": "20.0", "priceCurrency": "USD", "validFrom":"T18:00:00", // Valid from 6:00PM "validThrough":"T22:00:00", // Valid to 9:59:59PM "eligibleQuantity": { "@type": "QuantitativeValue", "minValue": 3 // Minimum of 3 items required for delivery } } ]
例 3
"priceSpecification": [{ "@type": "DeliveryChargeSpecification", "@id": "http://www.provider.com/threebrotherstacos/deliveryfee/1", "price": "8.00", // Charges $8 for area5 "priceCurrency": "USD", "eligibleTransactionVolume": { "@type": "PriceSpecification", "minPrice": "20.00", "priceCurrency": "USD" }, "eligibleRegion": [ // area5 { "@type": "GeoCircle", "geoMidpoint": { "@type": "GeoCoordinates", "latitude": "37.7392607", "longitude": "-122.3895522" }, "geoRadius": "4505" } ] }, { "@type": "DeliveryChargeSpecification", "@id": "http://www.provider.com/threebrotherstacos/defaultdeliveryfee", "price": "6.00", // Charges $6 when delivered from Foo restaurant to area1, area2, area3 and area4 (Default charge) "priceCurrency": "USD", "eligibleTransactionVolume": { "@type": "PriceSpecification", "minPrice": "20.00", // Minimum order price for delivery is $20 "priceCurrency": "USD" } } ]
"@type": ["DeliveryChargeSpecification"]
に加えて、UnitPriceSpecification を使用してオブジェクトを拡張できます。
"@type": ["DeliveryChargeSpecification", "UnitPriceSpecification"]
この拡張機能では、パーセンテージで計算される送料に必要な 2 つのプロパティが追加されています。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
referenceQuantity |
QuantitativeValue |
必須 | 特定の価格が適用される参照数量。たとえば、referenceQuantity の値が 10 で、unitCode が「P1」の場合、結果は注文額の 10% になります。現時点では unitCode 「P1」のみがサポートされています。 |
basePrice |
Number | 任意 | referenceQuantity に加算される基本料金。たとえば、referenceQuantity が 10 で、unitCode が「P1」で basePrice が 5(USD)の場合、$5 + 注文額の 10% になります。デフォルト値は 0 です。 |
配送料の例
Google では、Service エンティティの Offer.PriceSpecification
を使用して、ユーザーにさまざまな料金を事前に指定できます。
現在、エンドツーエンドの注文でサポートされている DeliveryChargeSpecification
は 1 つのみです。すべての種類の料金を 1 つの DeliveryChargeSpecification
に結合します。
地域、距離、注文額に基づいて配送料を指定する方法については、サービス フィードの例をご覧ください。
料金が発生しない場合、Offer.PriceSpecification
は省略されます。
- 例 1: 配送料がカート小計の 5% である
- 例 2: 配送料が 5 ドル
- 例 3: 送料が 5 ドル + カート小計の 10%
- 例 4: 配送料が $5、手荷物料金が $0.1
- 例 5: カート小計の手数料が 5%、手数料が 2% の場合
- 例 6: 1 km の距離を移動すると配送料が 5 ドル、さらに 1 ドルがかかる
例 1
priceSpecification [ { "@type": ["DeliveryChargeSpecification", "UnitPriceSpecification"], "referenceQuantity": { "@type": "QuantitativeValue", "value": "5.00", // 5% "unitCode": "P1" // P1 == % }, "priceCurrency": "USD" } ]
例 2
priceSpecification [ { "@type": ["DeliveryChargeSpecification"], "priceCurrency": "USD", "price": "5.00" } ]
例 3
priceSpecification [ { "@type": ["DeliveryChargeSpecification", "UnitPriceSpecification"], "referenceQuantity": { "@type": "QuantitativeValue", "value": "10.00", // 10% "unitCode": "P1", // P1 == % }, "priceCurrency": "USD", "basePrice": "5.00" // User always pays $5 in addition to 10% } ]
例 4
priceSpecification [ { "@type": ["DeliveryChargeSpecification"], "priceCurrency": "USD", "price": "5.10" //$5 + $0.1 }
例 5
priceSpecification [ { "@type": ["DeliveryChargeSpecification", "UnitPriceSpecification"], "referenceQuantity": { "@type": "QuantitativeValue", "value": "7.00", // 5% + 2% "unitCode": "P1" // P1 == % }, "priceCurrency": "USD" }, ]
例 6
priceSpecification [ { "@type": ["DeliveryChargeSpecification", "UnitPriceSpecification"], "basePrice": 5.00, // User always pays $5 "price": 1.00, // An additional $1.00 is added per 1km "priceCurrency": "USD", "referenceQuantity": { "@type": "QuantitativeValue", "unitCode": "MTR", // MTR == meter "value": "1000.0" // 1km } } ]
GeoCircle
次の表に、GeoCircle
タイプのプロパティを示します。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@type |
テキスト | 必須 | 常に「GeoCircle」です。 |
geoMidpoint |
GeoCoordinates |
必須 | GeoCircle の中心の GeoCoordinates を示します。 |
geoRadius |
Number | 必須 | GeoCircle のおおよその半径(メートル単位)を示します。 |
次の例は、GeoCircle
要素を示しています。
例
{ "@type": "GeoCircle", "geoMidpoint": { "@type": "GeoCoordinates", "latitude": "37.7392607", "longitude": "-122.3895522" }, "geoRadius": "4505" }
GeoCoordinates
次の表に、GeoCoordinates
タイプのプロパティを示します。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@type |
テキスト | 必須 | 常に「GeoCoordinates」です。 |
latitude |
Number | 必須 |
緯度。値は -90 ~ 90 の範囲に制限されます。指定された値が -90 未満の場合は -90 に設定され、90 より大きい値は 90 に設定されます。 精度は小数点以下 5 桁以上にする必要があります。 |
longitude |
Number | 必須 |
経度。-180 ~ 180 の範囲外の値は、範囲内に収まるように折り返します。たとえば、-190 の値は 170 に変換されます。値 190 は -170 に変換されます。これは経度が地球を一周しているという事実を反映しています。 精度は小数点以下 5 桁以上にする必要があります。 |
次の例は、GeoCoordinates
要素を示しています。
例
"geo": { "@type": "GeoCoordinates", "latitude": "35.7392607", "longitude": "-120.3895522" }
GeoShape
次の表に、GeoShape
タイプのプロパティを示します。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@type |
テキスト | 必須 | これは常に「GeoShape」です。 |
polygon |
テキストの配列 | 必須 |
3 つ以上のスペースで区切られたポイントのシリーズとして表現されるポリゴンまたはマルチポリゴン。最初と最後の点を同じにすることをおすすめしますが、必須ではありません。 ポリゴンまたはマルチポリゴン内の各ポイントは、緯度ポイントの後に経度ポイントが続くことで定義されます。また、反時計回りの方向にポイントを指定する必要があります。 ほとんどの場合、ポリゴンは 1 つだけです。より複雑なユースケースについては、配達サービス提供地域のドキュメントをご覧ください。 |
次の例は、GeoShape
要素を示しています。
例 1
{ "@type": "GeoShape", // area4 // Specify latitude first (i.e., lat long lat long ...) "polygon": "37.806000 -122.425592 37.775849 -122.419043 37.795547 -122.394046 37.808747 -122.412619" },
例 2
{ "@type": "GeoShape", // A service area with a hole. // Specify latitude first (i.e., lat long lat long ...) "polygon": [ “37.771535 -122.506881 37.764289 -122.506669 37.766497 -122.453058”, “37.791707 -122.447987 37.746676 -122.449433 37.736150 -122.505944 37.780924 -122.509729”] },
例 3
{ "@type": "Service", "@id": "http://www.provider.com/service/1", "areaServed": [ { "@type": "GeoShape", // Richmond District delivery area. // Specify latitude first (i.e., lat long lat long ...) "polygon": "37.785847 -122.484851 37.772757 -122.483983 37.774442 -122.458563 37.786876 -122.459474" }, { "@type": "GeoShape", // Haight-Ashbury delivery area. // Specify latitude first (i.e., lat long lat long ...) "polygon": "37.774804 -122.454774 37.766224 -122.452881 37.769087 -122.436043 37.773087 -122.437417" } ], ... },
メニュー
次の表に、Menu
タイプのプロパティを示します。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@type |
テキスト | 必須 | 常に「メニュー」です。 |
@id |
URL | 必須 | メニューの一意の識別子。 |
name |
テキスト | 任意 | ユーザーがメニューをブラウジングしているときに Menu を識別できるテキスト。 |
description |
テキスト | 任意 | メニューの説明。 |
disclaimer |
MenuDisclaimer |
任意 | メニューの免責条項。例: 栄養情報の開示、アレルゲンの開示。 |
hasMenuSection |
単一のオブジェクトまたは MenuSection の配列 |
任意 | メニューの論理的なサブグループ化(ディナー、アペタイザー、魚料理など)。 |
hasMenuItem |
単一のオブジェクトまたは MenuItem の配列 |
任意 | Menu に含まれる MenuItem オブジェクト(通常は Menu が MenuSections で分割されていない場合)。 |
inLanguage |
テキスト | 任意 | メニュー コンテンツの言語(IETF BCP 47 標準の言語コード)。例: 「en-US」。 |
次の例は、Menu
タイプの使用方法を示しています。
例 1
{ "@type": "Menu", "@id": "http://www.provider.com/somerestaurant/menu/1", "hasMenuSection": { "@type": "MenuSection", "@id": "http://www.provider.com/somerestaurant/menusection/1", "name": "Tacos", "description": "Tacos inspired by India cuisine.", "offers": { "@type": "Offer", "availabilityStarts": "T08:00:00", // Starts at 8:00AM "availabilityEnds": "T22:00:00" // Ends at 10:00PM. Available 8AM-9:59:59PM }, "hasMenuItem": { "@type": "MenuItem", "@id": "http://www.provider.com/somerestaurant/menuitem/1", "name": "Aloo Gobi Taco", "description": "Mexico City-style street corn tortilla taco filled with a flavorful mixture of mildly south Indian spiced cauliflower, potato, tomato, onions and bell peppers.", "offers": { "@type": "Offer", "sku": "offer-aloo-gobi-taco", "price": "3.50", "priceCurrency": "USD" }, "nutrition": { "@type": "NutritionInformation", "calories": "170 Cal", "fatContent": "3 g", "fiberContent": "2 g", "proteinContent": "4 g" }, "suitableForDiet": "http://schema.org/GlutenFreeDiet" } }, "inLanguage": "English" }
例 2
この例では、hasMenuItem
を配列として示しています。
{ "@type": "Menu", "@id": "http://www.provider.com/somerestaurant/menu/1", "name": "Dine-In Menu", "description": "Menu for in-restaurant dining only.", "hasMenuSection": [ { "@type": "MenuSection", "@id": "http://www.provider.com/somerestaurant/menusection/1", "name": "Main", "description": "Main course", "image": "http://www.provider.com/somerestaurant/main_dishes.jpg", "hasMenuItem": [ { "@type": "MenuItem", "@id": "http://www.provider.com/somerestaurant/menuitem/1", "name": "Pizza", "description": "Pizza", "offers": { "@type": "Offer", "sku": "offer-pizza", "price": "7.49", "priceCurrency": "USD", "availabilityStarts": "T08:00:00", // Starts at 8:00AM "availabilityEnds": "T18:00:00" // Ends at 6:00PM, last order at 5:59:59PM } }, { "@type": "MenuItem", "@id": "http://www.provider.com/somerestaurant/menuitem/2", "name": "Pasta", "description": "Pasta", "offers": [ { "@type": "Offer", "sku": "offer-pasta-lunch", "price": "7.49", "priceCurrency": "USD", "availabilityStarts": "T08:00:00", // Starts at 8:00AM "availabilityEnds": "T18:00:00" // Ends at 6:00PM, last order at 5:59:59PM }, { "@type": "Offer", "sku": "offer-pasta-dinner", "price": "10.49", "priceCurrency": "USD", "availabilityStarts": "T18:00:00", // Starts at 6:00PM "availabilityEnds": "T21:00:00" // Ends at 9:00PM, last order at 8:59:59PM } ] } ] }, { "@type": "MenuSection", "@id": "http://www.provider.com/somerestaurant/menusection/2", "name": "Soups & Salads", "description": "Salads and a few choices of soup", "image": "https://www.provider.com/somerestaurant/soup_and_salad_dishes.jpg", "hasMenuItem": { "@type": "MenuItem", "@id": "http://www.provider.com/somerestaurant/menuitem/3", "name": "Pea Soup", "description": "Creamy pea soup topped with melted cheese and sourdough croutons.", "offers": { "@type": "Offer", "sku": "offer-pea-soup", "price": "3.49", "priceCurrency": "USD" }, "suitableForDiet": "http://schema.org/GlutenFreeDiet" } } ] }
例 3
この例では、hasMenuSection
を配列として示しています。
{ "@type": "Menu", "@id": "http://www.provider.com/somerestaurant/menu/1", "name": "Dine-In Menu", "description": "Menu for in-restaurant dining only.", "hasMenuSection": [ { "@type": "MenuSection", "@id": "http://www.provider.com/somerestaurant/menusection/1", "name": "Dinner", "description": "Dinner dishes", "hasMenuSection": [ { "@type": "MenuSection", "@id": "http://www.provider.com/somerestaurant/menusection/2", "name": "Starters", "description": "Appetizers and such", "image": "https://www.provider.com/somerestaurant/starter_dishes.jpg", "hasMenuItem": { "@type": "MenuItem", "@id": "http://www.provider.com/somerestaurant/menuitem/1", "name": "Potato Skins", "description": "Small serving of stuffed potato skins.", "offers": { "@type": "Offer", "sku": "offer-potato-skins", "price": "7.49", "priceCurrency": "USD" }, "suitableForDiet": "http://schema.org/GlutenFreeDiet" } }, { "@type": "MenuSection", "@id": "http://www.provider.com/somerestaurant/menusection/3", "name": "Soups & Salads", "description": "Salads and a few choices of soup", "image": "https://thisisarestaurant.com/soup_and_salad_dishes.jpg", "hasMenuItem": { "@type": "MenuItem", "@id": "http://www.provider.com/somerestaurant/menuitem/2", "name": "Pea Soup", "description": "Creamy pea soup topped with melted cheese and sourdough croutons.", "offers": { "@type": "Offer", "sku": "offer-pea-soup", "price": "3.49", "priceCurrency": "USD" }, "suitableForDiet": "http://schema.org/GlutenFreeDiet" } }, { "@type": "MenuSection", "@id": "http://www.provider.com/somerestaurant/menusection/4", "name": "Steak", "description": "Steak Dishes", "image": "https://steak.com/steak_dishes.jpg", "hasMenuItem": { "@type": "MenuItem", "@id": "http://www.provider.com/somerestaurant/menuitem/3", "name": "Sirloin", "description": "Sirloin steak dish.", "offers": { "@type": "Offer", "sku": "offer-sirloin-steak", "price": "15.49", "priceCurrency": "USD" }, "suitableForDiet": "http://schema.org/GlutenFreeDiet" } } ] }, { "@type": "MenuSection", "@id": "http://www.provider.com/somerestaurant/menusection/5", "name": "Desserts", "description": "Dessert dishes.", "image": "http://www.provider.com/somerestaurant/dessert_dishes.jpg", "hasMenuItem": { "@type": "MenuItem", "@id": "http://www.provider.com/somerestaurant/menuitem/4", "name": "Chocolate Pie", "description": "A slice of chocolate pie.", "offers": { "@type": "Offer", "sku": "offer-chocolate-pie", "price": "3.49", "priceCurrency": "USD" } } } ] }
Menu
エンティティのその他の例については、レストランやメニューのフィードの例をご覧ください。
MenuDisclaimer
次の表に、MenuDisclaimer
タイプのプロパティを示します。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@type |
テキスト | 必須 | 常に「MenuDisclaimer」です。 |
@id |
URL | 必須 | メニューの免責条項の一意の識別子。 |
text |
テキスト | 必須 | 免責条項のテキスト。たとえば、「成人の平均一日エネルギー摂取量は 8,700 kJ です」などです。 |
url |
URL | 任意 | 免責条項の詳細を説明するページの URL。 |
次の例は、MenuDisclaimer
タイプの使用方法を示しています。
例
{ "@type": "Menu", "@id": "menu_1", "disclaimer": { "@type": "MenuDisclaimer", "@id": "menu_1_disclaimer_1", "text": "The average adult daily energy intake is 8700 kJ", "url": "https://partner.domain.com/menu/provider/disclaimer/more-info.html" } }
MenuItem
メニュー内のアイテムを表すメニュー項目。次の表に、MenuItem
タイプのプロパティを示します。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@type |
テキスト | 必須 | 常に「MenuItem」です。 |
@id |
URL | 必須 | メニュー項目の一意の識別子。 |
name |
テキスト | 必須 | ユーザーがメニューをブラウジングしているときに MenuItem を識別できるテキスト。 |
description |
テキスト | 任意 | メニュー項目の説明。 |
image |
URL | 任意 |
メニュー項目の画像。画像に関する次のガイドラインを使用してください。
|
menuAddOn |
AddOnMenuSection の配列 |
任意 | メニュー項目にアドオンとして追加できるメニュー セクションの項目。 |
offers |
Offer の配列 |
必須* |
この
|
hasMenuItemOptions |
MenuItemOption の配列 |
必須 | このメニュー項目の基本オプション/バリエーションのリスト。Options を使用して、小、中、大など、そのアイテムで利用できるさまざまな基本のバリエーションを指定する必要があります。 |
suitableForDiet |
RestrictedDiet の配列 |
任意 | 料理が記載の食事制限に準拠している(例: http://schema.org/GlutenFreeDiet、http://schema.org/VeganDiet)。これは、有効な値の列挙リストです。 |
nutrition |
NutritionInformation |
任意 | 料理の栄養情報、特にカロリー。 |
hasAllergen |
AllergenDetails |
任意 | gs1:AllergenDetails あたりの料理のアレルゲンです。
このプロパティ("@context": ["http://gs1.org/voc/", "http://schema.org"] )を使用するには、gs1 コンテキストを追加します。MenuItem の型に FoodBeverageTobaccoProduct を追加します。 |
additive |
AdditiveDetails の配列 |
任意 | gs1:AdditiveDetails ごとの料理の添加物。
これは、有効な値の列挙リストです。このプロパティ("@context": ["http://gs1.org/voc/", "http://schema.org"] )を使用するには、gs1 コンテキストを追加します。MenuItem の型に FoodBeverageTobaccoProduct を追加します。 |
packaging |
PackagingDetails |
任意 | gs1:PackagingDetails に基づく、この MenuItem のパッケージとリサイクルに関する情報。
このプロパティ("@context": ["http://gs1.org/voc/", "http://schema.org"] )を使用するには、gs1 コンテキストを追加します。MenuItem の型に FoodBeverageTobaccoProduct を追加します。 |
次の例は、MenuItem
要素を示しています。
例 1
"hasMenuItem": { "@type": "MenuItem", "@id": "http://www.provider.com/bar/menuitem/1", "name": "Potato Skins", "description": "Small serving of stuffed potato skins.", "offers": { "@type": "Offer", "sku": "offer-potato-skins", "price": "7.49", "priceCurrency": "USD" }, "suitableForDiet": "http://schema.org/GlutenFreeDiet" }
例 2
"hasMenuItem": [ { "@type": "MenuItem", "@id": "https://www.example.com/1089/product/170067", "name": "Veg Grill Burrito", "offers": { "@type": "Offer", "sku": "offer-veg-grill-burrito", "price": "12.99", "priceCurrency": "USD" }, "menuAddOn": { "@type": "AddOnMenuSection", "name": "Cheese", "@id": "https://www.example.com/1089/addon/1", // Points to an AddOnMenuSection "eligibleQuantity": "@type": "QuantitativeValue", "minValue": 0, "maxValue": 2 // Maximum of 2 cheeses are allowed } } }, { "@type": "MenuItem", "@id": "https://www.example.com/1089/product/170018", "name": "Chicken Taco", "offers": { "@type": "Offer", "sku": "offer-chicken-taco", "price": "6.99", "priceCurrency": "USD" } } ]
例 3
{ "@type": "MenuItem", "@id": "https://www.example.com/1089/product/170067", "name": "Meat Combo", "hasMenuItemOptions": [ { "@type": "MenuItemOption", "value": { "@type": "PropertyValue", "name": "OPTION", "value": "Plate", "offers": { "@type": "Offer", "sku": "offer-meat-combo-plate", "price": "12.00", "priceCurrency": "USD" }, "menuAddOn": [ { "@type": "AddOnMenuSection", "name": "Toppings for Plate", "@id": "https://www.example.com/1089/addon/1", "eligibleQuantity": { "@type": "QuantitativeValue", "minValue": 0, "maxValue": 3 }, "hasMenuItem": [ { "@type": "AddOnMenuItem", "@id": "https://www.example.com/1089/addon/1/a", "name": "Hummus", "offers": { "@type": "Offer", "sku": "offer-meat-combo-topping-hummus", "price": "1.00", "priceCurrency": "USD" } } // -- Other Items -- ] } ] } }, { "@type": "MenuItemOption", "value": { "@type": "PropertyValue", "name": "OPTION", "value": "Sandwich" }, "offers": { "@type": "Offer", "sku": "offer-meat-combo-sandwich", "price": "10.00", "priceCurrency": "USD" }, "menuAddOn": [ { "@type": "AddOnMenuSection", "name": "Toppings for Sandwich", "@id": "https://www.example.com/1089/addon/1", "eligibleQuantity": { "@type": "QuantitativeValue", "minValue": 0, "maxValue": 2 }, "hasMenuItem": [ { "@type": "AddOnMenuItem", "@id": "https://www.example.com/1089/addon/1/a", "name": "Hummus", "offers": { "@type": "Offer", "sku": "offer-meat-combo-topping-hummus", "price": "1.00", "priceCurrency": "USD" } } // -- Other Items -- ] } ] } ] }
例 4
{ "@type": "MenuItem", "@id": "https://www.example.com/1089/product/170067", "name": "Pepperoni Pizza", "hasMenuItemOptions": [ { "@type": "MenuItemOption", "value": { "@type": "PropertyValue", "name": "SIZE", "value": "Small" }, "offers": { "@type": "Offer", "sku": "offer-small", "price": "10.00", "priceCurrency": "USD" } }, { "@type": "MenuItemOption", "value": { "@type": "PropertyValue", "name": "SIZE", "value": "Medium" }, "offers": { "@type": "Offer", "sku": "offer-medium", "price": "15.00", "priceCurrency": "USD" } }, { "@type": "MenuItemOption", "value": { "@type": "PropertyValue", "name": "SIZE", "value": "Large" }, "offers": { "@type": "Offer", "sku": "offer-large", "price": "20.00", "priceCurrency": "USD" } } ] }
例 5
{ "@type": ["MenuItem", "FoodBeverageTobaccoProduct"], "@id": "http://www.example.com/bar/menuitem/9", "name": "Ice Coffee", "offers": { "@type": "Offer", "sku": "offer-ice-coffee", "price": "3.99", "priceCurrency": "USD" }, "nutrition": { "@type": "NutritionInformation", "description": "Contains preservatives and artificial flavor" }, "hasAllergen": [ { "@type": "AllergenDetails", "allergenType": "http://gs1.org/voc/AllergenTypeCode-LACTOSE", "allergenLevelOfContainmentCode": "http://gs1.org/voc/LevelOfContainmentCode-CONTAINS" }, { "@type": "AllergenDetails", "allergenType": "http://gs1.org/voc/AllergenTypeCode-PEANUTS", "allergenLevelOfContainmentCode": "http://gs1.org/voc/LevelOfContainmentCode-MAY_CONTAIN" } ], "additive": [ { "@type": "AdditiveDetails", "additiveName": "caffeine", "additiveLevelOfContainment": "http://gs1.org/voc/LevelOfContainmentCode-CONTAINS" } ], "packaging": { "@type": "PackagingDetails", "packagingRecyclingProcessType" : "http://gs1.org/voc/PackagingRecyclingProcessTypeCode-REUSABLE", "hasReturnablePackageDeposit": { "@type": "ReturnablePackageDepositDetails", "returnablePackageDepositAmount": { "@type": "http://gs1.org/voc/PriceSpecification", "http://gs1.org/voc/price": "0.10", "http://gs1.org/voc/priceCurrency": "USD" } } } }
MenuItem
エンティティのその他の例については、レストランやメニューのフィードの例をご覧ください。
MenuItemOption
料理やコンボを選ぶ際にユーザーが行う必要がある選択肢を表すオプション。ユーザーはオプションを選択する必要があります。選択しない場合、注文は無効と見なされます。たとえば、ピザの場合は小、中、大を選択します。
MenuItemOption
の使用例については、MenuItemOption
を使用したカスタマイズに関するガイドをご覧ください。
次の表に、MenuItemOption
タイプのプロパティを示します。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@type |
テキスト | 必須 | 常に「MenuItemOption」です。 |
value |
PropertyValue |
必須 | オプションを表す名前と値のペアを含む PropertyValue 。 |
offers |
Offer の配列 |
必須 |
この
|
menuAddOn |
Array of |
任意 | アドオンとして追加できる、許可された項目のメニュー セクション。これは、アドオンが特定のメニュー項目オプションに固有の場合にのみ使用してください。それ以外の場合は、MenuItem .menuAddOn プロパティを使用してアドオンを提供します。 |
suitableForDiet |
RestrictedDiet の配列 |
任意 | 食事制限を遵守している食事を示す列挙リスト(「http://schema.org/GlutenFreeDiet」や「http://schema.org/VeganDiet」など)。 |
nutrition |
NutritionInformation |
任意 | 料理の栄養情報、特にカロリー。 |
hasAllergen |
AllergenDetails |
任意 | gs1:AllergenDetails あたりの料理のアレルゲンです。
このプロパティ("@context": ["http://gs1.org/voc/", "http://schema.org"] )を使用するには、gs1 コンテキストを追加します。MenuItemOption の型に FoodBeverageTobaccoProduct を追加します。 |
additive |
AdditiveDetails の配列 |
任意 | gs1:AdditiveDetails ごとの料理の添加物。
これは、有効な値の列挙リストです。このプロパティ("@context": ["http://gs1.org/voc/", "http://schema.org"] )を使用するには、gs1 コンテキストを追加します。MenuItemOption の型に FoodBeverageTobaccoProduct を追加します。 |
packaging |
PackagingDetails |
任意 | この MenuItem のパッケージとリサイクルに関する情報(gs1:PackagingDetails に準拠)
このプロパティ("@context": ["http://gs1.org/voc/", "http://schema.org"] )を使用するには、gs1 コンテキストを追加します。
MenuItemOption の型に FoodBeverageTobaccoProduct を追加します。 |
次の例は、MenuItemOption
要素を示しています。
例 1
{ "@type": "MenuItem", "@id": "https://www.example.com/1089/product/170067", "name": "Pepperoni Pizza", "hasMenuItemOptions": [ { "@type": "MenuItemOption", "value": { "@type": "PropertyValue", "name": "SIZE", "value": "Small" }, "offers": { "@type": "Offer", "sku": "offer-small", "price": "10.00", "priceCurrency": "USD" } }, { "@type": "MenuItemOption", "value": { "@type": "PropertyValue", "name": "SIZE", "value": "Medium" }, "offers": { "@type": "Offer", "sku": "offer-medium", "price": "15.00", "priceCurrency": "USD" } }, { "@type": "MenuItemOption", "value": { "@type": "PropertyValue", "name": "SIZE", "value": "Large" }, "offers": { "@type": "Offer", "sku": "offer-large", "price": "20.00", "priceCurrency": "USD" } } ] }
例 2
{ "@type": "MenuItem", "@id": "https://www.example.com/1089/product/170067", "name": "Meat Combo", "hasMenuItemOptions": [ { "@type": "MenuItemOption", "value": { "@type": "PropertyValue", "name": "OPTION", "value": "Plate", "offers": { "@type": "Offer", "sku": "offer-meat-combo-plate", "price": "12.00", "priceCurrency": "USD" }, "menuAddOn": [ { "@type": "AddOnMenuSection", "name": "Toppings for Plate", "@id": "https://www.example.com/1089/addon/1", "eligibleQuantity": { "@type": "QuantitativeValue", "minValue": 0, "maxValue": 3 }, "hasMenuItem": [ { "@type": "AddOnMenuItem", "@id": "https://www.example.com/1089/addon/1/a", "name": "Hummus", "offers": { "@type": "Offer", "sku": "offer-meat-combo-topping-hummus", "price": "1.00", "priceCurrency": "USD" } } // -- Other Items -- ] } ] } }, { "@type": "MenuItemOption", "value": { "@type": "PropertyValue", "name": "OPTION", "value": "Sandwich" }, "offers": { "@type": "Offer", "sku": "offer-meat-combo-sandwich", "price": "10.00", "priceCurrency": "USD" }, "menuAddOn": [ { "@type": "AddOnMenuSection", "name": "Toppings for Sandwich", "@id": "https://www.example.com/1089/addon/1", "eligibleQuantity": { "@type": "QuantitativeValue", "minValue": 0, "maxValue": 2 }, "hasMenuItem": [ { "@type": "AddOnMenuItem", "@id": "https://www.example.com/1089/addon/1/a", "name": "Hummus", "offers": { "@type": "Offer", "sku": "offer-meat-combo-topping-hummus", "price": "1.00", "priceCurrency": "USD" } } // -- Other Items -- ] } ] } ] }
MenuSection
メニューの特定のセクションを表すメニュー セクション。次の表に、MenuSection
タイプのプロパティを示します。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@type |
テキスト | 必須 | 常に「MenuSection」になります。 |
@id |
URL | 必須 | メニュー セクションの一意の識別子。 |
name |
テキスト | 必須 | ユーザーがメニューをブラウジングしたときに MenuSection を識別できるテキスト。 |
description |
テキスト | 任意 | メニュー セクションの説明。 |
hasMenuSection |
MenuSection の配列 |
任意 | MenuSection の論理的なサブグループ化。たとえば、ディナー メニュー セクションには、「鶏肉料理」や「ベジタリアン」などの複数の sub-MenuSections があります。 |
hasMenuItem |
MenuItem の配列 |
任意 | MenuSection に含まれるメニュー項目。 |
offers |
Offer の配列 |
任意 |
|
image |
URL | 任意 | メニュー セクションの画像。 |
次の例は、MenuSection
エンティティを示しています。
例 1
{ "@type": "MenuSection", "@id": "http://www.provider.com/bar/menusection/4", "name": "Steak", "description": "Steak Dishes", "image": "https://steak.com/steak_dishes.jpg", "hasMenuItem": { "@type": "MenuItem", "@id": "http://www.provider.com/bar/menuitem/3", "name": "Sirloin", "description": "Sirloin steak dish.", "offers": { "@type": "Offer", "sku": "offer-sirloin-steak", "price": "15.49", "priceCurrency": "USD" }, "suitableForDiet": "http://schema.org/GlutenFreeDiet" } }
例 2
"hasMenuSection": [ { "@type": "MenuSection", "@id": "https://www.example.com/1089/categorization/25114480", "name": "Main Items", "hasMenuItem": [ { "@type": "MenuItem", "@id": "https://www.example.com/1089/product/170067", "name": "Veg Grill Burrito", "offers": { "@type": "Offer", "sku": "offer-veg-grill-burrito", "price": "12.99", "priceCurrency": "USD" }, "menuAddOn": { "@type": "AddOnMenuSection", "name": "Cheese", "@id": "https://www.example.com/1089/addon/1", // Points to an AddOnMenuSection "eligibleQuantity": "@type": "QuantitativeValue", "minValue": 0, "maxValue": 2 // Maximum of 2 cheeses are allowed } } }, { "@type": "MenuItem", "@id": "https://www.example.com/1089/product/170018", "name": "Chicken Taco", "offers": { "@type": "Offer", "sku": "offer-chicken-taco", "price": "6.99", "priceCurrency": "USD" } } ] }, { "@type": "AddOnMenuSection", "@id": "https://www.example.com/1089/addon/1", "name": "AddOnCheese", "hasMenuItem": [ { "@type": "AddOnMenuItem", "@id": "https://www.example.com/1089/addon/a", "name": "Swiss", "offers": { "@type": "Offer", "sku": "offer-swiss", "price": "2.99", "priceCurrency": "USD" } }, { "@type": "AddOnMenuItem", "@id": "https://www.example.com/1089/addon/b", "name": "Mozarella", "offers": { "@type": "Offer", "sku": "offer-mozzarella", "price": "1.99", "priceCurrency": "USD" } } ] } ]
MenuSection
エンティティのその他の例については、レストランやメニューのフィードの例をご覧ください。
情報" id="nutritioninformation" tabindex="-1">NutritionInformation
次の表に、NutritionInformation
タイプのプロパティを示します。測定単位では大文字と小文字が区別されます。たとえば、「Cal」は指定できますが、「cal」は使用できません。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@type |
テキスト | 必須 | 常に「NutritionInformation」です。 |
description |
テキスト | 任意 | 自由形式のテキスト形式の栄養情報。たとえば、「保存料を含む」などです。 |
calories |
テキスト | 任意 |
カロリー、kcal、kJ のカロリー数。次の形式を使用します。 number Cal_kcal_OR_kJ 例: 「240 カロリー」。 |
carbohydrateContent |
テキスト | 任意 |
炭水化物の量(通常は g 単位)。以下の形式を使用します。 number g_OR_mg 例: 「7 g」。 |
cholesterolContent |
テキスト | 任意 |
コレステロール量(通常は mg 単位)。以下の形式を使用します。 number g_OR_mg 例: 「12 mg」。 |
fatContent |
テキスト | 任意 |
脂肪の量(通常は g 単位)。以下の形式を使用します。 number g_OR_mg 例: 「42 g」。 |
fiberContent |
テキスト | 任意 |
繊維の g または mg 数。次の形式を使用します。 number g_OR_mg |
proteinContent |
テキスト | 任意 |
タンパク質の g または mg 数。以下の形式を使用します。 number g_OR_mg |
saturatedFatContent |
テキスト | 任意 |
飽和脂肪酸の g または mg 数(次の形式を使用): number g_OR_mg |
servingSize |
テキスト | 任意 | 体積または質量で表した、mL、L、g、kg 単位の 1 食あたりのサイズ。 |
sodiumContent |
テキスト | 任意 |
ナトリウムの mg または g 数(次の形式を使用): number g_OR_mg |
sugarContent |
テキスト | 任意 |
以下の形式で表した、砂糖の g または mg 数: number g_OR_mg |
transFatContent |
テキスト | 任意 |
トランス脂肪の g または mg 数(次の形式)。 number g_OR_mg |
unsaturatedFatContent |
テキスト | 任意 |
不飽和脂肪の量(通常は g 単位)。次の形式を使用します。 number g_OR_mg |
次の例は、NutritionInformation
要素を示しています。
例 1
"nutrition": { "@type": "NutritionInformation", "calories": "170 Cal", "fatContent": "3 g", "fiberContent": "2 g", "proteinContent": "4 g" },
例 2
{ "@type": ["MenuItem", "FoodBeverageTobaccoProduct"], "@id": "http://www.example.com/bar/menuitem/7", "name": "Peach Ice Tea", "description": "A 0.5l bottle of peach ice tea.", "offers": { "@type": "Offer", "sku": "offer-peach-ice-tea", "price": "2.49", "priceCurrency": "USD" }, "nutrition": { "@type": "NutritionInformation", "description": "Contains preservatives and artificial flavor" } },
特典
メニュー アイテムを提供。次の表に、Offer
タイプのプロパティを示します。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@type |
テキスト | 必須 | 常に「Offer」になります。 |
sku |
テキスト | 条件 |
オファーの一意の識別子。 このプロパティは、次の特典タイプでのみ使用されます。
|
price |
テキスト | 条件 |
オファーされた商品アイテムの価格。(例: 通貨記号なしの「6.00」)。 このプロパティは、次の特典タイプでのみ必須です。
次の特典タイプでは使用されません。
|
priceCurrency |
テキスト | 条件 |
PriceSpecification とそのサブタイプに関連付けられている場合の価格または価格コンポーネントの通貨(3 文字の ISO 4217 形式)。 このプロパティは、次の特典タイプでのみ必須です。
次の特典タイプでは使用されません。
|
availabilityStarts |
DateTime または Time |
任意 | クーポンを利用できる日時または時刻。たとえば、パンケーキが午前 7 時に提供される場合、このフィールドの値は "2017-05-01T07:00:00-07:00" のようになります。詳細については、DateTime 形式と Time 形式をご覧ください。 |
availabilityEnds |
DateTime または Time |
任意 | クーポンを利用できない日時または時刻。この時間帯は対象外です。たとえば、パンケーキの在庫が午前 10 時に終了する場合、最後のパンケーキは午前 9:59:59 に提供されます。このフィールドの値は「2017-05-01T10:00:00-07:00」のようになります。 詳細については、DateTime 形式と Time 形式をご覧ください。 |
availableDay |
DayOfWeek の配列 | 任意 |
この商品アイテムを購入できる曜日。指定できる値は次のとおりです。
曜日ごとに異なる空き時間がある場合は、複数の |
validFrom |
DateTime |
任意 |
指定された価格が有効な日時(タイムゾーンを含む)。たとえば、パスタが昼食時に $8、夕食時に $10 であるとします。詳細については、DateTime 形式と Time 形式をご覧ください。 このプロパティは、次のタイプの特典で使用できます。
このプロパティは、次の特典タイプでは使用されません。
|
validThrough |
DateTime |
任意 | 指定した価格が無効になった日時(タイムゾーンを含む)。たとえば、パスタが昼食時に $8、夕食時に $10 であるとします。 このプロパティは、次のタイプの特典で使用できます。
このプロパティは、次の特典タイプでは使用されません。
|
eligibleQuantity |
QuantitativeValue | 任意 |
この商品アイテムが許可される注文数量。たとえば、レストランでは 1 回の宅配でピザを 10 枚以上注文する必要があるとします。 この値は省略可能です。デフォルトでは上限はありませんが、レストランで上限を指定できます。最小制限は、ユーザーがアイテムを選択した場合にのみ適用されます。 このプロパティは、次のタイプの特典で使用できます。
このプロパティは、次の特典タイプでは使用されません。
|
aggregateRating |
AggregateRating | 任意 |
アイテムのレビューや評価をまとめた総合評価。 このプロパティは、次のタイプの特典で使用できます。
このプロパティは、次のタイプでは使用されません。
|
inventoryLevel |
QuantitativeValue | 任意 |
商品アイテムの現在のおおよその在庫状況。 このプロパティは、次のタイプの特典で使用できます。
このプロパティは、次の特典タイプでは使用されません。
|
priceSpecification |
DeliveryChargeSpecification の配列または PaymentChargeSpecification の配列 | 任意 |
このプロパティは、次のタイプの特典で使用できます。
このプロパティは、次の特典タイプでは使用されません。
|
offeredBy |
Restaurant ID の配列 |
任意 | この 指定しない場合、この このプロパティは、次のタイプの特典で使用できます。
このプロパティは、次の特典タイプでは使用されません。
|
applicableFulfillmentMethod |
テキストの配列 | 任意 | この 指定しない場合、この このプロパティは、次のタイプの特典で使用できます。
このプロパティは、次の特典タイプでは使用されません。
|
@id |
URL | 非推奨 | オファーの一意の識別子。2019 年 4 月 25 日に非推奨となりました。上記のように sku に置き換えてください。
|
次の例は、Offer
要素を示しています。
例 1
シンプルな特典の例を次に示します。
{ "@type": "Offer", "@id": "https://www.provider.com/menu/74962/139/offer", "price": "10", "priceCurrency": "USD" }
例 2
次の例は、週末の午前 8 時から午前 10 時までの空き状況を示しています。
{ "@type": "Offer", "@id": "https://www.provider.com/menu/74962/140/offer", "price": "10", "priceCurrency": "USD", "availabilityStarts": "T08:00:00-07:00", // Only available from 8-9:59:59 AM "availabilityEnds": "T10:00:00-07:00", "availableDay": ["Saturday", "Sunday"] // Only on weekends. }
例 3
次の例では、月曜、水曜、金曜は午前 9 時から 10 時 59 分 59 秒まで、火曜と木曜は午前 8 時 59 分 59 秒までの可用性が示されています。
{ "@type": "Offer", "@id": "https://www.provider.com/menu/74962/140/offer", "price": "10", "priceCurrency": "USD", "availabilityStarts": "T09:00:00-07:00", "availabilityEnds": "T11:00:00-07:00", "availableDay": ["Monday", "Wednesday", "Friday"] }, { "@type": "Offer", "@id": "https://www.provider.com/menu/74962/141/offer", "price": "10", "priceCurrency": "USD", "availabilityStarts": "T08:00:00-07:00", "availabilityEnds": "T12:00:00-07:00", "availableDay": ["Tuesday", "Thursday"] }
例 4
次の例は、アドオン メニュー項目の有効な数量セットを示しています。ユーザーは、その項目の最大 2 つの部分を注文できます。
{ "@type": "AddOnMenuItem", "@id": "https://www.example.com/1089/addon/a", "name": "Ranch", "offers": { "@type": "Offer", "@id": "https://www.example.com/1089/addon/a/offer", "price": "2.99", "priceCurrency": "USD" "eligibleQuantity": { "@type": "QuantitativeValue", "maxValue": 2 } } }
例 5
次の例は、特定の地域での宅配サービスを示しています。
{ "@type": "Offer", "@id": "https://www.provider.com/menu/74962/139/offer", "price": "10", "priceCurrency": "USD", "applicableFulfillmentMethods": ["DELIVERY"], "offeredBy": [ { "@type": "Restaurant", "@id": "https://www.provider.com/location/1", } ] }
OpeningHoursSpecification
サービスの注文が利用可能になるタイミングを定義します。通常、opens
の値は closes
の値よりも小さくなります。opens
プロパティと closes
プロパティを使用する場合は、次のガイドラインが適用されます。
opens
プロパティとcloses
プロパティは省略可能ですが、順序が可能な場合は指定することを強くおすすめします。営業時間を定義する際は、opens
プロパティとcloses
プロパティを指定したServiceDeliveryHoursSpecification
を含むdeliveryHours
配列を含めることをおすすめします。次に、事前注文の時間枠を限定したい場合は、独自のopens
プロパティとcloses
プロパティを持つAdvanceServiceDeliveryHoursSpecification
オブジェクトをdeliveryHours
に含めます。opens
とcloses
が明示的に指定されていない場合、注文サービスは毎日 24 時間利用できるとみなされます。- 時刻はサービスの現地時間で指定する必要があります。
opens
またはcloses
の値にタイムゾーンを含めないでください。タイムゾーンが指定された場合、この情報は Google によって無視されます。 opens
とcloses
が同じ場合、レストランは 0 分間営業していると想定します。opens
がcloses
より大きい場合、終了時刻は翌日であると解釈されます。たとえば、営業時間が 1 月 1 日午後 5 時に設定され、閉店時間が午前 2 時である場合、レストランは 1 月 2 日午前 2 時に営業終了と解釈されます。closes
の時間は含まれません。したがって、この注文時間枠の開始時間と終了時間がそれぞれ午前 10 時と午後 4 時に設定されている場合、最後の注文は午後 3 時 59 分 59 秒になります。
次の表に、OpeningHoursSpecification
タイプのプロパティを示します。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@type |
テキスト | 必須 | 常に「OpeningHoursSpecification」になります。 |
@id |
URL | 任意 | OpeningHoursSpecification の識別子。 |
dayOfWeek |
DayOfWeek の配列 |
任意 |
これらの営業時間が有効な曜日。指定できる値は、「Monday」、「Tuesday」、「Wednesday」、「Thursday」、「Friday」、「Saturday」、「Sunday」です。次に例を示します。 "dayOfWeek": [ "Monday", "Tuesday", "Wednesday", "Thursday", "Friday" ] 曜日を指定しない場合、 |
opens |
Time |
任意 |
このプロパティを
時刻はサービスの現地時間で指定する必要があります。 詳細については、DateTime 形式と Time 形式をご覧ください。 |
closes |
Time |
任意 |
このプロパティを 時刻はサービスの現地時間で指定する必要があります。 詳細については、DateTime 形式と Time 形式をご覧ください。 |
validFrom |
DateTime |
任意 |
このプロパティを たとえば、指定された営業時間が 2017 年全体に適用される場合は、
このプロパティがフィードで指定されていない場合、Google は、そのレストランやサービスを毎日利用できると見なします。 日付に加えて、値の時刻とタイムゾーンの部分も必須です。 タイムゾーンには、レストランまたはサービスのタイムゾーンを使用します。 詳細については、DateTime 形式と Time 形式をご覧ください。 |
validThrough |
DateTime |
任意 |
たとえば、指定された営業時間が 2017 年全体に適用される場合は、
このプロパティがフィードで指定されていない場合、Google は、そのレストランやサービスを毎日利用できると見なします。 日付に加えて、DateTime の時刻とタイムゾーンの部分が必須です。 タイムゾーンには、レストランまたはサービスのタイムゾーンを使用します。
詳細については、DateTime 形式と Time 形式をご覧ください。 |
deliveryHours |
ServiceDeliveryHoursSpecification の配列または AdvanceServiceDeliveryHoursSpecification の配列 |
条件 |
配達時間または持ち帰り時間の仕様。 レストランが閉まっている場合(
|
次の例は、OpeningHoursSpecification
要素を示しています。
例 1
// Ordering times for Monday through Friday { "@type": "OpeningHoursSpecification", "deliveryHours": [ { "@type": "AdvanceServiceDeliveryHoursSpecification", "deliveryLeadTime": { "@type": "QuantitativeValue", "value": "60", "unitCode": "MIN" }, "dayOfWeek": [ "Monday", "Tuesday", "Wednesday", "Thursday", "Friday" ], "opens": "T12:00:00", // Advance ordering begins at noon "closes": "T23:59:59", // Advance ordering ends at midnight "validFrom": "2017-01-01T00:00:00-07:00", "validThrough": "2018-12-31T23:59:59-07:00" }, { "@type": "ServiceDeliveryHoursSpecification", "deliveryLeadTime": { "@type": "QuantitativeValue", "value": "60", "unitCode": "MIN" }, "dayOfWeek": [ "Monday", "Tuesday", "Wednesday", "Thursday", "Friday" ], "opens": "T10:00:00", // ASAP ordering begins at 10AM "closes": "T14:00:00", // ASAP ordering ends at 2PM "validFrom": "2017-01-01T00:00:00-07:00", "validThrough": "2018-12-31T23:59:59-07:00" } ] },
例 2
// Ordering times for Saturday and Sunday { "@type": "OpeningHoursSpecification", "deliveryHours": [ { // In this case advance orders are unavailable on Saturday and Sunday "@type": "ServiceDeliveryHoursSpecification", "deliveryLeadTime": { "@type": "QuantitativeValue", "value": "60", "unitCode": "MIN" }, "dayOfWeek": [ "Saturday", "Sunday" ], "opens": "T12:00:00", // ASAP orders start at noon "closes": "T23:59:59", // ASAP orders end at midnight "validFrom": "2017-01-01T00:00:00-07:00", "validThrough": "2018-12-31T23:59:59-07:00" } ] }
例 3
"hoursAvailable": { "@type": "OpeningHoursSpecification", "validFrom": "2016-02-01T00:00:00-07:00", "validThrough": "2016-03-01T00:00:00-07:00", "opens": "T08:00:00", // Ordering begins at 8:00AM and ends at 6:00PM. // ASAP and and advance orders are restricted to this // time frame since the user won't be able to place // orders outside of this window. "closes": "T18:00:00", "deliveryHours": { "@type": "ServiceDeliveryHoursSpecification", "deliveryLeadTime": { "@type": "QuantitativeValue", "value": "60", "unitCode": "MIN" } } },
例 4
// List hours available for 2017 and 2018 "hoursAvailable": [ { "@type": "OpeningHoursSpecification", // Array containing advance order hours for each day "deliveryHours": [ { // Open 10:00AM to 9:29:59PM on Mondays "@type": "AdvanceServiceDeliveryHoursSpecification", "deliveryLeadTime": { "@type": "QuantitativeValue", "value": "60", "unitCode": "MIN" }, "dayOfWeek": [ "Monday" ], "opens": "T10:00:00", "closes": "T21:30:00", "validFrom": "2017-01-01T00:00:00-07:00", "validThrough": "2018-12-31T23:59:59-07:00" }, { // Open 10:00AM to 9:29:59PM on Tuesdays "@type": "AdvanceServiceDeliveryHoursSpecification", "deliveryLeadTime": { "@type": "QuantitativeValue", "value": "60", "unitCode": "MIN" }, "dayOfWeek": [ "Tuesday" ], "opens": "T10:00:00", "closes": "T21:30:00", "validThrough": "2018-12-31T23:59:59-07:00" }, { // Open 10:00AM to 9:29:59PM on Wednesdays "@type": "AdvanceServiceDeliveryHoursSpecification", "deliveryLeadTime": { "@type": "QuantitativeValue", "value": "60", "unitCode": "MIN" }, "dayOfWeek": [ "Wednesday" ], "opens": "T10:00:00", "closes": "T21:30:00", "validFrom": "2017-01-01T00:00:00-07:00", "validThrough": "2018-12-31T23:59:59-07:00" }, { // Open 10:00AM to 9:29:59PM on Thursdays "@type": "AdvanceServiceDeliveryHoursSpecification", "dayOfWeek": [ "Thursday" ], "opens": "T10:00:00", "closes": "T21:30:00", "validFrom": "2017-01-01T00:00:00-07:00", "validThrough": "2018-12-31T23:59:59-07:00" }, { // Open 10:00AM to 11:29:59PM on Fridays "@type": "AdvanceServiceDeliveryHoursSpecification", "deliveryLeadTime": { "@type": "QuantitativeValue", "value": "60", "unitCode": "MIN" }, "dayOfWeek": [ "Friday" ], "opens": "T10:00:00", "closes": "T23:30:00", "validFrom": "2017-01-01T00:00:00-07:00", "validThrough": "2018-12-31T23:59:59-07:00" }, { // Open 10:00AM to 11:29:59PM on Saturdays "@type": "AdvanceServiceDeliveryHoursSpecification", "deliveryLeadTime": { "@type": "QuantitativeValue", "value": "60", "unitCode": "MIN" }, "dayOfWeek": [ "Saturday" ], "opens": "T10:00:00", "closes": "T23:30:00", "validFrom": "2017-01-01T00:00:00-07:00", "validThrough": "2018-12-31T23:59:59-07:00" }, { // Open 11:00AM to 6:59:59PM on Sundays "@type": "AdvanceServiceDeliveryHoursSpecification", "deliveryLeadTime": { "@type": "QuantitativeValue", "value": "60", "unitCode": "MIN" }, "dayOfWeek": [ "Sunday" ], "opens": "T11:00:00", "closes": "T19:00:00", "validFrom": "2017-01-01T00:00:00-07:00", "validThrough": "2018-12-31T23:59:59-07:00" } ] } ],
PackagingDetails
このタイプ "@context": ["http://gs1.org/voc/", "http://schema.org"]
を使用するには、gs1 コンテキストを追加します。MenuItem
または MenuItemOption
の型に FoodBeverageTobaccoProduct
を追加します。
次の表に、PackagingDetails
タイプのプロパティを示します。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@type |
テキスト | 必須 | これは常に「PackagingDetails」です。 |
packagingRecyclingProcessType |
テキスト | 任意 |
gs1:PackagingRecyclingProcessTypeCode に基づく梱包のリサイクル プロセスのタイプ。例: http://gs1.org/voc/PackagingRecyclingProcessTypeCode-RECYCLABLE 、http://gs1.org/voc/PackagingRecyclingProcessTypeCode-REUSABLE |
hasReturnablePackageDeposit |
ReturnablePackageDepositDetails |
任意 | gs1:ReturnablePackageDepositDetails に記載されている、返品可能なパッケージ デポジットの詳細。 たとえば、ボトルや缶には、返品可能な荷物のデポジットが関連付けられています。 |
次の例は、PackagingDetails
タイプの使用方法を示しています。
{ "@type": ["MenuItem", "FoodBeverageTobaccoProduct"], "@id": "http://www.example.com/bar/menuitem/5", "name": "Sparkling Water", "description": "A 0.5l bottle of sparking water.", "offers": { "@type": "Offer", "sku": "offer-sparkling-water", "price": "1.49", "priceCurrency": "USD" }, "packaging": { "@type": "PackagingDetails", "packagingRecyclingProcessType" : "http://gs1.org/voc/PackagingRecyclingProcessTypeCode-REUSABLE", "hasReturnablePackageDeposit": { "@type": "ReturnablePackageDepositDetails", "returnablePackageDepositAmount": { "@type": "http://gs1.org/voc/PriceSpecification", "http://gs1.org/voc/price": "0.05", "http://gs1.org/voc/priceCurrency": "USD" } } } },
PaymentChargeSpecification
次の表に、PaymentChargeSpecification
タイプのプロパティを示します。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@type |
テキスト | 必須 | 常に「PaymentChargeSpecification」になります。 |
@id |
URL | 任意 | PaymentChargeSpecification の識別子。 |
price |
Number | 必須 | 請求の合計金額。(例: 通貨記号なしの「6.00」)。 |
priceCurrency |
テキスト | 必須 | 価格の 3 文字の ISO 4217 通貨コードを指定します。例: 「USD」 |
eligibleTransactionVolume |
PriceSpecification |
任意 | 最小購入量を示すなど、この支払い料金の仕様が有効な取引量(金額単位)。 |
eligibleQuantity |
QuantitativeValue |
任意 | 支払い請求が有効な注文数量。たとえば、このプロパティを使用すると、1 つの注文に必要な最小数のアイテムを指定できます。 |
validFrom |
DateTime |
任意 | 指定した支払い料金が有効になる日時(タイムゾーンを含む)。例: "2017-05-01T07:00:00-07:00"詳細については、DateTime 形式と Time 形式をご覧ください。 |
validThrough |
DateTime |
任意 | 指定された支払い料金が有効でない日時(タイムゾーンを含む)。例: "2017-05-01T07:30:00-07:00"validThrough の時刻は含まれません。たとえば、この時刻が午後 6 時に設定されている場合、この時刻は午後 5:59:59 まで有効です。詳細については、DateTime 形式と Time 形式をご覧ください。 |
次の例は、PaymentChargeSpecification 要素を示しています。
例
"priceSpecification": [{ "@type": "PaymentChargeSpecification", "@id": "http://www.provider.com/paymentCharge/bar", "priceCurrency": "USD", "price": "6.00", // Charges $6 for processing fee "eligibleQuantity": { "@type": "QuantitativeValue", "minValue": 2 // Minimum of two items required } }]
"@type": ["PaymentChargeSpecification"]
に加えて、UnitPriceSpecification("@type": ["PaymentChargeSpecification", "UnitPriceSpecification"]
)を使用してオブジェクトを拡張できます。この拡張機能には、パーセンテージで計算されるサービス手数料に必要な 2 つのプロパティが追加されています。
プロパティ | タイプ | 必要性 | 説明 |
referenceQuantity |
QuantitativeValue |
必須 | 特定の価格が適用される参照数量。たとえば、referenceQuantity の値が 10 で、unitCode が「P1」の場合、結果は注文額の 10% になります。現在サポートされているのは unitCode 「P1」のみです。 |
basePrice |
Number | 任意 | referenceQuantity に加算される基本料金。たとえば、referenceQuantity が 10 で、unitCode が「P1」で basePrice が 5(USD)の場合、$5 + 注文額の 10% になります。デフォルト値は 0 です。 |
データ エクスポートの料金の例
Google では、Service エンティティの Offer.PriceSpecification
を使用して、ユーザーにさまざまな料金を事前に指定できます。
現在サポートされている PaymentChargeSpecification
は 1 つのみです。すべての種類の料金を 1 つの PaymentChargeSpecification
にまとめる
料金が発生しない場合、Offer.PriceSpecification
は省略されます。
- 例 1: サービス手数料がカート小計の 5% である
- 例 2: サービス手数料が $5
- 例 3: 手荷物料金が 0.1 ドルで、サービス手数料がカート小計の 5% の場合
- 例 4: 手荷物料金が 0.1 ドル、サービス手数料が 1 ドル
- 例 5: サービス手数料が 5% で、必要なチップがカート小計の 10% の場合
例 1
priceSpecification [ { "@type": ["PaymentChargeSpecification", "UnitPriceSpecification"], "referenceQuantity": { "@type": "QuantitativeValue", "value": "5.00", // 5% "unitCode": "P1" // P1 == % }, "priceCurrency": "USD" } ]
例 2
priceSpecification [ { "@type": ["PaymentChargeSpecification"], "priceCurrency": "USD", "price": "5.00" } ]
例 3
priceSpecification [ { "@type": ["PaymentChargeSpecification", "UnitPriceSpecification"], "referenceQuantity": { "@type": "QuantitativeValue", "value": "5.00", // 5% "unitCode": "P1", // P1 == % }, "priceCurrency": "USD", "basePrice": "0.10" // Bag fee $0.1 } ]
例 4
priceSpecification [ { "@type": ["PaymentChargeSpecification"], "priceCurrency": "USD", "price": "1.10" //$1 + $0.1 } ]
例 5
priceSpecification [ { "@type": ["PaymentChargeSpecification", "UnitPriceSpecification"], "referenceQuantity": { "@type": "QuantitativeValue", "value": "15.00", // 5% + 10% "unitCode": "P1" // P1 == % }, "priceCurrency": "USD" } ]
場所
次の表に、Place
タイプのプロパティを示します。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@type |
テキスト | 必須 | 常に「Place」です。 |
address |
PostalAddress |
必須 | 場所の住所。 |
次の例は、プレイス要素を示しています。
例
{ "@type": "Place", // area2 "address": { "@type": "PostalAddress", "postalCode": "94041", "addressCountry": "US" } },
PostalAddress
次の表に、PostalAddress
タイプのプロパティを示します。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@type |
テキスト | 必須 | 常に「PostalAddress」になります。 |
addressLocality |
テキスト | 必須* | 地域区分または市区町村。例: 「サンフランシスコ」。 |
addressRegion |
テキスト | 必須* | 地域または州。例: 「CA」。 |
postalCode |
テキスト | 必須* | 郵便番号。例: 「94102」。 |
streetAddress |
テキスト | 任意 | 番地。例: 「1600 Amphitheatre Pkwy」。 |
addressCountry |
テキスト | 必須 | 2 文字の ISO 3166-1 alpha-2 国コード。例: 「US」。 |
配信プロバイダは、これらのプロパティをリストして、サービスが提供される Service.areaServed
を指定できます。
Restaurant.address
で使用する場合は、PostalAddress
にリストされているすべてのプロパティが必要です。
次の例は、PostalAddress
要素を示しています。
例
"address": { "@type": "PostalAddress", "streetAddress": "12345 Bar Avenue", "addressLocality": "San Francisco", "addressRegion": "CA", "postalCode": "94124", "addressCountry": "US" },
PriceSpecification
次の表に、PriceSpecification
タイプのプロパティを示します。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@type |
テキスト | 必須 | 常に「PriceSpecification」になります。 |
@id |
URL | 任意 | PriceSpecification の識別子。 |
minPrice |
Number | 任意 | 価格が範囲に含まれる場合の最低価格。 |
maxPrice |
Number | 任意 | 価格が範囲に含まれる場合の最高価格。 |
priceCurrency |
テキスト | 必須 | 価格の 3 文字の ISO 4217 通貨コードです。例: 「USD」 |
eligibleQuantity |
QuantitativeValue |
任意 | 価格仕様が有効な注文数量。たとえば、1 ポンドあたり 2 ドル、1 ドルあたり 2 アイテムなどです。 |
次の例は、PriceSpecification
要素を示しています。
例 1
"eligibleTransactionVolume": { "@type": "PriceSpecification", "minPrice": "20.00", // Minimum order price for delivery is $20 "priceCurrency": "USD" }
PropertyValue
MenuItemOption
でオプションを記述するために使用されるプロパティ値のペア。
次の表に、PropertyValue
タイプのプロパティを示します。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@type |
テキスト | 必須 | これは常に「PropertyValue」です。 |
name |
テキスト | 必須 |
オプションの名前またはタイプ。
|
value |
テキスト | 必須 |
オプションの値。値には任意の文字列を指定できます。有効な値は次のとおりです。
|
QuantitativeValue
次の表に、QuantitativeValue
タイプのプロパティを示します。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@type |
テキスト | 必須 | これは常に「QuantitativeValue」です。 |
value |
Number | 任意 | 定量的値またはプロパティ値ノードの値。 |
unitCode |
テキストまたは URL | 任意 |
UN/CEFACT 共通コードまたは URL で表した測定単位。 UN/CEFACT 共通コード以外のコードは、接頭辞の後にコロンを付けて使用できます。 |
maxValue |
Number | 任意 | なんらかの特性やプロパティの上限値。 |
minValue |
Number | 任意 | 特性やプロパティの下限値。 |
次の例は、QuantitativeValue
タイプの使用方法を示しています。
例 1
"deliveryLeadTime": { "@type": "QuantitativeValue", "value": "60", "unitCode": "MIN" }
例 2
"menuAddOn": { "@type": "AddOnMenuSection", "name": "Cheese", "@id": "https://www.example.com/1089/addon/1", // Points to an AddOnMenuSection "eligibleQuantity": "@type": "QuantitativeValue", "minValue": 0, "maxValue": 2 // Maximum of 2 cheeses are allowed } }
例 3
"priceSpecification": [ { "@type": "DeliveryChargeSpecification", "@id": "http://www.provider.com/defaultdeliveryfee/foo", "price": "10.0", "priceCurrency": "USD", "eligibleQuantity": { "@type": "QuantitativeValue", "minValue": 3 // Minimum of 3 items required for delivery } }, { "@type": "DeliveryChargeSpecification", "@id": "http://www.provider.com/deliveryfee/foo/1", "price": "20.0", "priceCurrency": "USD", "validFrom":"T18:00:00", // Valid from 6:00PM "validThrough":"T22:00:00", // Valid to 9:59:59PM "eligibleQuantity": { "@type": "QuantitativeValue", "minValue": 3 // Minimum of 3 items required for delivery } } ]
レストラン
次の表に、Restaurant
タイプのプロパティを示します。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@type |
テキスト | 必須 | 常に「レストラン」になります。 |
@id |
URL | 必須 | レストランまたは配送業者の一意の識別子。たとえば、「http://www.provider.com/326」のように指定します。ここで、「326」はレストランの一意の識別子です。 |
name |
テキスト | 必須 | 注文プロセスで Restaurant を識別できるテキスト。 |
url |
URL | 必須 | レストランを表すドメインの URL。例: http://www.provider.com/somerestaurant |
sameAs |
URL | 任意 | レストランの公式ウェブサイト。(例: http://www.somerestaurant.com)。 |
email |
テキスト | 任意 | レストランの連絡先メールアドレス。 |
description |
テキスト | 任意 | レストランの説明。 |
telephone |
テキスト | 必須 |
次の形式の電話番号: "[+][country_code][phone_#_with_area_code]" 例: 「+16501234567」。 |
priceRange |
テキスト | 任意 | 幅広い価格設定。例: "$$" ($-Inexpensive, $$-Moderate, $$$-Expensive, $$$$-Very Expensive). |
logo |
URL | Optional | Logo of the restaurant in PNG, JPG, or GIF format. For example, "http://www.somerestaurant.com/logo.png". |
image |
URL | Optional | Image of the restaurant. |
servesCuisine |
Array of Text | Optional | Food types that are served at the restaurant. For example,
["sushi","Asian fusion"] . |
address |
PostalAddress |
Required* | Address of the restaurant. |
geo |
GeoCoordinates |
Optional* | Geographic coordinates of the restaurant. |
suitableForDiet |
Array of RestrictedDiet |
Optional | Dietary restrictions this restaurant accommodates (like kosher, vegan, or gluten-free diets). It is an enumerated list. |
aggregateRating |
AggregateRating |
Optional | Overall rating, based on a collection of reviews or ratings of the restaurant. |
additionalProperty |
Array of name value string pairs | Optional |
A restaurant imprint is a section of additional information about the restaurant, such as legal name, legal address, and registration number. This information can be formatted using "\n". For example |
The following examples show the usage of the Restaurant
type:
Example 1
{ "@type": "Restaurant", "@id": "http://www.provider.com/somerestaurant", "url": "www.provider.com/somerestaurant", "name": "Some Restaurant", "sameAs": "http://www.somerestaurant.com", "image": "http://www.somerestaurant.com/image-of-some-restaurant.jpg", "description": "This is the Some Restaurant located on 345 Spear St. San Francisco, 94105 CA. It serves Indian-Mexican fusion cuisine", "address": { "@type": "PostalAddress", "addressLocality": "San Francisco", "addressRegion": "CA", "postalCode": "94105", "streetAddress": "345 Spear St", "addressCountry": "US" }, "geo": { "@type": "GeoCoordinates", "latitude": "37.391115", "longitude": "-122.081099" }, "aggregateRating": { "@type": "AggregateRating", "ratingValue": "4.4", "reviewCount": "89" }, "priceRange": "$$", "telephone": "+16501234567", // 国コード(+1)は必須です "servesCuisine": [ "Indian-Mexican Fusion" ] },例 2
{ "@type": "Restaurant", "@id": "http://www.example.com/threebrotherstacos", "name": "Three Brothers Tacos", "address": { "@type": "PostalAddress", "addressLocality": "Mountain View", "addressRegion": "CA", "postalCode": "94041", "streetAddress": "123 Foo St", "addressCountry": "US" }, "additionalProperty": [ {"name": "imprint", "value": "Three Brothers Tacos\n123 FooSt\nMountain View\nCA 94041, United States\nemail: contact@threebrotherstacos.com\n\nCommercial Register: 123456789"} ] }
Restaurant
エンティティのその他の例については、レストランやメニューのフィードの例をご覧ください。
ReturnablePackageDepositDetails
このタイプを使用するには、gs1 コンテキスト「@context」を追加します。
["http://gs1.org/voc/", "http://schema.org"]
次に、適切な
MenuItem
またはMenuItemOption
の型にFoodBeverageTobaccoProduct
を追加します。次の表に、
ReturnablePackageDepositDetails
タイプのプロパティを示します。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@type |
テキスト | 必須 | 常に「ReturnablePackageDepositDetails」になります。 |
returnablePackageDepositAmount |
gs1:PriceSpecification |
任意 | この商品アイテムのデポジット額( gs1:PriceSpecification ごと)。例: 1 缶あたり $0.25 のデポジット。 |
次の例は、ReturnablePackageDepositDetails
タイプの使用方法を示しています。
{ "@type": ["MenuItem", "FoodBeverageTobaccoProduct"], "@id": "http://www.example.com/bar/menuitem/5", "name": "Sparkling Water", "description": "A 0.5l bottle of sparking water.", "offers": { "@type": "Offer", "sku": "offer-sparkling-water", "price": "1.49", "priceCurrency": "USD" }, "packaging": { "@type": "PackagingDetails", "packagingRecyclingProcessType" : "http://gs1.org/voc/PackagingRecyclingProcessTypeCode-REUSABLE", "hasReturnablePackageDeposit": { "@type": "ReturnablePackageDepositDetails", "returnablePackageDepositAmount": { "@type": "http://gs1.org/voc/PriceSpecification", "http://gs1.org/voc/price": "0.05", "http://gs1.org/voc/priceCurrency": "USD" } } } },
サービス
配達組織による、レストランから地理的位置への注文エンドツーエンド アクションの配信について説明します。
次の表に、Service
タイプのプロパティを示します。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@type |
テキスト | 必須 |
フィードタイプ。
|
@id |
URL | 必須 | フルフィルメント サービスの ID。例: http://www.provider.com/service/1 |
description |
テキスト | 任意 | 項目の説明。 |
serviceType |
テキスト | 必須 | 提供しているサービスの種類。有効な値は「DELIVERY」または「TAKEOUT」です。 |
provider |
Restaurant |
必須 | レストランの一意の識別子への参照。例: http://www.provider.com/somerestaurant |
areaServed |
GeoShape 、Place 、または GeoCircle の配列 |
条件 | サービスを提供する地域。このフィールドはデフォルトでは省略可能ですが、serviceType が「DELIVERY」の場合は必須です。 |
hoursAvailable |
OpeningHoursSpecification の配列 |
必須 | このサービスが利用可能な時間です。 |
specialOpeningHoursSpecification |
OpeningHoursSpecification 、ServiceDeliveryHoursSpecification 、または AdvanceServiceDeliveryHoursSpecification の配列 |
任意 |
より一般的な
|
offers |
Offer の配列 |
条件 |
指定したレストランの宅配サービスに関する詳細。このフィールドはデフォルトでは省略可能ですが、 Service では、 |
hasOfferCatalog |
[Menu 、OfferCatalog] |
必須 |
このサービスのメニューを指定します。テイクアウト、宅配、ケータリングなど、サービスごとに異なるメニューを設定できます。 タイプには "hasOfferCatalog": { "@type": ["Menu", "OfferCatalog"], "@id": "https://www.provider.com/restaurant/menu/1" } |
additionalProperty |
{name, value} の配列 | 任意 |
省略可能なサービス設定情報。アイテムは、オプションのフィールド名に対応するキー
特定の名前と値の詳細については、 "additionalProperty": [{ "name": "disableOrderInstructions", "value": false }, { "name": "disableMenuItemSpecialInstructions", "value": false }, { "name": "disableTipWidget", "value": false }, { "name": "disablePromoWidget", "value": false }, { "name": "menuItemSpecialInstructionsMaxLength", "value": 256 }, { "name": "orderInstructionsMaxLength", "value": 256 }] |
potentialAction |
URL | 任意 |
エンドツーエンドの料理注文エクスペリエンスからリダイレクト サービスに移行するときに使用される宅配/テイクアウト サービスの URL を指定します。例: "PotentialAction": { "url": "https://fopatestagent.com/ordering/restaurant-1/delivery" } |
次の例は、Service タイプの使用方法を示しています。
例
{ "@type": "Service", "@id": "http://www.provider.com/service/1", "serviceType": "DELIVERY", "provider": { "@type": "Restaurant", "@id": "http://www.provider.com/threebrotherstacos" }, "potentialAction": { "url": "https://foprovider.com/ordering/restaurant-1/delivery" }, "hoursAvailable": [ // Ordering times for Monday through Friday { "@type": "OpeningHoursSpecification", "deliveryHours": [ { "@type": "AdvanceServiceDeliveryHoursSpecification", "deliveryLeadTime": { "@type": "QuantitativeValue", "value": "60", "unitCode": "MIN" }, "dayOfWeek": [ "Monday", "Tuesday", "Wednesday", "Thursday", "Friday" ], "opens": "T12:00:00", // Advance ordering begins at noon "closes": "T23:59:59", // Advance ordering ends at midnight "validFrom": "2017-01-01T00:00:00-07:00", "validThrough": "2018-12-31T23:59:59-07:00" }, { "@type": "ServiceDeliveryHoursSpecification", "deliveryLeadTime": { "@type": "QuantitativeValue", "value": "60", "unitCode": "MIN" }, "dayOfWeek": [ "Monday", "Tuesday", "Wednesday", "Thursday", "Friday" ], "opens": "T10:00:00", // ASAP ordering begins at 10AM "closes": "T14:00:00", // ASAP ordering ends at 2PM "validFrom": "2017-01-01T00:00:00-07:00", "validThrough": "2018-12-31T23:59:59-07:00" } ] }, // Ordering times for Saturday and Sunday { "@type": "OpeningHoursSpecification", "deliveryHours": [ { // In this case advance orders are unavailable on Saturday and Sunday "@type": "ServiceDeliveryHoursSpecification", "deliveryLeadTime": { "@type": "QuantitativeValue", "value": "60", "unitCode": "MIN" }, "dayOfWeek": [ "Saturday", "Sunday" ], "opens": "T12:00:00", // ASAP orders start at noon "closes": "T23:59:59", // ASAP orders end at midnight "validFrom": "2017-01-01T00:00:00-07:00", "validThrough": "2018-12-31T23:59:59-07:00" } ] } ], "hasOfferCatalog": { "@type": ["Menu", "OfferCatalog"], "@id": "https://www.provider.com/menu/1" }, "areaServed": [{ "@type": "GeoCircle", // area1 "geoMidpoint": { "@type": "GeoCoordinates", "latitude": "42.362757", "longitude": "-71.087109" }, "geoRadius": "10000" }, { "@type": "Place", // area2 "address": { "@type": "PostalAddress", "postalCode": "94041", "addressCountry": "US" } }, { "@type": "GeoShape", // area3 // Specify latitude first (i.e., lat long lat long ...) "polygon": "37.418128 -122.098167 37.382755 -122.118968 37.368551 -122.047978 37.400949 -122.048106 37.418128 -122.098167" }, { "@type": "GeoShape", // area4 // Specify latitude first (i.e., lat long lat long ...) "polygon": "37.806000 -122.425592 37.775849 -122.419043 37.795547 -122.394046 37.808747 -122.412619" }, { "@type": "GeoCircle", // area5 "geoMidpoint": { "@type": "GeoCoordinates", "latitude": "37.7392607", "longitude": "-122.3895522" }, "geoRadius": "4505" } ], "offers": { "@type": "Offer", "priceSpecification": [{ "@type": "DeliveryChargeSpecification", "@id": "http://www.provider.com/threebrotherstacos/deliveryfee/1", "price": "8.00", // Charges $8 for area5 "priceCurrency": "USD", "eligibleTransactionVolume": { "@type": "PriceSpecification", "minPrice": "20.00", "priceCurrency": "USD" }, "eligibleRegion": [ // area5 { "@type": "GeoCircle", "geoMidpoint": { "@type": "GeoCoordinates", "latitude": "37.7392607", "longitude": "-122.3895522" }, "geoRadius": "4505" } ] }, { "@type": "DeliveryChargeSpecification", "@id": "http://www.provider.com/threebrotherstacos/defaultdeliveryfee", "price": "6.00", // Charges $6 when delivered from Foo restaurant to area1, area2, area3 and area4 (Default charge) "priceCurrency": "USD", "eligibleTransactionVolume": { "@type": "PriceSpecification", "minPrice": "20.00", // Minimum order price for delivery is $20 "priceCurrency": "USD" } } ] } },
サービス エンティティのその他の例については、サービス フィードの例をご覧ください。
ServiceDeliveryHoursSpecification
ユーザーができるだけ早く配達とテイクアウトの注文をスケジュールできるフルフィルメント時間を表します。
通常、opens
の値は closes
の値よりも小さくなります。opens
プロパティと closes
プロパティを使用する場合は、次のガイドラインが適用されます。
ServiceDeliveryHoursSpecification
ではopens
プロパティとcloses
プロパティは省略可能ですが、含めることを強くおすすめします。- 時刻はサービスの現地時間で指定する必要があります。
opens
またはcloses
の値にタイムゾーンを含めないでください。タイムゾーンが指定されている場合、Google はタイムゾーン情報を無視します。 opens
とcloses
が明示的に指定されていない場合、毎日常に ASAP の注文を利用できるとみなされます。opens
とcloses
が同じ場合、ASAP の注文は利用できないとみなされます。opens
がcloses
より大きい場合、終了時刻は翌日であると解釈されます。たとえば、営業時間が 1 月 1 日午後 5 時に設定され、閉店時間が午前 2 時である場合、レストランは 1 月 2 日午前 2 時に営業終了と解釈されます。
次の表に、ServiceDeliveryHoursSpecification
タイプのプロパティを示します。
プロパティ | タイプ | 必要性 | 説明 |
---|---|---|---|
@type |
テキスト | 必須 | 常に「ServiceDeliveryHoursSpecification」になります。 |
validFrom |
DateTime |
任意 |
ユーザーの ASAP 注文を履行できる日時(タイムゾーンを含む)。例: "2017-05-01T07:00:00-07:00"このプロパティが設定されていない場合は、毎日有効とみなされます。 詳細については、DateTime 形式と Time 形式をご覧ください。 |
validThrough |
DateTime |
任意 |
ユーザーの ASAP 注文を処理できない日時(タイムゾーンを含む)。例: "2017-05-01T07:00:00-07:00"このプロパティが設定されていない場合は、毎日有効とみなされます。
詳細については、DateTime 形式と Time 形式をご覧ください。 |
opens |
Time |
任意 |
ユーザーが「できるだけ早く」注文したために、配送サービスが開始される時刻。例: T10:30:00。 時刻はサービスの現地時間で指定する必要があります。 詳細については、DateTime 形式と Time 形式をご覧ください。 |
closes |
Time |
任意 |
お客様の ASAP 注文に対する配送サービスが利用できなくなる時間。例: 「T23:59:59」。
時刻はサービスの現地時間で指定する必要があります。 詳細については、DateTime 形式と Time 形式をご覧ください。 |
dayOfWeek |
DayOfWeek の配列 |
任意 |
ユーザーの ASAP 注文でこのサービスを利用できる曜日。有効な値は次のとおりです。
曜日を指定しない場合、 |
deliveryLeadTime |
QuantitativeValue |
任意 | 注文確定後の配達予定日(分単位)。このプロパティを設定することを強くおすすめします。QuantitativeValue の value フィールドを分数に設定し、unitCode を「MIN」に設定します。 |
次の例は、ServiceDeliveryHoursSpecification
要素を示しています。
例 1
{ "@type": "ServiceDeliveryHoursSpecification", "opens": "T08:00:00", "closes": "T17:00:00", "deliveryLeadTime": { "@type": "QuantitativeValue", "value": "60", // If no exact deliveryLeadTime, put a maximum time "unitCode": "MIN" } },
例 2
{ "@type": "ServiceDeliveryHoursSpecification", "opens": "T08:00:00", "closes": "T17:00:00", "deliveryLeadTime": { "@type": "QuantitativeValue", "minValue": "30", "maxValue": "50", "unitCode": "MIN" } }
列挙型
RestrictedDiet
RestrictedDiet
型には、次の値を使用できます。
- http://schema.org/DiabeticDiet
- http://schema.org/GlutenFreeDiet
- http://schema.org/HalalDiet
- http://schema.org/HinduDiet
- http://schema.org/KosherDiet
- http://schema.org/LowCalorieDiet
- http://schema.org/LowFatDiet
- http://schema.org/LowLactoseDiet
- http://schema.org/LowSaltDiet
- http://schema.org/VeganDiet
- http://schema.org/VegetarianDiet
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2024-02-16 UTC。