v

Canonical wine, offer and listing

The three-layer model that keeps wine data clean — why one wine, many offers, many listings.

Canonical wine, offer and listing

The single most important idea in Wine2You: three things that never duplicate each other.

The three layers

Layer Is… Owned by Key fields
Wine a fact about the world the register producer, vintage, appellation, grapes…
Offer one Originator's willingness to sell Originator stock, seller_price, permissions
Listing a Seller's shelf entry Seller shelf_price, channel_id
        ┌──────────────┐
        │     WINE     │  descriptive · canonical · one per wine
        └──────┬───────┘
               │ 1..n
        ┌──────┴───────┐
        │    OFFER     │  supply · price · permissions (per Originator)
        └──────┬───────┘
               │ 1..n
        ┌──────┴───────┐
        │   LISTING    │  shelf price (per Seller, per channel)
        └──────────────┘

Why this matters

What this buys you

Next steps

Edit this page on GitHub ↗