MenuItem

A single transcribed line item positioned on a MenuPage in the NYPL 'What's on the Menu?' dataset. A MenuItem links a Dish to a specific MenuPage, capturing the price and the (x, y) location of the transcription on the page image. Corresponds to a row in MenuItem.csv.

LibrariesMenusRestaurantsHistoryOpen DataFoodDatasetsCultural Heritage

Properties

Name Type Description
id integer Unique numeric identifier for the menu item (transcription instance).
menu_page_id integer Foreign key to the MenuPage.id on which this item was transcribed.
dish_id integernull Foreign key to the Dish.id this item names. May be null when a transcription has not yet been linked to a normalized dish.
price numbernull Transcribed price of the dish as it appeared on the menu, in the menu's currency. Decimal with up to 3 places.
high_price numbernull Upper bound of a price range when the menu listed a range rather than a single price.
xpos numbernull Normalized horizontal position (0..1) of the transcription on the page image, relative to MenuPage.full_width.
ypos numbernull Normalized vertical position (0..1) of the transcription on the page image, relative to MenuPage.full_height.
created_at stringnull Timestamp when the transcription record was created.
updated_at stringnull Timestamp when the transcription record was last updated.
View JSON Schema on GitHub

JSON Schema

new-york-public-library-whats-on-the-menu-menu-item-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/new-york-public-library-whats-on-the-menu/refs/heads/main/json-schema/new-york-public-library-whats-on-the-menu-menu-item-schema.json",
  "title": "MenuItem",
  "description": "A single transcribed line item positioned on a MenuPage in the NYPL 'What's on the Menu?' dataset. A MenuItem links a Dish to a specific MenuPage, capturing the price and the (x, y) location of the transcription on the page image. Corresponds to a row in MenuItem.csv.",
  "type": "object",
  "required": ["id", "menu_page_id", "dish_id"],
  "additionalProperties": false,
  "properties": {
    "id": {
      "type": "integer",
      "minimum": 1,
      "description": "Unique numeric identifier for the menu item (transcription instance)."
    },
    "menu_page_id": {
      "type": "integer",
      "minimum": 1,
      "description": "Foreign key to the MenuPage.id on which this item was transcribed."
    },
    "dish_id": {
      "type": ["integer", "null"],
      "minimum": 1,
      "description": "Foreign key to the Dish.id this item names. May be null when a transcription has not yet been linked to a normalized dish."
    },
    "price": {
      "type": ["number", "null"],
      "minimum": 0,
      "description": "Transcribed price of the dish as it appeared on the menu, in the menu's currency. Decimal with up to 3 places."
    },
    "high_price": {
      "type": ["number", "null"],
      "minimum": 0,
      "description": "Upper bound of a price range when the menu listed a range rather than a single price."
    },
    "xpos": {
      "type": ["number", "null"],
      "minimum": 0,
      "maximum": 1,
      "description": "Normalized horizontal position (0..1) of the transcription on the page image, relative to MenuPage.full_width."
    },
    "ypos": {
      "type": ["number", "null"],
      "minimum": 0,
      "maximum": 1,
      "description": "Normalized vertical position (0..1) of the transcription on the page image, relative to MenuPage.full_height."
    },
    "created_at": {
      "type": ["string", "null"],
      "format": "date-time",
      "description": "Timestamp when the transcription record was created."
    },
    "updated_at": {
      "type": ["string", "null"],
      "format": "date-time",
      "description": "Timestamp when the transcription record was last updated."
    }
  }
}