Motivation
RSS
(Really Simple Syndication) revolutionalized web browsing by specifying
a standard syndication format and we are able to read the content of
numerous blogs/websites in one feed reader application. Today, there
are numerous shopping sites out there. Some of them generate feeds but
the basic RSS terms (such as title, link, description) are not
sufficient to present all the aspects of the product being sold.
Buy.com had already attempted to extend RSS for product attributes by
defining a product module for RSS 2.0.
But the industry needs to build upon this attempt to come up with a
generic and complete specification that is acceptable to many shopping
websites. Once it is adopted by many merchants, special feed readers
could be developed to aggregate these product feeds and provide advanced search capabilities based on price range, brand name or a combination of product attributes. This could be one
step forward towards next generation shopping experience and the "web of
data" (as envisioned by the Semantic web).
Draft Specification
Elements
of RSS 2.0 such as title, link, description, pubDate etc will be
re-used for the same purposes for products also. In addition, I propose
the following elements for the Product namespace.
<product:brand>
This
element is a sub-element of <item> (as are the rest of the
elements below). It is used to specify the brand or manufacturer of the
product. It is advised that the brand name is expanded fully instead of
using acronyms.
<product:family>
This element specifies the product family name if any. For example, Pavilion is a family of HP laptops.
<product:model>
This element specifies the model name or part number.
<product:category>
<product:subcategory>
These
elements specify the category and subcategory of the product.
Currently, every shopping site has it's own categorization which makes
it difficult to group products across sites. It is desired to come up
with a set of categories and subcategories that are widely accepted.
<product:price currency="three letter currency code">
This is used to specify the final offer price (after rebates etc). It
has one attribute to specify the currency code. The text of this
element should not contain currency sign such as $, # etc. The amount
specified should be in dollars and not cents.
If the merchant has many offers for the product (such as Amazon which
lists offers by other merchants also), they could specify the lowest
available price.
<product:listprice currency="three letter currency code">
This element is used to specify the list price of the product whenever it is different from the offer price.
<product:condition>
Used to specify the condition of the product. The only allowed values are New, Used and Refurbished.
<product:upc>
Used for providing the UPC code.
<product:weight unit="lb/oz/kg/g">
Used to specify the weight of the product. It takes one attribute to specify the unit.
<product:length unit="in/ft/m/cm">
<product:width unit="in/ft/m/cm">
<product:height unit="in/ft/m/cm">
The three elements above are used to specify the dimensions of the product. The attribute 'unit' can be inches, foot, meter or centimeter.
<product:isbn>
Used to specify the ISBN in case it is a book.
<product:color>
Used to specify the color of the product.
What next?
I
will contact shopping sites such as Amazon, Buy.com, Shop.com and RSS
specialists such as Dave Winer, Danny Ayers etc and ask for their
feedback.