View Source GoogleApi.ContentWarehouse.V1.Model.GeostorePriceListProto (google_api_content_warehouse v0.4.0)

A PriceListProto can be used to represent any type of price lists, one of which is a menu of food and drinks. It contains names and descriptions, together with its source URL list if it is extracted or attributed to that URL. The names and descriptions are represented using repeated PriceListNameInfo fields to allow versions in different languages. A PriceListProto may contain multiple sections; in the context of a food menu, this would be multiple menu sections, e.g. for breakfast, lunch, dinner, prix fixe, or dinner for two, etc. At least one menu section must be present. Each section contains a number of items; for food menus, it may be FoodMenuItems defined below. At least one item must be present in each section.

Attributes

  • aggregatorId (type: String.t, default: nil) - For third party lists, represents the ID of the aggregator which provided this data. Optional.
  • availableTime (type: GoogleApi.ContentWarehouse.V1.Model.GeostoreTimeScheduleProto.t, default: nil) - The time period when this price list is available. Establishments are not required to give available_time for any given price list, however, when this field is not set, the price list is understood as available any time the establishment is open.
  • cuisines (type: list(String.t), default: nil) - Cuisine information if the location the price lists attached to is an eligible feature for a food menu price list. Cuisine information should also only show up in a food price list.
  • nameInfo (type: list(GoogleApi.ContentWarehouse.V1.Model.GeostorePriceListNameInfoProto.t), default: nil) - The repeated name_info field is for price lists listed in multiple languages. When a price list has no names or descriptions, the size of the repeated field name_info may be 0. There should be at most one name_info for any given language.
  • section (type: list(GoogleApi.ContentWarehouse.V1.Model.GeostorePriceListSectionProto.t), default: nil) - Each price list may have multiple sections. Note that these sections within the same price list should most times contain only the same type of items for sale, e.g. all sections should usually contain only food items if the enclosing price list is representing food menu. However, sometimes such a requirement may be wrong, for example, McDonald's may sell burgers as well as toys, and the toys may be in its own section. Thus we don't enforce any requirement that all sections contain only the same type of items.
  • sourceUrl (type: GoogleApi.ContentWarehouse.V1.Model.GeostoreUrlListProto.t, default: nil) - Where this price list comes from. If set, this must also be a member of the price_list_url field, and represents translations of a single URL.

Summary

Functions

Unwrap a decoded JSON object into its complex fields.

Types

@type t() :: %GoogleApi.ContentWarehouse.V1.Model.GeostorePriceListProto{
  aggregatorId: String.t() | nil,
  availableTime:
    GoogleApi.ContentWarehouse.V1.Model.GeostoreTimeScheduleProto.t() | nil,
  cuisines: [String.t()] | nil,
  nameInfo:
    [GoogleApi.ContentWarehouse.V1.Model.GeostorePriceListNameInfoProto.t()]
    | nil,
  section:
    [GoogleApi.ContentWarehouse.V1.Model.GeostorePriceListSectionProto.t()]
    | nil,
  sourceUrl: GoogleApi.ContentWarehouse.V1.Model.GeostoreUrlListProto.t() | nil
}

Functions

@spec decode(struct(), keyword()) :: struct()

Unwrap a decoded JSON object into its complex fields.