The WineGraph Open Data Model
One canonical model for the wine trade. Producer → wine → vintage → SKU, joined to who imports, distributes, and pours it, with the source behind every field.
Building a wine site, or moving data between layers of the trade? Adopt this model, publish to it, and plug into the graph. It is the same model WineGraph runs in production: open, versioned, and machine-readable. The spec is free to use. Entity resolution and the resolved corpus are the hosted product.
Machine-readable
Artifacts
The model
Entities
Supply — producers & wines
producerProducerA winery / estate / négociant that makes wine.
founded · sizeHa · farming · philosophy
skuWine (SKU)A specific bottling — the canonical wine unit. Producer + cuvée + vintage + format.
wine.color · wine.sparkling · wine.grapes · wine.farming · wine.abv · wine.appellation · facets
vintageVintageA vintage-level grouping (optional intermediate between wine and SKU).
brandBrandA commercial brand spanning bottlings.
Trade — importers & distributors
importerImporterA US importer of record (TTB permit holder).
org.permit · org.dba
distributorDistributorA wholesaler / distributor (state-licensed).
Demand — shops & restaurants
retailerWine ShopAn off-premise retailer.
geo · web
restaurantRestaurantAn on-premise venue with a wine list.
geo · web
Reference — regions, grapes, places, terms
regionRegionA wine region / appellation with content + hierarchy.
reference.slug* · reference.content · reference.parentSlug
grapeGrapeA grape variety with content.
reference.slug* · reference.content
placePlaceA town / site / landmark.
reference.slug*
termTermA glossary concept / technique / classification.
reference.slug*
Accolades — critics, awards, publications
awardAwardA discrete honor (Michelin star, Wine Spectator Grand Award, …).
accolade.issuer* · accolade.scale
criticCriticA wine/restaurant critic or critic-outlet.
accolade.issuer
publicationPublicationAn editorial outlet (reviews, lists).
accolade.issuer
The graph
Relationships
producesproducer → skuA producer makes a wine.importsimporter → skuAn importer brings a wine into the US.distributesdistributor → skuA distributor carries a wine.listed_byretailer|restaurant → skuA venue lists/pours a wine.in_regionproducer|sku → regionLocated in / from a region.has_grapesku → grapeMade from a grape variety.subregion_ofregion → regionRegion hierarchy.related_toreference → referenceCross-link between reference entries.awardedaward → restaurant|retailer|sku|producerAn award held by an entity.rated_bycritic|publication → sku|restaurantA rating from a critic/outlet.reviewed_bypublication → restaurant|skuAn editorial review.listed_inaward|publication → restaurant|retailerMembership in a curated list (Resy/OpenTable/50 Best).The trust layer
Provenance envelope
Every enriched field carries provenance — value, source, confidence, and when it was observed — so merges are highest-confidence-wins and never silently overwrite. This is what makes the model trustworthy across many publishers.
value*objectThe asserted value.source*stringSource identifier (connector / publisher).confidence*number0–1 confidence.observedAt*dateWhen observed (ISO date).refstringSource URL / reference.Cross-system
Identifiers
ttb_permitUS TTB importer/wholesaler permit number.
osmOpenStreetMap `<type>/<id>`.
slugWineGraph URL slug.
learnedA learned match key from the resolver corpus.
importer_siteImporter/distributor portfolio site-local id.
producer_nameNormalized producer name.
accolade_slugAward/critic/publication slug.
Controlled
Vocabularies
Colours
red · white · rose · orange
Reference types
region · grape · place · term
Entity types (15)
producer · sku · vintage · brand · importer · distributor · retailer · restaurant · region · grape · place · term · award · critic · publication
Get involved
Adopt the standard
- Read the data — the /v1 API + dataset speak this model.
- Publish your data — expose a
/.well-known/winegraph.json+ a conformant feed; we (and anyone) can ingest it. - Build on it — type definitions, a connector SDK, a validator CLI, and a one-click site starter are on the way (open-source).
Spec licensed Apache-2.0 · open graph data ODbL · v0.1.0, semantically versioned.