WebSchemas/SellerVendorCleanup

From W3C Wiki


This wiki entry tracks the details needed to implement schema.org proposal 'Beta', which shipped as part of the v1.9 release.

Changes proposed

Exact and final details will be in github, but this gives a medium-level overview.

Main points

  • Use existing 'provider' property to describe the service provider, service operator, or service performer (see provider in exchange model in PDF) and update its description to more clearly indicate this intended usage;
  • Use existing 'seller' property to describe the entities which sell or offer a service on behalf of the actual service provider (see seller in exchange model). In the case of flights, this would be the airline through which a flight was booked. If a 'seller' is not provided, it is assumed the 'provider' is also the 'seller'.
  • Introduce a ‘broker’ property to describe entities that map to the broker concept in the exchange model.
  • deprecate ‘bookingAgent’ in favor of the more generic, newly proposed ‘broker’ property
  • deprecate 'vendor' in favor of re-using 'seller'
  • deprecate ‘merchant’ in favor of re-using ‘seller’
  • deprecate 'carrier' within Flight and ParcelDelivery in favor of using the newly described 'provider'


Implementation Details

Additions (broker) and clarifications (provider, seller)

  • broker:
    • add a new broker property.
    • description: "An entity that arranges for an exchange between a buyer and a seller. In most cases a broker never acquires or releases ownership of a product or service involved in an exchange. If it is not clear whether an entity is a broker, seller, or buyer, the latter two terms are preferred."
    • Expected types: domain includes Order and Reservation (needed as 'broker' supercedes 'bookingAgent'); anything else?; range includes Person and Organization.
  • provider:
    • new text: "The service provider, service operator, or service performer; the goods producer. Another party (a seller) may offer those services or goods on behalf of the provider. A provider may also serve as the seller."
    • old text: The person or organization providing the service, reservation, or creative work. The provider may subcontract out the service.
    • additional domain included: ParcelDelivery, due to 'carrier' being supercededBy 'provider'.
  • seller:
    • old text: "The organization or person making the offer."
    • new text: "An entity which offers (sells / leases / lends / loans) the services / goods. A seller may also be a provider"
    • earlier suggestion: "The entity which sells or offers services or goods. The seller may sell / offer goods and services on behalf of a provider." (see discussion)
    • new domains included: BuyAction, Order (since we're superceding 'merchant', 'vendor')
    • new super-property: participant (cf. vendor)

supercededBy properties

  • bookingAgent:
    • bookingAgent supercededBy broker.
    • old text: "If the reservation was not booked directly through the provider, the third-party booking agent can be recorded through this property."
    • new text: "'bookingAgent' is an out-dated term indicating a 'broker' that serves as a booking agent."
  • vendor:
    • vendor supercededBy seller.
    • old text: "A sub property of participant. The seller. The participant/person/organization that sold the object."
    • new text: 'vendor' is an out-dated term for seller."
    • 'vendor' domain was BuyAction -- added this to seller; 'vendor' was supropertyof participant; also added to seller.
  • merchant:
    • merchant supercededBy seller.
    • old text: "The party taking the order (e.g. Amazon.com is a merchant for many sellers)""
    • new text: "'merchant' is an out-dated term for 'seller'."
    • old domain included: Order; added to seller.
  • carrier:
    • carrier supercededBy provider.
    • old text: "The party responsible for the parcel delivery."
    • new text: "'carrier' is an out-dated term indicating the 'provider' for parcel delivery."
    • Note that Flight, ParcelDelivery values (added with these changes) are acceptable values for 'provider' property.
  • flightNumber:
    • Changed recommendation to encourage inclusion of airline code, to cover cases where a Flight can be sold by one Airline and operated (provided) by a different Airline.
    • old text: The unique identifier for a flight, not including the airline IATA code. For example, if describing United flight 110, the flightNumber is '110'. The IATA code can be set on the Airline.
    • new text: The unique identifier for a flight including the airline IATA code. For example, if describing United flight 110, where the IATA code for United is 'UA', the flightNumber is 'UA110'.