v1 इन्वेंट्री स्कीमा

खाने की सूची के फ़ीड, schema.org DataFeed इकाइयों के हिसाब से होते हैं. फ़ूड कैटलॉग फ़ीड में रेस्टोरेंट की जगह की जानकारी होती है, जैसे कि रेस्टोरेंट का पता, मेन्यू, और जगह की जानकारी. साथ ही, इसमें रेस्टोरेंट की सेवा की जानकारी भी होती है. जैसे, डिलीवरी शुल्क, डिलीवरी की जगह, और नीचे बताए गए अन्य आइटम.

DataFeed में एलिमेंट का एक कलेक्शन होता है. हर एलिमेंट, schema.org की शब्दावली में मौजूद किसी एक आइटम को दिखाता है. अपने सभी स्ट्रक्चर्ड डेटा को JSON-LD फ़ॉर्मैट में पब्लिश करने के लिए, DataFeed टाइप का इस्तेमाल किया जा सकता है.

इस स्पेसिफ़िकेशन का इस्तेमाल करके अपने फ़ीड बनाने के बारे में जानकारी पाने के लिए, इन्वेंट्री इंटिग्रेशन की खास जानकारी देखें.

तारीख और समय के फ़ॉर्मैट

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 format:
THH:MM:SS

उदाहरण के लिए:

T08:08:00 // 8:08 AM

जब भी आप DateTime या Time तय करें, तो इन बातों पर ध्यान दें:

  • समय से पहले का "T" प्रीफ़िक्स फ़ॉर्मैट का हिस्सा है और यह ज़रूरी है.
  • DATETIME के लिए समय क्षेत्र तय करना ज़रूरी है. TIME के लिए इसकी ज़रूरत नहीं है.
  • रेस्टोरेंट या सेवा के लिए समय स्थानीय समय के मुताबिक होना चाहिए.

एन्वेलप

किसी भी फ़ूड कैटलॉग फ़ीड के शुरुआती कोड में "लिफ़ाफ़ा" सेक्शन होना चाहिए.

"लिफ़ाफ़ा" हर फ़ीड का टॉप लेवल स्ट्रक्चर होता है. साथ ही, यह DataFeed में नीचे दी गई प्रॉपर्टी होनी चाहिए:

प्रॉपर्टी टाइप ज़रूरत ब्यौरा
@context यूआरएल ज़रूरी है इस्तेमाल किया जा रहा संदर्भ; आम तौर पर, "http://schema.googleapis.com".
@type टेक्स्ट ज़रूरी है यह हमेशा "DataFeed" होता है.
dateModified DateTime ज़रूरी है

ISO 8601 फ़ॉर्मैट में, डेटा फ़ीड का पिछली बार बदला गया DateTime.

ISO_OFFSET_DATE_TIME फ़ॉर्मैट में वह तारीख और समय जब इस फ़ीड में आइटम में बदलाव किया गया था. यह फ़ील्ड मौजूद न होने पर, यह माना जाता है कि अपडेट का समय, वह समय होता है जब Google के सर्वर पर पुश मैसेज मिलता है (या क्रॉल होता है).

अगर पुश और क्रॉल, दोनों का एक साथ इस्तेमाल किया जा रहा है, तो हमारी सलाह है कि आप इसे लागू करें. इस टाइमस्टैंप को टाइम ज़ोन और मिलीसेकंड में स्तर की जानकारी के साथ दिखाया जाना चाहिए. उदाहरण के लिए, "2016-12-28T06:30:00:123-07:00".

आपके बैच फ़ीड में, इकाई का वर्शन तय करने के लिए, फ़ीड के एन्वेलप में मौजूद dateModified फ़ील्ड का इस्तेमाल किया जाता है.

dataFeedElement Menu, Restaurant या Service की कैटगरी ज़रूरी है एक या एक से ज़्यादा ऐसे आइटम जो इस फ़ीड में शामिल हैं. ज़्यादा जानकारी के लिए यहां देखें.

नीचे दिए गए उदाहरण में एन्वेलप दिखाया गया है:

उदाहरण

{
  "@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 टेक्स्ट ज़रूरी है यह हमेशा "AddOnमेन्यूItem" होता है.
@id यूआरएल ज़रूरी है ऐड-ऑन मेन्यू आइटम का यूनीक आइडेंटिफ़ायर.
name टेक्स्ट ज़रूरी है वह टेक्स्ट जो उपयोगकर्ता के मेन्यू ब्राउज़ करते समय, AddOnमेन्यूItem की पहचान करता है.
description टेक्स्ट ज़रूरी नहीं ऐड-ऑन मेन्यू आइटम की जानकारी.
image यूआरएल ज़रूरी नहीं

ऐड-ऑन मेन्यू आइटम की इमेज जो इन दिशा-निर्देशों से मेल खाती है:

  • आसपेक्ट रेशियो 3:2
  • >
  • कम से कम रिज़ॉल्यूशन 600x400 पिक्सल, 72 डीपीआई
  • >
  • सुझाया गया रिज़ॉल्यूशन 1400x960 पिक्सल, 72 डीपीआई
offers Offer की कलेक्शन ज़रूरी*

यह AddOnमेन्यूItem उपलब्ध कराने के लिए एक या एक से ज़्यादा ऑफ़र हैं.

इससे पता चलता है कि AddOnमेन्यूItem कब और किस कीमत पर उपलब्ध है. किसी खास समय पर सिर्फ़ एक ऑफ़र मान्य होना चाहिए. अगर दिन के समय के हिसाब से प्रॉडक्ट की कीमत या उपलब्धता में बदलाव हो सकता है, तो आपके पास कई मान्य ऑफ़र हो सकते हैं. जब ऐड-ऑन या आइटम में, बेस एट्रिब्यूट या ऐड-ऑन आइटम के अलग-अलग वैरिएंट (जैसे, ऐड-ऑन के तौर पर छोटा, मीडियम, और बड़े फ़्राइज़) की वजह से अंतर होता है, तो hasMenuItemOption प्रॉपर्टी का इस्तेमाल करें.

Offer.eligibleQuantity के लिए डिफ़ॉल्ट वैल्यू कम से कम 0 है, ज़्यादा से ज़्यादा 1.

इन Offer प्रॉपर्टी का इस्तेमाल AddOnमेन्यूItem में किया जाता है:

  • Offer.sku ज़रूरी हैं
  • Offer.price ज़रूरी हैं
  • Offer.priceCurrency ज़रूरी हैं
  • Offer.availabilityStarts ज़रूरी नहीं है
  • Offer.availabilityEnds ज़रूरी नहीं है
  • Offer.availableDay ज़रूरी नहीं है
  • Offer.validFrom ज़रूरी नहीं है
  • Offer.validThrough ज़रूरी नहीं है
  • Offer.eligibleQuantity ज़रूरी नहीं है
  • Offer.inventoryLevel ज़रूरी नहीं है
hasMenuItemOptions MenuItemOption की कलेक्शन ज़रूरी*

इस ऐड-ऑन मेन्यू आइटम के लिए, आधार एट्रिब्यूट का कलेक्शन, जो ऐड-ऑन आइटम के अलग-अलग वैरिएंट के बारे में बताता है. जैसे, ऐड-ऑन के तौर पर छोटे, मीडियम, और बड़े फ़्राइज़ को. इस ऐड-ऑन मेन्यू आइटम के लिए उपलब्ध अलग-अलग तरह के विकल्पों के बारे में बताने के लिए विकल्पों का इस्तेमाल करें. ऐसा दो स्थितियों में हो सकता है:

  • बेस वैरिएशन ऐड-ऑन आइटम पर ही होता है (जैसे, ऐड-ऑन के तौर पर छोटा, मीडियम, और बड़े फ़्राइज़)
  • इस ऐड-ऑन के मेन्यू आइटम के अलग-अलग वर्शन इससे जुड़े हैं (जैसे बड़े पिज़्ज़ा के लिए ऐड-ऑन के तौर पर अतिरिक्त चीज़)
suitableForDiet RestrictedDiet की कलेक्शन ज़रूरी नहीं पकवान में खान-पान से जुड़ी पाबंदी का पालन किया गया हो, जैसे कि "GlutenFreeपान" या "Vegan जवाबों". यह संभावित वैल्यू की गिनती की गई सूची है.
nutrition NutritionInformation ज़रूरी नहीं डिश के पोषण की जानकारी, खास तौर पर कैलोरी.
menuAddOn AddOnMenuSection की कलेक्शन ज़रूरी नहीं AddOnमेन्यूItem में एक मेन्यू सेक्शन हो सकता है. इसमें ऐसे आइटम मौजूद होते हैं जिन्हें इस्तेमाल करने की अनुमति है और जिन्हें ऐड-ऑन के तौर पर जोड़ा जा सकता है.

नीचे दिए गए उदाहरण में 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 टेक्स्ट ज़रूरी है यह हमेशा "AddOnमेन्यूChoose" होता है.
@id यूआरएल ज़रूरी है मेन्यू सेक्शन का यूनीक आइडेंटिफ़ायर.
name टेक्स्ट ज़रूरी है ऐसा टेक्स्ट जो उपयोगकर्ता के मेन्यू ब्राउज़ करते समय, AddOnमेन्यूसेक्शन की पहचान कर सकता है.
description टेक्स्ट ज़रूरी नहीं मेन्यू सेक्शन के बारे में जानकारी.
eligibleQuantity QuantitativeValue ज़रूरी नहीं इससे पता चलता है कि इस मेन्यू सेक्शन में, कितने आइटम को ऐड-ऑन के तौर पर शामिल किया जा सकता है. इस फ़ील्ड का इस्तेमाल ऐड-ऑन की संख्या को सीमित करने के लिए किया जा सकता है. जैसे, पिज़्ज़ा पर चुनी जा सकने वाली कम से कम और ज़्यादा से ज़्यादा टॉपिंग की संख्या.
image यूआरएल ज़रूरी नहीं मेन्यू सेक्शन की इमेज.
hasMenuItem AddOnMenuItem की कलेक्शन ज़रूरी* ऐड-ऑन मेन्यू सेक्शन में मौजूद ऐड-ऑन मेन्यू आइटम.
offers Offer की कलेक्शन ज़रूरी नहीं

यह AddOnमेन्यूSection किस समयावधि के दौरान उपलब्ध होगा, यह बताने के लिए Offer.availabilityStarts और Offer.availabilityEnds का इस्तेमाल करें.

नीचे दिए गए लिस्टिंग से पता चलता है कि AddOnमेन्यूSection में किन Offer प्रॉपर्टी का इस्तेमाल किया जाता है.

  • Offer.availabilityStarts ज़रूरी नहीं है
  • Offer.availabilityEnds ज़रूरी नहीं है
  • Offer.availableDay ज़रूरी नहीं है
  • Offer.validFrom ज़रूरी नहीं है
  • Offer.validThrough ज़रूरी नहीं है
hasMenuSection AddOnMenuSection की कलेक्शन ज़रूरी* ऐड-ऑन मेन्यू की लॉजिकल सब-ग्रुपिंग (जैसे कि रात का खाना, ऐपेटाइज़र या मछली से बने पकवान).
defaultOption AddOnMenuItem की कलेक्शन ज़रूरी नहीं

AddOnMenuSection में उपयोगकर्ताओं के लिए डिफ़ॉल्ट रूप से पहले से चुने गए ऐड-ऑन मेन्यू आइटम. उपयोगकर्ता, चुने गए फ़ाइनल विकल्पों में बदलाव कर सकते हैं. अगर कोई defaultOption तय नहीं किया गया है, तो कोई AddOnMenuItem पहले से नहीं चुना गया है.

AddOnMenuSection के hasMenuItem में AddOnMenuItem ऑब्जेक्ट मौजूद होना चाहिए.

defaultOption की संख्या, AddOnMenuSection की ज़्यादा से ज़्यादा eligibleQuantity से ज़्यादा नहीं हो सकती.

numberOfFreeAddOns नंबर ज़रूरी नहीं इससे उन ऐड-ऑन की संख्या का पता चलता है जिन्हें उपयोगकर्ता बिना किसी शुल्क के चुन सकता है.

नीचे दिए गए उदाहरणों में 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
  }
}

तीसरा उदाहरण

"चीज़ सैंडविच" मेन्यू आइटम में "चीज़ का पसंद" AddOnMenuSection शामिल है, जिसमें डिफ़ॉल्ट रूप से "स्विस" और "मोज़रैला" पहले से चुने गए हैं.

{
  "@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 जनवरी को शाम 5 बजे सेट है और बंद होने का समय रात 2 बजे है, तो रेस्टोरेंट को 2 जनवरी को रात 2 बजे बंद माना जाएगा.
  • opens और closes का मतलब है आने वाले समय का टाइम स्लॉट. closes खास है. उदाहरण के लिए, अगर opens सुबह 10 बजे है और closes 15 मिनट के serviceTimeInterval के साथ शाम 4 बजे है, तो पहला टाइम स्लॉट सुबह 10 बजे से और आखिरी टाइम स्लॉट दोपहर 3:45 बजे से शुरू होगा.

नीचे दिए गए टेबल में AdvanceServiceDeliveryHoursSpecification तरह की प्रॉपर्टी के बारे में बताया गया है:

प्रॉपर्टी टाइप ज़रूरत ब्यौरा
@type टेक्स्ट ज़रूरी है यह हमेशा "AdvancedServiceServiceHoursSpecification" के तौर पर सेट होता है.
validFrom DateTime कंडीशनल

वह तारीख जब से उपयोगकर्ताओं के पहले से किए गए ऑर्डर पूरे किए जा सकते हैं. उदाहरण के लिए, "2017-05-01T00:00:00-07:00".

अगर यह प्रॉपर्टी सेट नहीं है, तो माना जाता है कि यह हर दिन मान्य है. validFrom और validThrough प्रॉपर्टी मौजूद नहीं होनी चाहिए या एक साथ मौजूद होनी चाहिए.

अगर Service लेवल पर इस टाइप को specialOpeningHoursSpecification के तौर पर सबमिट किया गया है, तो AdvanceServiceDeliveryHoursSpecification में यह validFrom प्रॉपर्टी ज़रूरी है.

ज़्यादा जानकारी के लिए, तारीख और समय के फ़ॉर्मैट देखें.

validThrough DateTime ज़रूरी नहीं

वह आखिरी तारीख जिसके बाद उपयोगकर्ताओं के पहले से किए गए ऑर्डर पूरे नहीं किए जा सकते. उदाहरण के लिए, "2018-12-01T00:00:00-07:00".

अगर यह प्रॉपर्टी सेट नहीं है, तो माना जाता है कि यह हर दिन मान्य है. validFrom और validThrough प्रॉपर्टी मौजूद नहीं होनी चाहिए या एक साथ मौजूद होनी चाहिए.

अगर Service लेवल पर इस टाइप को specialOpeningHoursSpecification के तौर पर तय किया गया है, तो AdvanceServiceDeliveryHoursSpecification में validThrough प्रॉपर्टी ज़रूरी है.

validThrough के लिए समय खास है. उदाहरण के लिए, अगर वह समय शाम 6 बजे पर सेट है, तो वह समय शाम 5:59:59 बजे तक के लिए मान्य होता है.

ज़्यादा जानकारी के लिए, DateTime और समय के फ़ॉर्मैट देखें.

opens Time ज़रूरी नहीं

ये ऑफ़र, डिलीवरी या टेकआउट के स्लॉट पर लागू होते हैं.

दिन का वह समय जब से उपयोगकर्ताओं के पहले से किए गए ऑर्डर पूरे किए जा सकते हैं. उदाहरण के लिए, सुबह 6:30 बजे "T06:30:00" दिया गया है.

सेवा के लिए समय, स्थानीय समय के हिसाब से होना चाहिए. opens वैल्यू में टाइम ज़ोन शामिल न करें. अगर कोई समय क्षेत्र दिया गया है, तो Google इस जानकारी को अनदेखा कर देता है.

ज़्यादा जानकारी के लिए, DateTime और समय के फ़ॉर्मैट देखें.

closes Time ज़रूरी नहीं

ये ऑफ़र, डिलीवरी या टेकआउट के स्लॉट पर लागू होते हैं.

दिन का वह खास समय जिसके बाद उपयोगकर्ताओं के पहले से किए गए ऑर्डर पूरे नहीं किए जा सकते. जैसे, रात 9:00 बजे "T21:00:00" दिया गया है. closes> खास है. इसलिए, इसे 15 मिनट के serviceTimeInterval के लिए रात 9:00 बजे पर सेट करने का मतलब है कि उपलब्ध आखिरी टाइम स्लॉट रात 8:45 से शुरू होगा.

सेवा के लिए समय, स्थानीय समय के मुताबिक होना चाहिए. closes वैल्यू में टाइम ज़ोन शामिल न करें. अगर कोई टाइम ज़ोन दिया गया है, तो Google इस जानकारी को अनदेखा कर देता है.

ज़्यादा जानकारी के लिए, DateTime और समय के फ़ॉर्मैट देखें.

dayOfWeek DayOfWeek की कलेक्शन ज़रूरी नहीं

हफ़्ते के दिन, जिनके लिए पहले से डिलीवरी करने की सुविधा उपलब्ध है. मान्य वैल्यू ये हैं:

  • "सोमवार"
  • "मंगलवार"
  • "बुधवार"
  • "गुरुवार"
  • "शुक्रवार"
  • "शनिवार"
  • "रविवार"

अगर आपने हफ़्ते के किसी भी दिन की जानकारी नहीं दी है, तो AdvanceServiceDeliveryHoursSpecification सभी दिनों पर लागू होगा.

serviceTimeInterval Duration ज़रूरी है

लगातार दो सेवा समय के बीच का अंतराल.

उदाहरण के लिए: अगर opens और closes सुबह 8 बजे और रात 8 बजे हैं और serviceTimeInterval 15 मिनट का है, तो उपयोगकर्ता ग्राहक को आइटम भेजने का समय सुबह 8 बजे, सुबह 8:15 बजे, सुबह 8:30 बजे, सुबह 8:45 बजे वगैरह रात 8 बजे तक चुन सकता है.

Duration को ISO 8601 अवधि के तौर पर बताया जाना चाहिए. उदाहरण के लिए: "P15M" का मतलब है 15 मिनट के इंटरवल.

advanceBookingRequirement QuantitativeValue ज़रूरी है

पहले से ऑर्डर पूरा करने के लिए, ऑर्डर करने के समय से लेकर ऑर्डर करने की संख्या.

QuantitativeValue की min और max वैल्यू, मिनट की संख्या पर और unitCode को "MIN" पर सेट करें.

उदाहरण के लिए, अगर पहले से ऑर्डर किए जाने वाले ऑर्डर को पूरा करने में कम से कम 60 मिनट लगते हैं और उस ऑर्डर को पूरा किए जाने में दो दिन से ज़्यादा लग सकते हैं, तो min की वैल्यू 60 और max की वैल्यू 2880 होगी.

यहां दिया गया उदाहरण, 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 यूआरएल ज़रूरी नहीं डिलीवरी शुल्क की खास बातों का आइडेंटिफ़ायर.
price नंबर ज़रूरी है डिलीवरी की कुल कीमत, सिर्फ़ संख्या में. मुद्रा का टाइप बताने के लिए, मुद्रा के चिह्न के बजाय priceCurrency प्रॉपर्टी का इस्तेमाल करें. उदाहरण के लिए, मुद्रा के चिह्न के बिना "6.00".
priceCurrency टेक्स्ट ज़रूरी है तीन अक्षर का ISO 4217 मुद्रा कोड. उदाहरण के लिए, "USD".
eligibleTransactionVolume PriceSpecification ज़रूरी नहीं किसी मुद्रा में लेन-देन की संख्या, जिसके लिए डिलीवरी शुल्क की यह खास जानकारी मान्य है. उदाहरण के लिए, कम से कम संख्या में खरीदारी की जानकारी देने के लिए या यह बताने के लिए कि ऑर्डर की एक तय संख्या से ज़्यादा के लिए, अलग से शुल्क नहीं लिया जाता और शिपिंग की सुविधा उपलब्ध है.
eligibleQuantity QuantitativeValue ज़रूरी नहीं ऑर्डर किए गए सामान की संख्या का मेज़रमेंट इंटरवल और यूनिट जिसके लिए, डिलीवरी शुल्क मान्य है. उदाहरण के लिए, इससे यह तय किया जा सकता है कि कोई तय फ़्रेट चार्ज, किसी तय संख्या के लिए ही मान्य है.
eligibleRegion GeoShape, Place या GeoCircle की कैटगरी ज़रूरी नहीं वह जगह या उस भौगोलिक-राजनैतिक इलाके(इलाकों) का Geoshae/GeoCircle, जिनके लिए ऑफ़र या डिलीवरी के शुल्क की खास बातें मान्य हैं. इस प्रॉपर्टी का इस्तेमाल सिर्फ़ तब करें, जब हर इलाके के हिसाब से डिलीवरी शुल्क अलग-अलग हों.
validFrom DateTime ज़रूरी नहीं डिलीवरी के लिए तय किया गया शुल्क मान्य होने की तारीख और समय (समय क्षेत्र भी शामिल है). उदाहरण के लिए, "2017-05-01T06:30:00-07:00". ज़्यादा जानकारी के लिए, DateTime और समय के फ़ॉर्मैट देखें.
validThrough DateTime ज़रूरी नहीं वह तारीख और समय (समय क्षेत्र शामिल है) जिसके बाद डिलीवरी शुल्क तय नहीं किया गया है. उदाहरण के लिए, "2017-05-01T06:30:00-07:00". validThrough के लिए समय खास है: उदाहरण के लिए, अगर वह समय शाम 6 बजे सेट किया गया है, तो समय शाम 5:59:59 बजे तक के लिए मान्य है. ज़्यादा जानकारी के लिए, DateTime और समय के फ़ॉर्मैट देखें.

ये उदाहरण 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
    }
  }
]

तीसरा उदाहरण

"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"]

यह एक्सटेंशन, प्रतिशत में तय किए गए डिलीवरी शुल्क के लिए दो अतिरिक्त प्रॉपर्टी देता है.

प्रॉपर्टी टाइप ज़रूरत ब्यौरा
referenceQuantity QuantitativeValue ज़रूरी है रेफ़रंस की वह संख्या जिसके लिए कोई कीमत लागू होती है. उदाहरण के लिए, "P1" के unitCode के साथ वैल्यू 10 का referenceQuantity ऑर्डर वैल्यू का 10% नतीजा देता है. फ़िलहाल, सिर्फ़ unitCode "P1" का इस्तेमाल किया जा सकता है.
basePrice नंबर ज़रूरी नहीं referenceQuantity के अलावा, मूल शुल्क. उदाहरण के लिए, "P1" के unitCode के साथ 10 में से referenceQuantity और डॉलर में 5 के basePrice नतीजे, ऑर्डर वैल्यू का 5 डॉलर + 10% मिलता है. डिफ़ॉल्ट वैल्यू 0 है.

डिलीवरी शुल्क के उदाहरण

Google आपको सेवा इकाई के Offer.PriceSpecification का इस्तेमाल करके पहले ही उपयोगकर्ताओं से कई तरह के शुल्क तय करने की सुविधा देता है.

ध्यान दें कि ऑर्डर करने की पूरी प्रोसेस, फ़िलहाल सिर्फ़ एक DeliveryChargeSpecification के साथ काम करती है. सभी तरह के शुल्क को एक ही DeliveryChargeSpecification में जोड़ें.

इलाके, दूरी, और ऑर्डर की कीमत के आधार पर डिलीवरी शुल्क की जानकारी देने का तरीका जानने के लिए, सेवा फ़ीड के उदाहरण देखें.

अगर कोई शुल्क नहीं है, तो Offer.PriceSpecification को हटा दिया जाता है.

  • पहला उदाहरण: डिलीवरी शुल्क, कार्ट की कुल कीमत का 5% है
  • दूसरा उदाहरण: डिलीवरी शुल्क 500 रुपये है
  • तीसरा उदाहरण: डिलीवरी शुल्क 500 रुपये + कार्ट की कुल कीमत का 10% है
  • चौथा उदाहरण: डिलीवरी शुल्क पांच डॉलर और बैग पर लगने वाला शुल्क 0.1 डॉलर है
  • उदाहरण 5: डिलीवरी शुल्क 5% है और सुविधा शुल्क, कार्ट की कुल कीमत का 2% है
  • छठा उदाहरण: एक कि॰मी॰ की अतिरिक्त दूरी के लिए, डिलीवरी शुल्क 5 डॉलर और एक डॉलर है

उदाहरण 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"
  }
]

तीसरा उदाहरण

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"
  },
]

छठा उदाहरण

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 नंबर ज़रूरी है GeoCircle की अनुमानित दायरा (मीटर में) दिखाता है.

इस उदाहरण में GeoCircle एलिमेंट दिखाया गया है:

उदाहरण

{
  "@type": "GeoCircle",
  "geoMidpoint": {
    "@type": "GeoCoordinates",
    "latitude": "37.7392607",
    "longitude": "-122.3895522"
  },
  "geoRadius": "4505"
}

GeoCoordinates

नीचे दी गई टेबल में GeoCoordinates तरह की प्रॉपर्टी के बारे में बताया गया है:

प्रॉपर्टी टाइप ज़रूरत ब्यौरा
@type टेक्स्ट ज़रूरी है यह हमेशा "GeoCoordiates" होता है.
latitude नंबर ज़रूरी है

डिग्री में अक्षांश. वैल्यू को -90 से लेकर 90 तक की रेंज में रखा जा सकता है. अगर दी गई वैल्यू -90 से कम है, तो यह -90 पर सेट होती है. वहीं, अगर वैल्यू 90 से ज़्यादा है, तो यह 90 पर सेट होती है.

कम से कम पांच दशमलव स्थान सटीक होने चाहिए.

longitude नंबर ज़रूरी है

डिग्री में देशांतर. -180 से 180 की रेंज से बाहर की वैल्यू को रैप कर दिया जाता है, ताकि वे रेंज के अंदर आएं. उदाहरण के लिए, -190 की वैल्यू 170 में बदल दी जाती है. 190 की वैल्यू -170 में बदल जाती है. इससे यह पता चलता है कि दुनिया भर में देशांतरों की बात की जाती है.

कम से कम पांच दशमलव स्थान सटीक होने चाहिए.

इस उदाहरण में GeoCoordinates एलिमेंट दिखाया गया है:

उदाहरण

"geo": {
  "@type": "GeoCoordinates",
  "latitude": "35.7392607",
  "longitude": "-120.3895522"
}

GeoShape

नीचे दी गई टेबल में GeoShape तरह की प्रॉपर्टी के बारे में बताया गया है:

प्रॉपर्टी टाइप ज़रूरत ब्यौरा
@type टेक्स्ट ज़रूरी है यह हमेशा "GeoSHAe" होता है.
polygon टेक्स्ट का कलेक्शन ज़रूरी है

एक पॉलीगॉन या मल्टीपॉलीगॉन, जिसे तीन या उससे ज़्यादा स्पेस वाले बिंदुओं की सीरीज़ के तौर पर दिखाया गया है. यह सुझाव दिया जाता है कि पहला और आखिरी पॉइंट एक जैसे हों, लेकिन ऐसा करना ज़रूरी नहीं है.

पॉलीगॉन या मल्टीपॉलीगॉन में हर पॉइंट को एक अक्षांश बिंदु के बाद तय किया जाता है. इसके बाद एक देशांतर बिंदु होता है. आपको घड़ी की उलटी दिशा में भी पॉइंट बताने होंगे.

ज़्यादातर मामलों में, आपके पास एक ही पॉलीगॉन होगा. ज़्यादा मुश्किल इस्तेमाल के उदाहरणों के लिए, डिलीवरी सेवा देने के इलाके का दस्तावेज़ देखें.

ये उदाहरण 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”]
},

तीसरा उदाहरण

{
  "@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 यूआरएल ज़रूरी है मेन्यू के लिए यूनीक आइडेंटिफ़ायर.
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"
      }
    }
  ]
}

तीसरा उदाहरण

इस उदाहरण में, 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 टाइप के लिए प्रॉपर्टी की सूची दी गई है:

प्रॉपर्टी टाइप ज़रूरत ब्यौरा
@type टेक्स्ट ज़रूरी है यह हमेशा "मेन्यूडिसक्लेमर" होता है.
@id यूआरएल ज़रूरी है मेन्यू डिसक्लेमर के लिए यूनीक आइडेंटिफ़ायर.
text टेक्स्ट ज़रूरी है डिसक्लेमर का टेक्स्ट. उदाहरण के लिए, "वयस्कों के लिए रोज़ाना ऊर्जा की औसत खपत 8700 किलोजूल है."
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 टाइप के लिए प्रॉपर्टी की सूची दी गई है:

प्रॉपर्टी टाइप ज़रूरत ब्यौरा
@type टेक्स्ट ज़रूरी है यह हमेशा "मेन्यूआइटम" होता है.
@id यूआरएल ज़रूरी है मेन्यू आइटम का यूनीक आइडेंटिफ़ायर.
name टेक्स्ट ज़रूरी है वह टेक्स्ट जो तब MenuItem की पहचान कर सकता है, जब कोई उपयोगकर्ता मेन्यू ब्राउज़ कर रहा हो.
description टेक्स्ट ज़रूरी नहीं मेन्यू आइटम की जानकारी.
image यूआरएल ज़रूरी नहीं

मेन्यू आइटम की इमेज. इमेज से जुड़े इन दिशा-निर्देशों का पालन करें:

  • आसपेक्ट रेशियो 3:2
  • कम से कम रिज़ॉल्यूशन 600x400 पिक्सल, 72 डीपीआई
  • सुझाया गया रिज़ॉल्यूशन 1400x960 पिक्सल 72 डीपीआई
menuAddOn AddOnMenuSection की कलेक्शन ज़रूरी नहीं मेन्यू सेक्शन में मौजूद ऐसे आइटम जिन्हें मेन्यू आइटम में ऐड-ऑन के तौर पर जोड़ा जा सकता है.
offers Offer की कलेक्शन ज़रूरी*

इस MenuItem की सुविधा देने के लिए, एक या एक से ज़्यादा ऑफ़र. इससे पता चलता है कि यह MenuItem कब और किस कीमत पर उपलब्ध है. किसी खास समय पर सिर्फ़ एक ऑफ़र ही मान्य होना चाहिए. अगर दिन के समय के हिसाब से कीमत/उपलब्धता के हिसाब से डेटा उपलब्ध होता है, तो एक से ज़्यादा ऑफ़र दिए जा सकते हैं. अगर खाने के आइटम के लिए बुनियादी एट्रिब्यूट (जैसे, पिज़्ज़ा का साइज़) अलग है, तो menuItemOption का इस्तेमाल करें. Offer.eligibleQuantity के लिए डिफ़ॉल्ट वैल्यू कम से कम 0 है और कोई ऊपरी सीमा नहीं है.

नीचे दी गई सूची में दिखाया गया है कि MenuItem में कौनसी Offer प्रॉपर्टी इस्तेमाल की गई हैं.

  • Offer.sku ज़रूरी हैं
  • Offer.price ज़रूरी हैं
  • Offer.priceCurrency ज़रूरी हैं
  • Offer.availabilityStarts ज़रूरी नहीं है
  • Offer.availabilityEnds ज़रूरी नहीं है
  • Offer.availableDay ज़रूरी नहीं है
  • Offer.validFrom ज़रूरी नहीं है
  • Offer.validThrough ज़रूरी नहीं है
  • Offer.eligibleQuantity ज़रूरी नहीं है
  • Offer.inventoryLevel ज़रूरी नहीं है
hasMenuItemOptions MenuItemOption की कलेक्शन ज़रूरी है इस मेन्यू आइटम के लिए आधार विकल्पों/वैरिएशन की सूची. विकल्पों का इस्तेमाल, आइटम के लिए उपलब्ध अलग-अलग तरह के बुनियादी विकल्पों के बारे में बताने के लिए किया जाना चाहिए, जैसे कि छोटा, मध्यम, और बड़ा.
suitableForDiet RestrictedDiet की कलेक्शन ज़रूरी नहीं आइटम, खान-पान से जुड़ी ज़रूरी पाबंदी का पालन करता हो, जैसे कि "http://schema.org/GlutenFree चार्ट" या "http://schema.org/Vegan जवाबों". यह संभावित वैल्यू की गिनती की गई सूची है.
nutrition NutritionInformation ज़रूरी नहीं पकवान के पोषण की जानकारी, खास तौर पर कैलोरी की जानकारी.
hasAllergen AllergenDetails ज़रूरी नहीं हर gs1:AllergenDetails में मौजूद पकवान से होने वाली एलर्जी. इस प्रॉपर्टी का इस्तेमाल करने के लिए, gs1 कॉन्टेक्स्ट जोड़ें: "@context": ["http://gs1.org/voc/", "http://schema.org"]. साथ ही, MenuItem के टाइप में FoodBeverageTobaccoProduct जोड़ें.
additive AdditiveDetails की कैटगरी ज़रूरी नहीं हर gs1:AdditiveDetails में डिश के ऐडिटिव. यह संभावित वैल्यू की गिनती की गई सूची है. इस प्रॉपर्टी का इस्तेमाल करने के लिए, gs1 में संदर्भ जोड़ें: "@context": ["http://gs1.org/voc/", "http://schema.org"]. साथ ही, MenuItem के टाइप में FoodBeverageTobaccoProduct जोड़ें.
packaging PackagingDetails ज़रूरी नहीं इस मेन्यू आइटम की पैकेजिंग और रीसाइकल करने की जानकारी gs1:PackagingDetails. इस प्रॉपर्टी का इस्तेमाल करने के लिए, gs1 कॉन्टेक्स्ट जोड़ें: "@context": ["http://gs1.org/voc/", "http://schema.org"]. साथ ही, 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"
    }
  }
]

तीसरा उदाहरण

{
  "@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 टाइप के लिए प्रॉपर्टी की सूची दी गई है:

प्रॉपर्टी टाइप ज़रूरत ब्यौरा
@type टेक्स्ट ज़रूरी है यह हमेशा "मेन्यूItemOption" होता है.
value PropertyValue ज़रूरी है PropertyValue में एक ऐसा नाम/वैल्यू पेयर है जो विकल्प को दिखाता है.
offers Offer की कलेक्शन ज़रूरी है

इसे MenuItemOption उपलब्ध कराने के लिए, एक या उससे ज़्यादा ऑफ़र. इससे यह पता चलता है कि मेन्यू आइटम का यह विकल्प, कब और किस कीमत पर उपलब्ध है. किसी खास समय पर सिर्फ़ एक ऑफ़र मान्य होना चाहिए. अगर दिन के समय के हिसाब से कीमत/खरीदारी के लिए उपलब्धता में बदलाव हो सकता है, तो आपके पास कई मान्य ऑफ़र हो सकते हैं. Offer.eligibleQuantity का इस्तेमाल न करें. MenuItemOption म्युचुअली एक्सक्लूसिव है, इसलिए Offer.eligibleQuantity को दिए जाने पर उसे अनदेखा कर दिया जाता है.

नीचे दी गई सूची में दिखाया गया है कि MenuItemOption में कौनसी Offer प्रॉपर्टी इस्तेमाल की गई हैं.

  • Offer.sku ज़रूरी हैं
  • Offer.price ज़रूरी हैं
  • Offer.priceCurrency ज़रूरी हैं
  • Offer.availabilityStarts ज़रूरी नहीं है
  • Offer.availabilityEnds ज़रूरी नहीं है
  • Offer.availableDay ज़रूरी नहीं है
  • Offer.validFrom ज़रूरी नहीं है
  • Offer.validThrough ज़रूरी नहीं है
  • Offer.eligibleQuantity ज़रूरी नहीं है
  • Offer.inventoryLevel ज़रूरी नहीं है
menuAddOn Array of AddOnMenuSection ज़रूरी नहीं अनुमति वाले आइटम का मेन्यू सेक्शन, जिन्हें ऐड-ऑन के तौर पर जोड़ा जा सकता है. इसका इस्तेमाल सिर्फ़ तब करें, जब ऐड-ऑन किसी खास मेन्यू आइटम के विकल्प के हिसाब से हों. अगर ऐसा नहीं है, तो MenuItem.menuAddOn प्रॉपर्टी का इस्तेमाल करके ऐड-ऑन उपलब्ध कराएं.
suitableForDiet RestrictedDiet की कलेक्शन ज़रूरी नहीं सूची में शामिल ऐसी सूची जिसमें उन डाइट के बारे में बताया गया हो जिनमें यह आइटम, बताए गए खान-पान से जुड़ी पाबंदियों का पालन करता है (जैसे कि "http://schema.org/GlutenFreeपान" या "http://schema.org/Vegan जवाबों").
nutrition NutritionInformation ज़रूरी नहीं पकवान के पोषण की जानकारी, खास तौर पर कैलोरी की जानकारी.
hasAllergen AllergenDetails ज़रूरी नहीं हर gs1:AllergenDetails में मौजूद पकवान से होने वाली एलर्जी. इस प्रॉपर्टी का इस्तेमाल करने के लिए, gs1 कॉन्टेक्स्ट जोड़ें: "@context": ["http://gs1.org/voc/", "http://schema.org"]. साथ ही, MenuItemOption के टाइप में FoodBeverageTobaccoProduct जोड़ें.
additive AdditiveDetails की कैटगरी ज़रूरी नहीं हर gs1:AdditiveDetails में डिश के अतिरिक्त. यह संभावित वैल्यू की गिनती की गई सूची है. इस प्रॉपर्टी का इस्तेमाल करने के लिए, gs1 में संदर्भ जोड़ें: "@context": ["http://gs1.org/voc/", "http://schema.org"]. साथ ही, MenuItemOption के टाइप में FoodBeverageTobaccoProduct जोड़ें.
packaging PackagingDetails ज़रूरी नहीं इस मेन्यू आइटम की पैकेजिंग और रीसाइकलिंग की जानकारी gs1:PackagingDetails इस प्रॉपर्टी का इस्तेमाल करने के लिए gs1 संदर्भ जोड़ें: "@context": ["http://gs1.org/voc/", "http://schema.org"]. साथ ही, 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 टाइप की प्रॉपर्टी दी गई हैं:

प्रॉपर्टी टाइप ज़रूरत ब्यौरा
@type टेक्स्ट ज़रूरी है यह हमेशा "मेन्यूसेक्शन" होता है.
@id यूआरएल ज़रूरी है मेन्यू सेक्शन का यूनीक आइडेंटिफ़ायर.
name टेक्स्ट ज़रूरी है ऐसा टेक्स्ट जो तब MenuSection की पहचान कर सकता है, जब कोई उपयोगकर्ता मेन्यू को ब्राउज़ करता है.
description टेक्स्ट ज़रूरी नहीं मेन्यू सेक्शन के बारे में जानकारी.
hasMenuSection MenuSection की कलेक्शन ज़रूरी नहीं MenuSection का लॉजिकल सब-ग्रुपिंग. उदाहरण के लिए, डिनर मेन्यू के सेक्शन में कई सब-मेन्यू सेक्शन हो सकते हैं, जैसे कि "पोल्ट्री पकवान" या "शाकाहारी".
hasMenuItem MenuItem की कलेक्शन ज़रूरी नहीं MenuSection में मौजूद मेन्यू आइटम.
offers Offer की कलेक्शन ज़रूरी नहीं

इस MenuSection के दिखाए जाने की समयावधि बताने के लिए, Offer.availabilityStarts और Offer.availabilityEnds का इस्तेमाल करें. Offer.eligibleQuantity का इस्तेमाल न करें.

इस सूची से पता चलता है कि MenuSection में कौनसी Offer प्रॉपर्टी इस्तेमाल की जाती हैं:

  • Offer.availabilityStarts ज़रूरी नहीं है
  • Offer.availabilityEnds ज़रूरी नहीं है
  • Offer.availableDay ज़रूरी नहीं है
  • Offer.validFrom ज़रूरी नहीं है
  • Offer.validThrough ज़रूरी नहीं है
image यूआरएल ज़रूरी नहीं मेन्यू सेक्शन की इमेज.

ये उदाहरण 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 इकाइयों के ज़्यादा उदाहरणों के लिए, रेस्टोरेंट और मेन्यू फ़ीड के उदाहरण देखें.

NutritionInformation

नीचे दी गई टेबल में NutritionInformation तरह की प्रॉपर्टी के बारे में बताया गया है. मेज़रमेंट की इकाइयां केस-सेंसिटिव होती हैं. उदाहरण के लिए, "Cal" स्वीकार किया जाता है, लेकिन "कैलो" को स्वीकार नहीं किया जाता.

प्रॉपर्टी टाइप ज़रूरत ब्यौरा
@type टेक्स्ट ज़रूरी है यह हमेशा "Nutritioninformation" होता है.
description टेक्स्ट ज़रूरी नहीं मुफ़्त टेक्स्ट में पोषण की जानकारी. उदाहरण के लिए, "इसमें प्रिज़र्वेटिव शामिल हैं".
calories टेक्स्ट ज़रूरी नहीं

नीचे दिए गए फ़ॉर्मैट का इस्तेमाल करके कैलोरी, किलो कैलोरी या किलोजूल में कैलोरी की संख्या:

number Cal_kcal_OR_kJ

उदाहरण के लिए, "240 कैलोरी".

carbohydrateContent टेक्स्ट ज़रूरी नहीं

नीचे दिए गए फ़ॉर्मैट का इस्तेमाल करके, आम तौर पर ग्राम में कार्बोहाइड्रेट की मात्रा:

number g_OR_mg

उदाहरण के लिए, "7 ग्रा॰".

cholesterolContent टेक्स्ट ज़रूरी नहीं

नीचे दिए गए फ़ॉर्मैट में कोलेस्ट्रॉल की मात्रा, आम तौर पर मि॰ग्रा॰ में:

number g_OR_mg

उदाहरण के लिए, "12 mg".

fatContent टेक्स्ट ज़रूरी नहीं

फ़ैट की मात्रा, आम तौर पर ग्राम में, नीचे दिए गए फ़ॉर्मैट का इस्तेमाल करके:

number g_OR_mg

उदाहरण के लिए, "42 g".

fiberContent टेक्स्ट ज़रूरी नहीं

नीचे दिए गए फ़ॉर्मैट का इस्तेमाल करके, फ़ाइबर के g या mg की संख्या:

number g_OR_mg
proteinContent टेक्स्ट ज़रूरी नहीं

नीचे दिए गए फ़ॉर्मैट का इस्तेमाल करके, ग्राम या मि॰ग्रा॰ प्रोटीन की संख्या:

number g_OR_mg
saturatedFatContent टेक्स्ट ज़रूरी नहीं

नीचे दिए गए फ़ॉर्मैट का इस्तेमाल करके, ग्राम या मि॰ग्रा॰ सैचुरेटेड फ़ैट की संख्या:

number g_OR_mg
servingSize टेक्स्ट ज़रूरी नहीं मात्रा या वज़न के हिसाब से mL, L, g या kg में सर्व करने का साइज़.
sodiumContent टेक्स्ट ज़रूरी नहीं

नीचे दिए गए फ़ॉर्मैट का इस्तेमाल करके, सोडियम के मि॰ग्रा॰ या ग्राम की संख्या:

number g_OR_mg
sugarContent टेक्स्ट ज़रूरी नहीं

नीचे दिए गए फ़ॉर्मैट का इस्तेमाल करके, ग्राम या मि॰ग्रा॰ शुगर की संख्या:

number g_OR_mg
transFatContent टेक्स्ट ज़रूरी नहीं

नीचे दिए गए फ़ॉर्मैट का इस्तेमाल करके, ग्राम या मि॰ग्रा॰ ट्रांस फ़ैट की संख्या:

number g_OR_mg
unsaturatedFatContent टेक्स्ट ज़रूरी नहीं

नीचे दिए गए फ़ॉर्मैट का इस्तेमाल करके अनसैचुरेटेड फ़ैट की मात्रा, आम तौर पर ग्राम में:

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 टेक्स्ट ज़रूरी है यह हमेशा "ऑफ़र" पर सेट होता है.
sku टेक्स्ट कंडीशनल

ऑफ़र का यूनीक आइडेंटिफ़ायर. यह ऐसी कोई भी टेक्स्ट वैल्यू हो सकती है जो Offer में यूनीक हो. sku वैल्यू, चेकआउट में दी गई हैं और इन्हें lineitem में offerId के तौर पर सबमिट किया गया है.

इस प्रॉपर्टी का इस्तेमाल, सिर्फ़ इन तरह के ऑफ़र में किया जाता है:

  • AddOnMenuItem.Offer
  • MenuItem.Offer
  • MenuOption.Offer
price टेक्स्ट कंडीशनल

ऑफ़र किए गए आइटम की कीमत. उदाहरण के लिए, मुद्रा के चिह्न के बिना "6.00".

इस प्रॉपर्टी का इस्तेमाल सिर्फ़ इन तरह के ऑफ़र के लिए किया जा सकता है:

  • AddOnMenuItem.Offer
  • MenuItem.Offer
  • MenuOption.Offer

इसका इस्तेमाल, नीचे दिए गए ऑफ़र के लिए नहीं किया जाता:

  • AddOnMenuSection.Offer
  • MenuSection.Offer
  • Service.Offer
priceCurrency टेक्स्ट कंडीशनल

PriceSpecification और इसके सब-टाइप के साथ कीमत या कीमत के कॉम्पोनेंट की मुद्रा (तीन अक्षर वाले ISO 4217 फ़ॉर्मैट में).

इस प्रॉपर्टी का इस्तेमाल सिर्फ़ इन तरह के ऑफ़र के लिए किया जा सकता है:

  • AddOnMenuItem.Offer
  • MenuItem.Offer
  • MenuOption.Offer

इसका इस्तेमाल, नीचे दिए गए ऑफ़र के लिए नहीं किया जाता:

  • AddOnMenuSection.Offer
  • MenuSection.Offer
  • Service.Offer
availabilityStarts DateTime या Time ज़रूरी नहीं वह तारीख और समय या सिर्फ़ वह समय जब ऑफ़र उपलब्ध होगा. उदाहरण के लिए, अगर पैनकेक सुबह 7:00 बजे दिखाया जाता है, तो इस फ़ील्ड की वैल्यू इस तरह दिख सकती है: "2017-05-01T07:00:00-07:00". ज़्यादा जानकारी के लिए, DateTime और समय के फ़ॉर्मैट देखें.
availabilityEnds DateTime या Time ज़रूरी नहीं तारीख और समय या सिर्फ़ वह समय जब ऑफ़र उपलब्ध नहीं होगा. यह समय खास है. उदाहरण के लिए, अगर पैनकेक की उपलब्धता सुबह 10 बजे खत्म होती है, तो आखिरी पैनकेक सुबह 9:59:59 बजे दिखाया जा सकता है. इसके बाद इस फ़ील्ड की वैल्यू इस तरह दिख सकती है: "2017-05-01T10:00:00-07:00". ज़्यादा जानकारी के लिए, DateTime और समय के फ़ॉर्मैट देखें.
availableDay DayOfWeek की श्रेणी ज़रूरी नहीं

हफ़्ते के वे दिन जिनमें यह आइटम उपलब्ध है. मान्य मान हैं:

  • "सोमवार"
  • "मंगलवार"
  • "बुधवार"
  • "गुरुवार"
  • "शुक्रवार"
  • "शनिवार"
  • "रविवार"

अगर हफ़्ते के अलग-अलग दिनों के लिए आपकी उपलब्धता अलग-अलग है, तो एक से ज़्यादा Offer ऑब्जेक्ट का इस्तेमाल करें, जैसा कि नीचे दिए गए उदाहरणों में दिखाया गया है.

validFrom DateTime ज़रूरी नहीं

वह तारीख और समय (समय क्षेत्र भी शामिल है) जब बताई गई कीमत मान्य है. उदाहरण के लिए, लंच के समय पास्ता की कीमत 8 डॉलर और डिनर के लिए 10 डॉलर होती है. ज़्यादा जानकारी के लिए, DateTime और समय के फ़ॉर्मैट देखें.

इस प्रॉपर्टी का इस्तेमाल, इन ऑफ़र टाइप में किया जा सकता है:

  • AddOnMenuItem.Offer
  • MenuItem.Offer
  • MenuOption.Offer
  • AddOnMenuSection.Offer
  • MenuSection.Offer

इस प्रॉपर्टी का इस्तेमाल, नीचे दिए गए ऑफ़र के लिए नहीं किया जाता:

  • Service.Offer
validThrough DateTime ज़रूरी नहीं

वह तारीख और समय (समय क्षेत्र भी शामिल है) जिसके बाद तय की गई कीमत मान्य नहीं रहती. उदाहरण के लिए, लंच के समय पास्ता की कीमत आठ डॉलर और रात के खाने के लिए 10 डॉलर होती है. validThrough के लिए समय खास है: उदाहरण के लिए, अगर समय शाम 6 बजे सेट किया गया है, तो समय शाम 5:59:59 बजे तक के लिए मान्य है. ज़्यादा जानकारी के लिए, DateTime और समय के फ़ॉर्मैट देखें.

इस प्रॉपर्टी का इस्तेमाल, इन ऑफ़र टाइप में किया जा सकता है:

  • AddOnMenuItem.Offer
  • MenuItem.Offer
  • MenuOption.Offer
  • AddOnMenuSection.Offer
  • MenuSection.Offer

इस प्रॉपर्टी का इस्तेमाल, नीचे दिए गए ऑफ़र के टाइप में नहीं किया जाता.

  • Service.Offer
eligibleQuantity QuantitativeValue ज़रूरी नहीं

ऑर्डर करने की वे संख्या जिनके लिए यह आइटम इस्तेमाल किया जा सकता है. उदाहरण के लिए, किसी रेस्टोरेंट की डिलीवरी के लिए कम से कम 10 पिज़्ज़ा ऑर्डर करने की ज़रूरत पड़ सकती है.

यह वैल्यू ज़रूरी नहीं है. डिफ़ॉल्ट रूप से, कोई सीमा तय नहीं होती है. हालांकि, रेस्टोरेंट ज़्यादा से ज़्यादा सीमा तय कर सकता है. कम से कम सीमाएं तब ही लागू होती हैं, जब कोई उपयोगकर्ता आइटम चुनता है.

इस प्रॉपर्टी का इस्तेमाल, इन ऑफ़र टाइप में किया जा सकता है:

  • AddOnMenuItem.Offer
  • MenuItem.Offer
  • MenuOption.Offer

इस प्रॉपर्टी का इस्तेमाल, नीचे दिए गए ऑफ़र के टाइप में नहीं किया जाता.

  • AddOnMenuSection.Offer
  • MenuSection.Offer
  • Service.Offer
aggregateRating AggregateRating ज़रूरी नहीं

कुल रेटिंग, समीक्षाओं के संग्रह या आइटम की रेटिंग के आधार पर तय की जाती है.

इस प्रॉपर्टी का इस्तेमाल, इन ऑफ़र टाइप में किया जा सकता है:

  • AddOnMenuItem.Offer
  • MenuItem.Offer

इस प्रॉपर्टी का इस्तेमाल इन टाइप में नहीं किया जाता है.

  • AddOnMenuSection.Offer
  • MenuItemOption.Offer
  • MenuSection.Offer
  • Service.Offer
inventoryLevel QuantitativeValue ज़रूरी नहीं

किसी आइटम या आइटम के लिए, मौजूदा अनुमानित इन्वेंट्री लेवल.

इस प्रॉपर्टी का इस्तेमाल, इन ऑफ़र टाइप में किया जा सकता है:

  • AddOnMenuItem.Offer
  • MenuItem.Offer
  • MenuItemOption.Offer

इस प्रॉपर्टी का इस्तेमाल, नीचे दिए गए ऑफ़र के लिए नहीं किया जाता:

  • AddOnMenuSection.Offer
  • MenuSection.Offer
  • Service.Offer
priceSpecification DeliveryChargeSpecification या PaymentChargeSpecification का कलेक्शन ज़रूरी नहीं

जब Service.Offer में इस्तेमाल किया जाता है, तब यह डिलीवरी की कीमत की जानकारी देता है. अगर एक से ज़्यादा DeliveryChargeSpecification ऑब्जेक्ट लागू होते हैं, तो सबसे खास ऑब्जेक्ट को लागू किया जाता है. किसी भी तरह की गड़बड़ी से बचने के लिए, म्युचुअली एक्सक्लूसिव DeliveryChargeSpecification ऑब्जेक्ट इस्तेमाल करें.

इस प्रॉपर्टी का इस्तेमाल, इन ऑफ़र टाइप में किया जा सकता है:

  • Service.Offer

इस प्रॉपर्टी का इस्तेमाल, नीचे दिए गए ऑफ़र के लिए नहीं किया जाता:

  • AddOnMenuItem.Offer
  • AddOnMenuSection.Offer
  • MenuItem.Offer
  • MenuOption.Offer
  • MenuSection.Offer
offeredBy Restaurant आईडी की कैटगरी ज़रूरी नहीं

उन रेस्टोरेंट के बारे में बताता है जहां यह Offer ऑफ़र किया जाता है.

अगर इसके बारे में नहीं बताया गया है, तो सभी रेस्टोरेंट में यह Offer ऑफ़र किया जाएगा.

इस प्रॉपर्टी का इस्तेमाल, इन ऑफ़र टाइप में किया जा सकता है:

  • AddOnMenuItem.Offer
  • AddOnMenuSection.Offer
  • MenuItem.Offer
  • MenuItemOption.Offer
  • MenuSection.Offer

इस प्रॉपर्टी का इस्तेमाल, नीचे दिए गए ऑफ़र के लिए नहीं किया जाता:

  • Service.Offer
applicableFulfillmentMethod टेक्स्ट का कलेक्शन ज़रूरी नहीं

यह बताता है कि यह Offer किस तरह की सेवा को पूरा करता है. संभावित वैल्यू "डिलीवरी" या "टेकआउट" हो सकती हैं.

अगर जानकारी नहीं दी जाती है, तो इस Offer को डिलीवरी और टेकआउट, दोनों से डिलीवर किया जाएगा.

इस प्रॉपर्टी का इस्तेमाल, इन ऑफ़र टाइप में किया जा सकता है:

  • AddOnMenuItem.Offer
  • AddOnMenuSection.Offer
  • MenuItem.Offer
  • MenuItemOption.Offer
  • MenuSection.Offer

इस प्रॉपर्टी का इस्तेमाल, नीचे दिए गए ऑफ़र के लिए नहीं किया जाता:

  • Service.Offer
@id यूआरएल बहिष्कृत ऑफ़र का यूनीक आइडेंटिफ़ायर. ऊपर बताए गए तरीके से, 25/4/19 से काम नहीं करेगा. इसे 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.
}

तीसरा उदाहरण

नीचे दिए गए उदाहरण में, सोमवार, बुधवार, और शुक्रवार को सुबह 9 से 10:59:59 बजे तक उपलब्धता दिखती है, लेकिन मंगलवार और गुरुवार को सुबह 8 से 11: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

इस उदाहरण में, ऐड-ऑन मेन्यू आइटम की ज़रूरी शर्तें पूरी करने वाली संख्या पर सेट दिखाया गया है. इससे उपयोगकर्ता उस आइटम के ज़्यादा से ज़्यादा दो हिस्सों को ऑर्डर कर सकता है.:

{
  "@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 प्रॉपर्टी ज़रूरी नहीं हैं. हालांकि, हमारा सुझाव है कि ऑर्डर करते समय इस बात का ध्यान रखें. उपलब्ध घंटे तय करने का सबसे सही तरीका यह है कि आप deliveryHours का कलेक्शन शामिल करें. इसमें opens और closes प्रॉपर्टी वाला ServiceDeliveryHoursSpecification शामिल होता है. इसके बाद, अगर आपको पहले से ऑर्डर करने के लिए ज़्यादा सीमित विंडो ऑफ़र करनी है, तो deliveryHours में AdvanceServiceDeliveryHoursSpecification ऑब्जेक्ट को उसकी अपनी opens और closes प्रॉपर्टी के साथ शामिल किया जा सकता है.
  • अगर opens और closes की जानकारी साफ़ तौर पर नहीं दी गई है, तो हम मान लेते हैं कि ऑर्डर करने की सेवा, हर दिन हर समय उपलब्ध है.
  • सेवा के लिए समय, स्थानीय समय के मुताबिक होना चाहिए. opens या closes वैल्यू में टाइम ज़ोन शामिल न करें. अगर कोई टाइम ज़ोन दिया गया है, तो Google इस जानकारी को अनदेखा कर देता है.
  • अगर opens और closes एक जैसे हैं, तो हम मान लेते हैं कि रेस्टोरेंट 0 मिनट के लिए खुला है.
  • अगर opens, closes से ज़्यादा है, तो बंद होने के घंटे को उसके अगले दिन के तौर पर माना जाता है. उदाहरण के लिए, अगर कारोबार के खुले होने का समय 1 जनवरी को शाम 5 बजे सेट है और बंद होने का समय रात 2 बजे है, तो रेस्टोरेंट को 2 जनवरी को रात 2 बजे बंद माना जाएगा.
  • closes के लिए समय खास है. इसलिए, अगर इस ऑर्डर विंडो के खुलने और बंद होने का समय सुबह 10 बजे और शाम 4 बजे पर सेट है, तो आखिरी ऑर्डर दोपहर 3:59:59 बजे होगा.

यहां दी गई टेबल में OpeningHoursSpecification तरह की प्रॉपर्टी के बारे में बताया गया है:

प्रॉपर्टी टाइप ज़रूरत ब्यौरा
@type टेक्स्ट ज़रूरी है यह हमेशा "OpeningHoursSpecification" होता है.
@id यूआरएल ज़रूरी नहीं OpeningHoursSpecification का आइडेंटिफ़ायर.
dayOfWeek DayOfWeek की कैटगरी ज़रूरी नहीं

हफ़्ते का वह दिन जिसके लिए कारोबार के खुले होने के समय की जानकारी मान्य है. मान्य वैल्यू "सोमवार", "मंगलवार", "बुधवार", "गुरुवार", "शुक्रवार", "शनिवार", और "रविवार" हैं. उदाहरण के लिए:

"dayOfWeek": [
"Monday",
"Tuesday",
"Wednesday",
"Thursday",
"Friday"
]

अगर आपने हफ़्ते के किसी भी दिन की जानकारी नहीं दी है, तो OpeningHoursSpecification सभी दिनों पर लागू होगा.

opens Time ज़रूरी नहीं

Restaurant के स्पेसिफ़िकेशन में इस प्रॉपर्टी का इस्तेमाल करने पर, हफ़्ते के किसी तय दिन पर रेस्टोरेंट के खुलने का समय बताया जाता है. उदाहरण के लिए, सुबह 6:30 बजे "T06:30:00" दिया गया है.

Service स्पेसिफ़िकेशन में इस्तेमाल किए जाने पर, इससे पता चलता है कि दिन का वह खास समय क्या है जब से उपयोगकर्ताओं के ऑर्डर दिए जा सकते हैं. इससे, ऑनलाइन सिस्टम के चालू होने के समय की जानकारी मिलती है. साथ ही, इससे लोगों को ऑर्डर करने की सुविधा भी मिलती है. ऑनलाइन सिस्टम के खुलने/बंद होने के उन घंटों के दौरान, कारोबार खुलने/बंद होने के समय की जानकारी देने के लिए, deliveryHours का इस्तेमाल किया जा सकता है. इससे उपयोगकर्ता खास तरह की डिलीवरी के लिए ऑर्डर कर सकते हैं.

सेवा के लिए समय, स्थानीय समय के मुताबिक होना चाहिए. opens वैल्यू में टाइम ज़ोन शामिल न करें. अगर कोई टाइम ज़ोन दिया गया है, तो Google इस जानकारी को अनदेखा कर देता है.

ज़्यादा जानकारी के लिए, DateTime और समय के फ़ॉर्मैट देखें.

closes Time ज़रूरी नहीं

Service के स्पेसिफ़िकेशन में इस्तेमाल किए जाने पर, इस प्रॉपर्टी से दिन का वह खास समय पता चलता है जिसके बाद उपयोगकर्ताओं के ऑर्डर नहीं दिए जा सकते. इससे, ऑनलाइन सिस्टम के चालू होने और उपयोगकर्ताओं को ऑर्डर करने की अनुमति मिलने के बंद होने का समय पता चलता है. ऑनलाइन सिस्टम के खुलने/बंद होने के उन घंटों के दौरान, कारोबार खुलने/बंद होने के समय की जानकारी देने के लिए, deliveryHours का इस्तेमाल किया जा सकता है. इससे उपयोगकर्ता खास तरह की डिलीवरी के लिए ऑर्डर कर सकते हैं.

सेवा के लिए समय, स्थानीय समय के मुताबिक होना चाहिए. closes वैल्यू में टाइम ज़ोन शामिल न करें. अगर कोई टाइम ज़ोन दिया गया है, तो Google इस जानकारी को अनदेखा कर देता है.

ज़्यादा जानकारी के लिए, DateTime और समय के फ़ॉर्मैट देखें.

validFrom DateTime ज़रूरी नहीं

Restaurant के स्पेसिफ़िकेशन में इस्तेमाल किए जाने पर, इस प्रॉपर्टी से पता चलता है कि रेस्टोरेंट के लिए, opens और closes के बीच बताए गए खुले होने का समय कब मान्य होता है.

उदाहरण के लिए, अगर दिए गए घंटे पूरे साल 2017 पर लागू होते हैं, तो आपने validFrom को "2017-01-01T00:00:00-07:00" और validThrough को "2017-12-31T23:59:59-07:00" पर सेट किया है.

Service स्पेसिफ़िकेशन में इस्तेमाल किए जाने पर, validFrom शुरू होने की वह तारीख दिखाता है जिससे उपयोगकर्ताओं के ऑर्डर दिए जा सकते हैं.

अगर आपके फ़ीड में इस प्रॉपर्टी की जानकारी नहीं दी गई है, तो Google यह मानता है कि रेस्टोरेंट या सेवा हर दिन उपलब्ध है.

तारीख के अलावा, वैल्यू के समय और टाइम ज़ोन वाले हिस्से ज़रूरी हैं.

टाइम ज़ोन के लिए, रेस्टोरेंट या सेवा के टाइम ज़ोन का इस्तेमाल करें.

ज़्यादा जानकारी के लिए, DateTime और समय के फ़ॉर्मैट देखें.

validThrough DateTime ज़रूरी नहीं

Restaurant में इस्तेमाल किए जाने पर, opens और closes के बताए गए कारोबार के खुले होने का समय मान्य नहीं होता.

उदाहरण के लिए, अगर दिए गए घंटे पूरे साल 2017 पर लागू होते हैं, तो आपने validFrom को "2017-01-01T00:00:00-07:00" और validThrough को "2017-12-31T23:59:59-07:00" पर सेट किया है.

Service स्पेसिफ़िकेशन में इस्तेमाल किए जाने पर, validThrough के खत्म होने की वह तारीख होती है जिसके बाद उपयोगकर्ताओं के ऑर्डर नहीं दिए जा सकते.

अगर आपके फ़ीड में इस प्रॉपर्टी की जानकारी नहीं दी गई है, तो Google यह मानता है कि रेस्टोरेंट या सेवा हर दिन उपलब्ध है.

तारीख के अलावा, DateTime के समय और टाइम ज़ोन वाले हिस्से ज़रूरी हैं.

टाइम ज़ोन के लिए, रेस्टोरेंट या सेवा के टाइम ज़ोन का इस्तेमाल करें.

validThrough के लिए समय खास है. उदाहरण के लिए, अगर वह समय शाम 6 बजे के लिए सेट किया गया है, तो वह समय शाम 5:59:59 बजे तक के लिए मान्य होगा.

ज़्यादा जानकारी के लिए, DateTime और समय के फ़ॉर्मैट देखें.

deliveryHours ServiceDeliveryHoursSpecification का कलेक्शन या AdvanceServiceDeliveryHoursSpecification का अरे कंडीशनल

डिलीवरी या टेकआउट में लगने वाले समय की खास बातें.

यह पैरामीटर तब तक ज़रूरी है, जब तक रेस्टोरेंट बंद न हो (इसका मतलब है कि opens और closes एक-दूसरे के सेट हैं और उनके बराबर हैं.

  • 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"
    }
  ]
}

तीसरा उदाहरण

"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

इस टाइप का इस्तेमाल करने के लिए, gs1 कॉन्टेक्स्ट जोड़ें: "@context": ["http://gs1.org/voc/", "http://schema.org"]. साथ ही, FoodBeverageTobaccoProduct को MenuItem या MenuItemOption के टाइप में जोड़ें.

नीचे दी गई टेबल में PackagingDetails तरह की प्रॉपर्टी के बारे में बताया गया है:

प्रॉपर्टी टाइप ज़रूरत ब्यौरा
@type टेक्स्ट ज़रूरी है यह हमेशा "PackagingDetails" होता है.
packagingRecyclingProcessType टेक्स्ट ज़रूरी नहीं हर gs1:PackagingRecyclingProcessTypeCode के हिसाब से पैकेजिंग रीसाइकलिंग प्रोसेस का टाइप. उदाहरण के लिए http://gs1.org/voc/PackagingRecyclingProcessTypeCode-RECYCLABLE या http://gs1.org/voc/PackagingRecyclingProcessTypeCode-REUSABLE
hasReturnablePackageDeposit ReturnablePackageDepositDetails ज़रूरी नहीं प्रति gs1:ReturnablePackage चयनDetails के मुताबिक वापस किए जा सकने वाले पैकेज के जमा विवरण. उदाहरण के लिए, बोतल और कैन में लौटाए जा सकने वाले पैकेज डिपॉज़िट होते हैं.

यहां दिए गए उदाहरण में, 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 यूआरएल ज़रूरी नहीं PaymentChargeSpecification का आइडेंटिफ़ायर.
price नंबर ज़रूरी है शुल्क की कुल रकम. उदाहरण के लिए, मुद्रा के चिह्न के बिना "6.00".
priceCurrency टेक्स्ट ज़रूरी है कीमत का तीन अक्षर वाला ISO 4217 मुद्रा कोड. उदाहरण के लिए, "USD".
eligibleTransactionVolume PriceSpecification ज़रूरी नहीं मुद्रा के इकाई में लेन-देन की संख्या, जिसके लिए पेमेंट के तरीके की यह जानकारी मान्य है. जैसे, खरीदारी की कम से कम संख्या बताने के लिए.
eligibleQuantity QuantitativeValue ज़रूरी नहीं ऑर्डर करने की वे संख्या जिनके लिए पेमेंट शुल्क मान्य है. उदाहरण के लिए, इस प्रॉपर्टी का इस्तेमाल करके, यह तय किया जा सकता है कि एक ऑर्डर में कम से कम कितने सामान होने ज़रूरी हैं.
validFrom DateTime ज़रूरी नहीं वह तारीख और समय (समय क्षेत्र शामिल है) जब पैसे चुकाने के लिए तय किया गया शुल्क मान्य हो जाता है. उदाहरण के लिए, "2017-05-01T07:00:00-07:00". ज़्यादा जानकारी के लिए, DateTime और समय के फ़ॉर्मैट देखें.
validThrough DateTime ज़रूरी नहीं वह तारीख और समय (समय क्षेत्र शामिल है) जब तय किया गया भुगतान शुल्क मान्य नहीं है. उदाहरण के लिए, "2017-05-01T07:30:00-07:00". validThrough के लिए समय खास है: उदाहरण के लिए, अगर वह समय शाम 6 बजे पर सेट है, तो समय शाम 5:59:59 बजे तक के लिए मान्य है. ज़्यादा जानकारी के लिए, DateTime और समय के फ़ॉर्मैट देखें.

नीचे दिए गए उदाहरण में 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"]) के साथ बढ़ाया जा सकता है. एक्सटेंशन, प्रतिशत में तय किए गए सेवा शुल्क के लिए, ज़रूरी दो और प्रॉपर्टी देता है.

प्रॉपर्टी टाइप ज़रूरत ब्यौरा
referenceQuantity QuantitativeValue ज़रूरी है रेफ़रंस की वह संख्या जिसके लिए कोई कीमत लागू होती है. उदाहरण के लिए, "P1" के unitCode के साथ वैल्यू 10 का referenceQuantity ऑर्डर वैल्यू का 10% नतीजा देता है. फ़िलहाल, सिर्फ़ unitCode "P1" का इस्तेमाल किया जा सकता है.
basePrice नंबर ज़रूरी नहीं referenceQuantity के अलावा, मूल शुल्क. उदाहरण के लिए, "P1" के unitCode के साथ 10 में से referenceQuantity और डॉलर में 5 में से basePrice का नतीजा, ऑर्डर वैल्यू का 5 डॉलर + 10% मिलता है. डिफ़ॉल्ट वैल्यू 0 है.

टेकआउट शुल्क के उदाहरण

Google आपको सेवा इकाई के Offer.PriceSpecification का इस्तेमाल करके पहले ही उपयोगकर्ताओं से कई तरह के शुल्क तय करने की सुविधा देता है.

ध्यान दें कि फ़िलहाल हम सिर्फ़ एक PaymentChargeSpecification का इस्तेमाल करते हैं. सभी तरह के शुल्क को एक ही PaymentChargeSpecification में जोड़ें

अगर कोई शुल्क नहीं है, तो Offer.PriceSpecification को हटा दिया जाता है.

  • पहला उदाहरण: सेवा शुल्क, कार्ट के सबटोटल का 5% है
  • दूसरा उदाहरण: सेवा शुल्क 500 रुपये है
  • तीसरा उदाहरण: बैग का शुल्क 0.1 डॉलर है और सेवा शुल्क, कार्ट की कुल कीमत का 5% है
  • चौथा उदाहरण: बैग का शुल्क 0.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"
  }
]

तीसरा उदाहरण

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 टेक्स्ट ज़रूरी है यह हमेशा "जगह" होता है.
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 टेक्स्ट ज़रूरी है दो अक्षर का 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 यूआरएल ज़रूरी नहीं PriceSpecification का आइडेंटिफ़ायर.
minPrice नंबर ज़रूरी नहीं अगर कीमत कोई रेंज है, तो सबसे कम कीमत.
maxPrice नंबर ज़रूरी नहीं अगर कीमत कोई रेंज है, तो सबसे ज़्यादा कीमत.
priceCurrency टेक्स्ट ज़रूरी है कीमत का तीन अक्षर वाला ISO 4217 मुद्रा कोड. उदाहरण के लिए, "USD".
eligibleQuantity QuantitativeValue ज़रूरी नहीं ऑर्डर की वे संख्या जिनके लिए कीमत की जानकारी मान्य है. उदाहरण के लिए, कीमत 2 डॉलर प्रति पाउंड या एक डॉलर के लिए दो आइटम हो सकती है.

इस उदाहरण में PriceSpecification एलिमेंट दिखाया गया है:

उदाहरण 1

"eligibleTransactionVolume": {
  "@type": "PriceSpecification",
  "minPrice": "20.00", // Minimum order price for delivery is $20
  "priceCurrency": "USD"
}

PropertyValue

प्रॉपर्टी की वैल्यू के जोड़े का इस्तेमाल, MenuItemOption में विकल्पों के बारे में बताने के लिए किया जाता है.

यहां दी गई टेबल में, PropertyValue टाइप के लिए प्रॉपर्टी की सूची दी गई है:

प्रॉपर्टी टाइप ज़रूरत ब्यौरा
@type टेक्स्ट ज़रूरी है यह हमेशा "प्रॉपर्टी वैल्यू" होती है.
name टेक्स्ट ज़रूरी है

विकल्प का नाम या टाइप.

MenuItem में इस्तेमाल किए जाने पर ये मान्य नाम हैं:

  • "size": MenuItem का साइज़. उदाहरण के लिए, छोटा, मीडियम या बड़ा.
  • "OPTIONS": साइज़ के अलावा कोई भी अन्य वैरिएशन (जैसे कि ऐसा पकवान जो सलाद या सैंडविच के तौर पर मिलता है). अगर आप "SIZE" और "OPTIONS" के बीच अंतर नहीं कर पा रहे हैं, तो "OPTIONS" का इस्तेमाल करें.

AddOnMenuItem में इस्तेमाल किए गए मान्य नाम:

  • "APPLICABLE_ITEM_OPTIONS": ऐडऑन का एक विकल्प सिर्फ़ तब लागू होता है, जब उसे MenuItem के साथ "साइज़/विकल्प" के साथ इस्तेमाल किया जाता है.
  • "PIZZA_SIDE": खास तौर पर पिज़्ज़ा के लिए, यह ऐड-ऑन सिर्फ़ एक हिस्से/पूरे पिज़्ज़ा (जैसे कि बाईं ओर, दाईं ओर या पूरे पिज़्ज़ा पर मशरूम टॉपिंग) के लिए मान्य है.
  • "साइज़": ऐड-ऑन का साइज़ तय करने का विकल्प (जैसे, मील कॉम्बो के लिए ऐड-ऑन के तौर पर बड़े फ़्राइज़).
  • "OPTIONS": साइज़ के अलावा कोई भी वैरिएशन. अगर आप "SIZE" और "OPTIONS" के बीच अंतर नहीं कर पा रहे हैं, तो "OPTIONS" का इस्तेमाल करें.
value टेक्स्ट ज़रूरी है

विकल्प का मान. वैल्यू कोई भी स्ट्रिंग हो सकती हैं और इन्हें ऐसे दिखाया जाता है. ये मान्य वैल्यू हैं:

  • "PIZZA_SIDE": पिज़्ज़ा के लिए, संबंधित वैल्यू "PIZZA_SIDE_LEFT", "PIZZA_SIDE_RIGHT" या "PIZZA_SIDE_डब्ल्यूएचओLE" होनी चाहिए.
  • "APPLICABLE_ITEM_OPTIONS": यह वैल्यू, पैरंट MenuItem के menuItemOptions में दिए गए "OPTIONS/size" विकल्पों में से किसी एक में मौजूद होनी चाहिए.

QuantitativeValue

नीचे दी गई टेबल में QuantitativeValue तरह की प्रॉपर्टी के बारे में बताया गया है:

प्रॉपर्टी टाइप ज़रूरत ब्यौरा
@type टेक्स्ट ज़रूरी है यह हमेशा "QuantitativeValue" होता है.
value नंबर ज़रूरी नहीं क्वांटिटेटिव वैल्यू या प्रॉपर्टी वैल्यू नोड की वैल्यू.
unitCode टेक्स्ट या यूआरएल ज़रूरी नहीं

UN/CEFACT कॉमन कोड या यूआरएल के तौर पर मेज़रमेंट की इकाई.

संयुक्त राष्ट्र/CEFACT कॉमन कोड के अलावा दूसरे कोड का इस्तेमाल, प्रीफ़िक्स के बाद कोलन के साथ किया जा सकता है.

maxValue नंबर ज़रूरी नहीं कुछ विशेषता या प्रॉपर्टी की ऊपरी वैल्यू.
minValue नंबर ज़रूरी नहीं कुछ विशेषता या प्रॉपर्टी की कम वैल्यू.

नीचे दिए गए उदाहरण, 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
  }
}

तीसरा उदाहरण

"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 यूआरएल ज़रूरी है रेस्टोरेंट या डिलीवरी की सेवा देने वाली कंपनी का यूनीक आइडेंटिफ़ायर. उदाहरण के लिए, "http://www.provider.com/326", जहां "326" रेस्टोरेंट का यूनीक आइडेंटिफ़ायर है.
name टेक्स्ट ज़रूरी है ऐसा टेक्स्ट जो ऑर्डर करते समय, Restaurant की पहचान कर सके.
url यूआरएल ज़रूरी है आपके डोमेन पर मौजूद यूआरएल, जो रेस्टोरेंट की जानकारी देता है. उदाहरण के लिए, "http://www.provider.com/somerestaurant".
sameAs यूआरएल ज़रूरी नहीं रेस्टोरेंट की आधिकारिक वेबसाइट. उदाहरण के लिए, "http://www.somerestaurant.com".
email टेक्स्ट ज़रूरी नहीं रेस्टोरेंट से संपर्क करने के लिए ईमेल पता.
description टेक्स्ट ज़रूरी नहीं रेस्टोरेंट के बारे में जानकारी.
telephone टेक्स्ट ज़रूरी है

नीचे दिए गए फ़ॉर्मैट में टेलीफ़ोन नंबर:

"[+][country_code][phone_#_with_area_code]"

उदाहरण के लिए, "+16501234567".

priceRange टेक्स्ट ज़रूरी नहीं कीमत की एक रेंज. उदाहरण के लिए, "$$" ($-Inexpensive, $$-मॉडरेट, $$$-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 "additionalProperty": [{"name": "imprint", "value": "first row\nsecondrow\n"},]

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) ज़रूरी है
  "serves": [
    "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 टेक्स्ट ज़रूरी है यह हमेशा "ReturnablepackageDetails"" होता है.
returnablePackageDepositAmount gs1:PriceSpecification ज़रूरी नहीं इस आइटम के लिए जमा की गई रकम, हर gs1:PriceSpecification. उदाहरण के लिए, हर कैन के लिए 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 टेक्स्ट ज़रूरी है

फ़ीड का टाइप.

  • Service: इस टाइप का इस्तेमाल, सभी चालू सेवा फ़ीड के लिए करें.
  • DisabledService: इस टाइप का इस्तेमाल सिर्फ़ तब करें, जब आपको अचानक हुए किसी इवेंट की वजह से, सेवा इकाई को बंद करना पड़े और आपको यह पता न हो कि सेवा फिर से कब चालू होगी.
@id यूआरएल ज़रूरी है ग्राहक को आइटम भेजने की सेवा का आइडेंटिफ़ायर. उदाहरण के लिए, "http://www.provider.com/service/1".
description टेक्स्ट ज़रूरी नहीं आइटम का ब्यौरा.
serviceType टेक्स्ट ज़रूरी है दी जा रही सेवा का टाइप. इसकी वैल्यू "डिलीवरी" या "टेकआउट" हो सकती हैं.
provider Restaurant ज़रूरी है रेस्टोरेंट के लिए यूनीक आइडेंटिफ़ायर का रेफ़रंस. उदाहरण के लिए, "http://www.provider.com/somerestaurant".
areaServed GeoShape, Place या GeoCircle की कैटगरी कंडीशनल वह देश या इलाका जहां सेवा दी जाती है. यह फ़ील्ड डिफ़ॉल्ट रूप से ज़रूरी नहीं है, लेकिन अगर serviceType "delivery" है, तो ऐसा करना ज़रूरी है.
hoursAvailable OpeningHoursSpecification की कलेक्शन ज़रूरी है इस सेवा के उपलब्ध रहने का समय.
specialOpeningHoursSpecification OpeningHoursSpecification, ServiceDeliveryHoursSpecification या AdvanceServiceDeliveryHoursSpecification की कैटगरी ज़रूरी नहीं

वे समय जो सामान्य OpeningHoursSpecification या ऑर्डर पूरा करने में लगने वाले समय को बदल देते हैं. आम तौर पर, इस फ़ील्ड का इस्तेमाल छुट्टियों और कुछ समय के लिए बंद होने या खुले होने के समय में बदलाव के बारे में बताने के लिए किया जाता है.

validFrom और validThrough प्रॉपर्टी का इस्तेमाल करके, तारीख की खास सीमा तय करें. इन प्रॉपर्टी की जानकारी देते समय, समय और टाइम ज़ोन ज़रूरी है.

offers Offer की कलेक्शन कंडीशनल

किसी खास रेस्टोरेंट में डिलीवरी की सुविधा की जानकारी. यह फ़ील्ड डिफ़ॉल्ट रूप से ज़रूरी नहीं है. हालांकि, अगर serviceType "delivery" है, तो ऐसा करना ज़रूरी है.

सेवा के लिए, Offer.priceSpecification प्रॉपर्टी का इस्तेमाल करना ज़रूरी नहीं है. यहां किसी और Offer प्रॉपर्टी का इस्तेमाल नहीं किया गया है.

hasOfferCatalog [Menu, OfferCatalog] ज़रूरी है

इस सेवा के लिए मेन्यू के बारे में बताता है. आपके पास अपनी हर सेवा के लिए अलग-अलग मेन्यू हो सकता है. जैसे, खाना पैक कराकर ले जाने, डिलीवरी, और केटरिंग की सुविधा.

आपको टाइप के लिए, Menu और OfferCatalog , दोनों की जानकारी देनी होगी. उदाहरण के लिए:

"hasOfferCatalog": {
"@type": ["Menu", "OfferCatalog"],
"@id": "https://www.provider.com/restaurant/menu/1"
}
additionalProperty {name, value} की कैटगरी ज़रूरी नहीं

सेवा के कॉन्फ़िगरेशन की वैकल्पिक जानकारी. आइटम को एक ऑब्जेक्ट होना चाहिए, जिसमें वैकल्पिक फ़ील्ड के नाम से name कुंजी होगी. value कुंजी, इस फ़ील्ड के लिए संदर्भ के हिसाब से काम की वैल्यू है.

खास नामों और वैल्यू के बारे में ज़्यादा जानकारी के लिए, ServingConfig रेफ़रंस देखें.

"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 यूआरएल ज़रूरी नहीं

इसमें डिलीवरी/टेकआउट सेवा का यूआरएल होता है. इसका इस्तेमाल, खाना ऑर्डर करने की पूरी सुविधा से दूसरे वेबलिंक पर भेजने के दौरान किया जाता है. उदाहरण के लिए, "potentialAction": { "url": "https://fopatestagent.com/ordering/restaurant-1/delivery" }

यहां दिए गए उदाहरण में, सेवा के टाइप के इस्तेमाल के बारे में बताया गया है:

उदाहरण

{
  "@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 की जानकारी साफ़ तौर पर नहीं दी गई है, तो हम मान लेते हैं कि जल्द से जल्द ऑर्डर करने की सुविधा, हर दिन उपलब्ध है.
  • अगर opens और closes एक जैसे हैं, तो हम मान लेते हैं कि जल्द से जल्द ऑर्डर करने की सुविधा उपलब्ध नहीं है.
  • अगर opens, closes से ज़्यादा है, तो बंद होने के घंटे को उसके अगले दिन के तौर पर माना जाता है. उदाहरण के लिए, अगर कारोबार के खुले होने का समय 1 जनवरी को शाम 5 बजे सेट है और बंद होने का समय रात 2 बजे है, तो रेस्टोरेंट को 2 जनवरी को रात 2 बजे बंद माना जाएगा.

नीचे दिए गए टेबल में ServiceDeliveryHoursSpecification तरह की प्रॉपर्टी के बारे में बताया गया है:

प्रॉपर्टी टाइप ज़रूरत ब्यौरा
@type टेक्स्ट ज़रूरी है यह हमेशा "ServicedeliveryHoursSpecification" होता है.
validFrom DateTime ज़रूरी नहीं

वह तारीख और समय (टाइम ज़ोन के साथ) जब उपयोगकर्ताओं के जल्द से जल्द ऑर्डर पूरे किए जा सकते हैं. उदाहरण के लिए, "2017-05-01T07:00:00-07:00". अगर यह प्रॉपर्टी सेट नहीं है, तो इसे हर दिन मान्य माना जाता है.

ज़्यादा जानकारी के लिए, DateTime और समय के फ़ॉर्मैट देखें.

validThrough DateTime ज़रूरी नहीं

वह तारीख और समय (समय क्षेत्र शामिल है) जिसके बाद उपयोगकर्ताओं के जल्द से जल्द ऑर्डर पूरे नहीं किए जा सकते. उदाहरण के लिए, "2017-05-01T07:00:00-07:00". अगर इस प्रॉपर्टी को सेट नहीं किया जाता है, तो इसे हर दिन मान्य माना जाता है.

validThrough के लिए समय खास है. उदाहरण के लिए, अगर वह समय शाम 6 बजे पर सेट है, तो वह समय शाम 5:59:59 बजे तक के लिए मान्य होता है.

ज़्यादा जानकारी के लिए, DateTime और समय के फ़ॉर्मैट देखें.

opens Time ज़रूरी नहीं

वह समय जब उपयोगकर्ताओं के ऑर्डर जल्द से जल्द पूरे होने के लिए, डिलीवरी सेवा शुरू होती है. उदाहरण के लिए, "T10:30:00".

सेवा के लिए समय, स्थानीय समय के मुताबिक होना चाहिए. opens वैल्यू में टाइम ज़ोन शामिल न करें. अगर कोई टाइम ज़ोन दिया गया है, तो Google इस जानकारी को अनदेखा कर देता है.

ज़्यादा जानकारी के लिए, DateTime और समय के फ़ॉर्मैट देखें.

closes Time ज़रूरी नहीं

वह समय जब उपयोगकर्ताओं के जल्द से जल्द ऑर्डर के लिए डिलीवरी सेवा उपलब्ध नहीं होती है. उदाहरण के लिए, "T23:59:59".

closes के लिए समय खास है. इसलिए, अगर आपने इस ServiceDeliveryHoursSpecification के लिए खुलने/बंद होने की सेटिंग को सुबह 10 बजे और शाम 4 बजे के लिए सेट किया है, तो वह आखिरी ऑर्डर दोपहर 3:59:59 बजे होगा.

सेवा के लिए समय, स्थानीय समय के मुताबिक होना चाहिए. closes वैल्यू में टाइम ज़ोन शामिल न करें. अगर कोई टाइम ज़ोन दिया गया है, तो Google इस जानकारी को अनदेखा कर देता है.

ज़्यादा जानकारी के लिए, DateTime और समय के फ़ॉर्मैट देखें.

dayOfWeek DayOfWeek की कलेक्शन ज़रूरी नहीं

हफ़्ते के वे दिन जब यह सेवा, उपयोगकर्ताओं के जल्द से जल्द ऑर्डर करने के लिए उपलब्ध है. ये मान्य वैल्यू हैं:

  • "सोमवार"
  • "मंगलवार"
  • "बुधवार"
  • "गुरुवार"
  • "शुक्रवार"
  • "शनिवार"
  • "रविवार"

अगर आपने हफ़्ते के किसी भी दिन की जानकारी नहीं दी है, तो ServiceDeliveryHoursSpecification सभी दिनों पर लागू होगा.

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"
  }
}
    

Enums

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