From Microformats Wiki
Revision as of 08:48, 7 June 2007 by PnaD6g (talk | contribs)
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.



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, Buy.com and AutoByTel.

hProduct would be compatible and combinable with hListing and hReview.


Giving details about a particular product is sometimes very complex as parameters are differnet 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.


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.


An hListing schema should consist of the following:

  • hProduct
    • version. optional. text.
    • name. required.
    • image. optional. IMG element or rel='image'. could be further refined as image type ( thumb || full, photo || illo)
    • description. optional. could be denoted as 'summary' or 'extended'
    • brand. text | hCard
    • uri. optional. URI to manufacturer product page.
    • msrp. optional. retail price.
    • p-v. optional. opens up possibilities for custom property-value pairs in more complex examples.
      • property. required.
      • value. required. (label may be implied)

Field Details

The fields of the hListing schema represent the following:

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 17-Nov-2006 is "0.0," since it has no official standing yet.


name:: This required field contains the name of the item

image:: This optional field contains either an image (as an IMG element) or a link to an image (as an A with rel="image"). The image can be categorized by additional terms such as 'thumb' (for thumbnail), 'full' (for full size image), 'photo' (for a photograph), 'illo' (for an illustration).

description:: This optional field contains the full text representing the written description of the item. The field MAY include valid XHTML markup (e.g. paragraphs). User agents SHOULD preserve any markup. Description could be either a 'summary' or an 'extended' description.

brand:: This optional field can contain either plan text or an |hCard for the organization responsible for the item. Examples would include Sony, Friends of ED, O'Reilly, etc.

uri:: This optional field is a URI for the product at its brand website. It is not to be confused with the hListing 'permalink'.

msrp:: This optional field is the manufacturer's suggested retail price for the item. It follows the proposed currency format.

=== Properties