OpenMenu Format - Working Draft

The working draft of what will become the next standard is listed below.

New or changed items are highlighted with a New or Changed icon.

This is a working draft of the next release. The standards may change and should not be used in a production environment until the draft becomes a stable version.

Changelog

  • Updated list of primary cuisine types

Empty XML structure

Details

omf
Attributes
  • uuid

    A universally unique ID for this OpenMenu (referred to publicly as an OpenMenu ID) format: UUID v4 (aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee) - must be random values / lower case and globally unique to OpenMenu required

  • created_date

    date the OpenMenu was created. Usually refers to the date the menu was first added or last updated format: yyyy-mm-dd (ISO 8601) required

  • accuracy

    Determines the accuracy of the OpenMenu.
    - 1 = Restaurant Maintained
    - 5 = Maintained by an OpenMenu Registrar
    - 9 = Maintained Through Automation
    format: numeric (1, 5 or 9 is currently valid) required

  • private

    Denotes a restaurant/eating establishment which is not open to the public format: set to private (private="private") not required

openmenu
Tags
  • version

    The version of the OMF spec that this OpenMenu adheres to format: decimal with a . (period) seperator required

crosswalks
  • crosswalk

    [read only] Listing of well-established IDs from external companies. format: reference the structure below provided by OpenMenu only when available

    Tags
    • crosswalk_id

      The ID for an external source format: alpha-numeric not required

    • crosswalk_name

      Company name issuing the crosswalk ID format: 0 - 50 characters not required

    • crosswalk_url

      Direct URL to the crosswalk source format: 0 - 120 characters starting with http:// not required

restaurant_info
Tags
  • restaurant_name

    Name of the restaurant format: 2 - 255 characters required

  • brief_description

    Brief description of the restaurant format: 2 - 255 characters (no HTML allowed) required

  • full_description

    Full description of the restaurant format: 0 - 2000 characters (no HTML allowed) not required

  • business_type

    Classification for the restaurants business type format: select from Franchisee | Corporate | Independent required

  • location_id

    ID of the restaurant if its a chain or has a parent company format: 0 - 25 characters not required

  • mobile

    Is this a mobile restaurant (e.g. food truck, food cart) format: select from 0 | 1 (0 = no | 1 = yes) not required

  • address_1

    Primary address of the restaurant format: 2 - 120 characters required

  • address_2

    Secondary address of the restaurant format: 0 - 120 characters not required

  • city_town

    City or town of the restaurant format: 2 - 50 characters required

  • region_area

    Region or area as defined within the city or town. This tag can be nested to create nested sections format: empty (attributes only) not required

    Attributes
    • name

      Name of the region or section format: 2 - 50 characters required

    • designation

      What is the designation for this section or area (ex. district, neighborhood, burough) format: 2 - 50 characters required

  • state_province

    State or Province of the restaurant format: 2 characters (two-digit code) not required

  • postal_code

    Postal code of the restaurant format: 0 - 30 characters not required

  • country

    Country of the restaurant format: 2 characters (ISO 3166-1 alpha-2) required

  • phone

    Phone of the restaurant format: Numeric with punctuations (allowed: #*()-/_) 7-40 characters not required

  • fax

    Fax of the restaurant format: Numeric with punctuations (allowed: #*()-/_) 7-40 characters not required

  • longitude

    Longitude of the restaurant. Used for easily locating the restaurant on GPS or other mapping services format: 0 - 11 characters: (-)nnn.nnnnnn not required

  • latitude

    Latitude of the restaurant. Used for easily locating the restaurant on GPS or other mapping services format: 0 - 10 characters: (-)nn.nnnnnn not required

  • utc_offset

    Coordinated Universal Time (UTC) offset for the location of the restaurant. Used to determine the time for the location format: 0 - 3 characters: (-)nn not required

  • website_url

    URL to the restaurants website format: 0 - 120 characters starting with http:// not required

  • omf_file_url

    URL where the OpenMenu Format menu is stored or can be accessed from format: 0 - 120 characters starting with http:// required

logo_urls
Tags
  • logo_url

    URL a logo file
    format: URL starting with http:// in GIF|JPG|PNG format not required - sizes that work best: 320px x 100px (full) and 32px x 32px (thumbnail)

    Attributes
    • width

      Width of the image format: numeric not required

    • height

      Height of the image format: numeric not required

    • type

      Intended use for the logo format: select from full | thumbnail required

    • media

      What media is the logo meant to be displayed for format: select from mobile | print | web | all required

environment
  • seating_qty

    How many people can be seated at the restaurant format: numeric not required

  • smoking_allowed

    Is smoking allowed at the restaurant format: select from 1|0 (1 = true) not required

  • max_group_size

    What the maximum group a restaurant can accommodate format: numeric not required

  • pets_allowed

    Are pets allowed at the restaurant format: select from 1|0 (1 = true) not required

  • age_level_preference

    Defines an preference for the restaurant format: (+/-)nnn not required

  • dress_code

    What is the dress code for the restaurant format: select from none|casual|business-casual|business not required

  • cuisine_type_primary

    The primary cuisine type for the restaurant. Select from the approved list as to the type of restaurant. Option to add your own type which will be evaluated for inclusion in the list.
    format: recommended to select from American | Afghan | African | Argentinean | Asian/Oriental | Bakery | Barbeque | Belgian | Brazilian | Brew/Pubs/Microbrewery | Cajun/Creole | California | Caribbean | Chinese | Coffee House | Continental | Cuban | Desserts | Diner | Ethiopian | European | Family/Homestyle | French/French Bistro | Fusion | German | Greek | Hamburger | Hawaiian | Hot Dog | Indian | International | Irish | Italian | Japanese | Latin | Kosher | Malaysian | Mediterranean | Mexican | Moroccan | Pacific Rim | Pizza | Portuguese | Russian | Sandwiches | Seafood | Soup | Southwest | Southern Cuisine | Spanish | Steakhouse | Sunday Brunch | Sushi | Tapas | Thai | Turkish | Ukrainian | Vegetarian | Vietnamese | Yougurt required

  • cuisine_type_secondary

    A secondary cuisine type for the restaurant may be designated. Select from the approved list as to the type of restaurant. Option to add your own type which will be evaluated for inclusion in the list.
    note: Restaurants should not rely on this value as it may not be implemented in some systems. format: recommended to select from American | Afghan | African | Argentinean | Asian/Oriental | Bakery | Barbeque | Belgian | Brazilian | Brew/Pubs/Microbrewery | Cajun/Creole | California | Caribbean | Chinese | Coffee House | Continental | Cuban | Desserts | Diner | Ethiopian | European | Family/Homestyle | French/French Bistro | Fusion | German | Greek | Hamburger | Hawaiian | Hot Dog | Indian | International | Irish | Italian | Japanese | Latin | Kosher | Malaysian | Mediterranean | Mexican | Moroccan | Pacific Rim | Pizza | Portuguese | Russian | Sandwiches | Seafood | Soup | Southwest | Southern Cuisine | Spanish | Steakhouse | Sunday Brunch | Sushi | Tapas | Thai | Turkish | Ukrainian | Vegetarian | Vietnamese | Yougurt not required

  • takeout_available

    Determines if the restaurant has takeout available format: select from 0 | 1 (0 = no | 1 = yes) required

  • delivery_available

    Determines if the restaurant has delivery available format: select from 0 | 1 (0 = no | 1 = yes) not required

    Attributes
    • radius

      Maximum delivery radius (in kilometers) format: numeric (in km)

    • fee

      Additional fee for delivery services format: numeric only, period separator for decimals

  • catering_available

    Determines if the restaurant has catering available format: select from 0 | 1 (0 = no | 1 = yes) not required

  • wheelchair_accessible

    Determines if the restaurant has wheelchair access format: select from 0 | 1 (0 = no | 1 = yes) not required

  • reservations

    Determines if a restaurant takes or requires a reservation format: select from 0 | 1 | Suggested | Required (0 = no | 1 = yes) not required

  • alcohol_type

    The type of alcohol the restaurant serves format: select from Full Bar | Beer and Wine | Wine Only | Beer Only | None not required

  • music_type

    The type of music the restaurant has to offer format: select from Live | Pre-Recorded | DJ | Jukebox | None not required

  • parking

    Defines the parking for the restaurant format: empty tag (defined by its attributes) not required

    Attributes
    • street_free

      Street (free) format: set to street_free (street_free="street_free")

    • street_metered

      Street (metered) format: set to street_metered (street_metered="street_metered")

    • private_lot

      Private Lot format: set to private_lot (private_lot="private_lot")

    • garage

      Garage format: set to garage (garage="garage")

    • valet

      Valet format: set to valet (valet="valet")

seating_locations
  • seating_location

    Can people be seated outside, inside or both. Option to add your own location which will be evaluated for inclusion in the list format: recommended to select from none | indoor | outdoor | rooftop | poolside | deck | cellar | pier | veranda | porch | beach | terrace | patio | sidewalk required

accepted_currencies
  • accepted_currency

    Defines the currency symbol for menu item prices (defaults to USD) format: 3 characters (ISO 4217) required

online_reservations
  • online_reservation

    Sets the various online reservation locations format: structure as defined below not required

    Tags
    • online_reservation_name

      Name for the online reservation format: 2 - 50 characters required

    • online_reservation_url

      URL to the reservation location
      format: 11 - 120 characters starting with http:// required

    Attribute
    • type

      Type of online reservation format: select from web | mobile | web/mobile required

online_ordering
  • online_order

    Sets the various online ordering locations format: structure as defined below not required

    Tags
    • online_order_name

      Name for the online order format: 2 - 50 characters required

    • online_order_url

      URL to the order location
      format: 11 - 120 characters starting with http:// required

    Attribute
    • type

      Type of online order format: select from web | mobile | web/mobile required

operating_days
  • operating_day

    Sets the days and times that the restaurant is open format: structure as defined below required

    Tags
    • day_of_week

      Sets the day of the week the restaurant is open format: 1 digit (ISO 8601: mon:1, tue:2, wed:3, thu:4, fri:5, sat:6, sun:7) required

    • open_time

      Sets the opening time format: hh:mm (ISO 8601 - 24 hour time) required

    • close_time

      Sets the closing time format: hh:mm (ISO 8601 - 24 hour time) required

contacts
  • contact

    Sets the various contacts for the restaurant format: structure as defined below not required

    Tags
    • first_name

      First name of the contact format: 2 - 25 characters required

    • last_name

      Last name of the contact format: 2 - 25 characters not required

    • email

      Email of the contact format: 7 - 120 characters required

    Attribute
    • type

      Type of contact. Option to add your own type which will be evaluated for inclusion in the list. format: recommended to select from om_creator | primary | chef (2 - 50 characters)

parent_company
  • parent_company_name

    Name of the parent company format: 0 - 255 characters not required

  • parent_company_website

    Parent company website format: 0 - 120 characters starting with http:// not required

  • address_1

    Primary address of the parent company format: 2 - 120 characters not required

  • address_2

    Secondary address of the parent company format: 0 - 120 characters not required

  • city_town

    City or town of the parent company format: 2 - 50 characters not required

  • state_province

    State or Province of the parent company format: 2 characters (two-digit code) not required

  • postal_code

    Postal code of the parent company format: 0 - 30 characters not required

  • country

    Country of the parent company format: 2 characters (ISO 3166-1 alpha-2) not required

  • phone

    Phone of the parent company format: Numeric with punctuations (allowed: #*()-/_) 7-40 characters not required

  • fax

    Fax of the parent company format: Numeric with punctuations (allowed: #*()-/_) 7-40 characters not required

menus (can contain multiple menus)
menu
Tags
  • menu_description

    Description for this menu format: 0 - 255 characters not required

  • menu_note

    Note for this menu (usually displayed under the menu) format: 0 - 255 characters not required

  • menu_duration

    What time of day is this menu valid for format: structure as defined below required

    Tags
    • menu_duration_name

      Sets name for the duration this menu is valid for. Option to add your own duration name which will be evaluated for inclusion in the list. format: recommended to select from breakfast | brunch | lunch | breakfast-lunch | dinner | lunch-dinner | late-night | all required

    • menu_duration_time_start

      Start time when this menu is valid for format: hh:mm (ISO 8601 - 24 hour time) note: if menu_duration_time_start is blank then the operating time for that day should be used not required

    • menu_duration_time_end

      End time when this menu is valid for format: hh:mm (ISO 8601 - 24 hour time) note: if menu_duration_time_end is blank then the operating time for that day should be used not required

Attributes
  • name

    Name for this menu format: 0 - 50 characters required

  • uid

    Globally unique identifier for this menu format: UUID v4 (aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee) - must be random values / lower case and globally unique to OpenMenu required

  • currency_symbol

    Will be used to determine the currency symbol to show next to prices (defaults to USD) format: 3 characters (ISO 4217) not required

  • language

    The language for this menu format: 2 characters (ISO 639-1 alpha-2) not required

  • disabled

    Sets that this menu is disabled format: set to disabled (disabled="disabled") not required

menu_groups
menu_group
Attributes
  • name

    Name for this menu group format: 0 - 50 characters required

  • uid

    Globally unique identifier for this menu group format: UUID v4 (aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee) - must be random values / lower case and globally unique to OpenMenu required

  • disabled

    Sets that this menu group is disabled format: set to disabled (disabled="disabled") not required

menu_group_options
Tags
  • menu_group_description

    Description for this menu group format: 0 - 255 characters not required

  • menu_group_note

    Note for this menu group (usually displayed under the Menu Group) format: 0 - 255 characters not required

  • menu_group_option

    Defines option(s) for all menu items contained within this group format: structure as defined below not required

    Attributes
    • name

      Name for this menu group's options format: 0 - 50 characters required

    • min_selected

      Minimum items to select from these options format: numeric not required

    • max_selected

      Maximum items to select from these options format: numeric not required

    Tags
    • menu_group_option_information

      Additional information about this group option and the items that will follow format: 0 - 255 characters (no HTML allowed) not required

    • menu_group_option_item

      Details of an item for this option group format: structure as defined below one required if option group defined

      Attributes
      • selected

        Determines if this option item is selected (default item for the group) format: select from 0 | 1 (0 = no | 1 = yes) not required

      Tags
      • menu_group_option_name

        Name of this option format: 2 - 50 characters required

      • menu_group_option_additional_cost

        Set any additional costs this option will add a menu item
        requirment: not required format: 1 - 7 characters: nnnn.nn (numeric only, period separator for decimals) not required

menu_items
Tags
  • menu_item_name

    Name of the menu item format: 2 - 75 characters (no HTML allowed) not required

  • menu_item_description

    Description for the menu item format: 0 - 450 characters (no HTML allowed) not required

  • menu_item_price

    Price for the menu item (no currency symbol) format: 1 - 9 characters: nnnnnn.nn (numeric only, period separator for decimals) not required

  • menu_item_calories

    How many calories for this item format: numeric not required

  • menu_item_heat_index

    How spicy/hot is this menu item format: 0 - 5 (0 being not spicy/hot, 5 being spiciest/hottest) not required

  • menu_item_allergy_information

    Any information about allergy warnings for this item format: 0 - 450 characters (no HTML allowed) not required

    Attributes
    • allergens

      Specific names of allergens. Option to add your own allergens which will be evaluated for inclusion in the list. (multiple selections will be comma seperated) format: recommended to select from Egg | Fish | Dairy | Peanut | Shellfish | Soy |Tree Nut | Wheat | Gluten not required

  • menu_item_image_urls

    Urls to images to be used when displaying this menu item format: structure as defined below not required

    Tags
    • menu_item_image_url

      URL to an image file for the menu item format: URL starting with http:// in GIF|JPG|PNG format not required. If included must include a 32px x 32px (thumbnail) and 200px x 200px (full) version for web

      Attributes
      • width

        Width of the image format: numeric not required

      • height

        Height of the image format: numeric not required

      • type

        Intended use for the menu item image format: select from full | thumbnail | zoom required

      • media

        What media is the logo meant to be displayed for format: select from mobile | print | web | all required

Attributes
  • uid

    Globally unique identifier for this menu item format: UUID v4 (aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee) - must be random values / lower case and globally unique to OpenMenu required

  • disabled

    Sets that this menu item is disabled format: set to disabled (disabled="disabled") not required

  • special

    Sets that this menu item is a special format: set to special (special="special") not required

  • vegetarian

    Sets that this menu item is vegetarian format: set to vegetarian (vegetarian="vegetarian") not required

  • vegan

    Sets that this menu item is vegan format: set to vegan (vegan="vegan") not required

  • kosher

    Sets that this menu item is kosher format: set to kosher (kosher="kosher") not required

  • halal

    Sets that this menu item is halal format: set to halal (halal="halal") not required

  • gluten_free

    Sets that this menu item is gluten-free format: set to gluten_free (gluten_free="gluten_free") not required

menu_item_sizes (optional)
  • menu_item_size_name

    Name for an alternate size for a menu item (small, medium, large, cup, bowl) format: 0 - 25 characters required if defined

  • menu_item_size_description

    Description of the alternate size format: 0 - 120 characters not required

  • menu_item_size_price

    Price for the menu item (no currency symbol) format: 1 - 7 characters: nnnn.nn (numeric only, period separator for decimals) not required

  • menu_item_size_calories

    How many calories for this item format: numeric not required

menu_item_options (optional)
Tags
  • menu_item_option

    Defines option(s) for this menu item format: structure as defined below not required

    Attributes
    • name

      Name for this menu item's options format: 0 - 50 characters required if defined

    • min_selected

      Minimum items to select from these options format: numeric not required

    • max_selected

      Maximum items to select from these options format: numeric not required

    Tags
    • menu_item_option_information

      Additional information about this item option and the items that will follow format: 0 - 255 characters (no HTML allowed) not required

    • menu_item_option_item

      Details of an item for this option group format: structure as defined below one required if option item group defined

      Attributes
      • selected

        Determines if this option item is selected (default item for the menu item) format: select from 0 | 1 (0 = no | 1 = yes) not required

      Tags
      • menu_item_option_name

        Name of this option format: 2 - 50 characters required

      • menu_item_option_additional_cost

        Set any additional costs this option will add a menu item
        requirment: not required format: 1 - 7 characters: nnnn.nn (numeric only, period separator for decimals) not required

menu_item_tags (optional)
Tags
  • menu_item_tag

    Defines a tag for this menu item format: 0 - 35 characters not required