hproduct-proposal

From Microformats Wiki
Jump to navigation Jump to search

draft hProduct Proposal

hProduct is a format suitable for embedding in (X)HTML, Atom, RSS, and arbitrary XML. hProduct would be related to several microformats (including hListing and hReview) and would be an open standard.

Authors

(in alphabetical order)

Introduction

The web is a thriving marketplace with a plethora of vendors scattered across the globe. Sifting through this mass of information is difficult when it is unstructured. The hProduct microformat will bring order and structure to the chaos, making it easy for people to list the products they offer and easy for Web Services to consume that product information for analysis and syndication. This proposal follows the common practices of ecommerce sites such as Amazon, BestBuy.com, Buy.com, and AutoByTel.

hProduct is compatible and combinable with hListing and hReview.

Scope

Giving details about a particular product is sometimes very complex as parameters are differnt for books and CDs than they are for iPods or cars. It should be very easy to mark up an item using hProduct and the syntax should be simple yet flexible enough for more advanced applications.

Out of Scope

This microformat does not intend to replicate any of the content proposed within hListing and would defer all money/transactional matters to that microformat. This microformat also does not attempt to specify a product ontology, or category-specific attributes; instead, it aims to create a framework to allow for flexible expression of both.

Format

In General

The hProduct format is based on a set of fields common to numerous ecommerce sites and formats in use today on the web.

Schema

The hProduct schema consists of the following:

field required description
availability optional text; can be further refined as availability type (instore, online, specialorder)
brand optional text or hCard for organization that manufacturers or produces the item, e.g., Sony
buy optional text; purchase messaging and/or rel="purchase" indicating target uri for purchasing item
category optional text; single phrase or open string
condition optional text, e.g., 'new' 'used' or 'refurbished'
description optional text; may include valid XHTML markup (e.g., paragraphs), user agents should preserve any markup; can be denoted as 'summary' or 'extended'
image optional image (IMG element) or image link (rel='image'); can be further refined (thumb, full, photo, illo)
model optional text
name required text; i.e., product title
price optional floating point number; can be further refined by specific type (sale, regular, msrp, clearance); should follow currency format
quantity optional integer
reviews optional text; hReview
shipping optional text; shipping messaging, e.g., 'ships within 24-48 hours'
uri optional uri to product page; href can contain rel='product'
version optional text
version optional text

The identifier structure is used to describe product identifiers like UPC or SKU, and is designed to accommodate new or as-yet-unidentified identifiers.

In addition to the above fields, hProduct includes a properties and values (p-v) mechanism to accommodate the wide variation in product attributes.

  • p-v (optional)
    • property (required) - examples:
      • accessory for
      • artist
      • author
      • color
      • compatible with
      • quantity in lot
      • rating - can be further denoted into rating types (product || merchant || mpaa || esrb || others)
      • released - hcalendar event for date of release
      • size
    • value (required) - label may be implied

Additional Details

Version

version: This optional field permits hProduct publishers to specify a particular version of hProduct that their content uses. By omitting this field, the publisher is stating that implementations may interpret the hListings according to any version of the hProduct specification. The value for this proposal as of 28-Oct-2008 is "0.0," since it has no official standing yet.


Cross-cutting issues

Internationalization: Though there are many English-language tokens, they are only used as invisible class-names; user-visible listing information can be completely localized. Note that (X)HTML LANG attribute rules still apply as usual, for multilingual aggregators of hProduct.

Certain field names have been reused from the hCard and hCalendar microformats, e.g., version, description. In addition, brands described by hProduct may contain hCard fields.

Examples (Preliminary)

Simple Product

The Pick of Destiny
by Tenacious D
The Pick of Destiny is the highly anticipated soundtrack to the upcoming 
New Line Cinema comedy, Tenacious D in the Pick of Destiny. An epic 
musical adventure, the film follows Tenacious D (Jack Black and Kyle Gass)
on their quest to obtain the Pick and become The Greatest Band on Earth.
Released: November 14, 2006
Label: Sony
UPC: 82796948912
<div class="hproduct">
   <h4 class="name">The Pick of Destiny</h4>
   <h5 class="p-v">by <span class="property artist">Tenacious D</span></h5>
   <p class="description summary">The Pick of Destiny is the highly 
   anticipated soundtrack to the upcoming New Line Cinema comedy, Tenacious
   D in the Pick of Destiny. An epic musical adventure, the film follows 
   Tenacious D (Jack Black and Kyle Gass) on their quest to obtain the Pick
   and become The Greatest Band on Earth.</p>
   <ul>
     <li class="p-v"><span class="property">Released</span>:
       <span class="value"><abbr title="2006-11-14T12:00:01-05:00">November
       14, 2006</abbr></span></li>
     <li>Label: <span class="brand">Sony</span></li>
     <li class="p-v"><span class="property">UPC</span>:
       <span class="value">82796948912</span></li>
   </ul>
</div>

Examples in Production

Changes

mid Nov 2006: initial concepting.

15-July-2008: hProduct revival effort

28-Oct-2008: Agreement on initial hProduct draft

research

Discussions

See also

Acknowledgements

Much of this document is based on the fine work of the folks behind hListing and their proposal.