The document specifies the Product Simple Syndication (PSS) format for syndicating product data in XML. It defines required and optional elements for manufacturers, brands, and items. Key elements include name, description, image, GTIN, and product information. The format is based on RSS but aims to aggregate products by GTIN instead of publishing dates. The specification may be extended in the future to support more product types and standardized codes.
1. PSS 0.01 Specification
Contents
What is PSS?
Sample files
About this document
Required manufacturer elements
Optional manufacturer elements
Required Elements of <brand>
Optional Elements of <brand>
Required Elements of <item>
Optional Elements of <item>
Comments
Extending P-RSS
Roadmap
License and authorship
What is PSS?
PSS is a Web content syndication format.
Its name is an acronym for Product Simple Syndication.
PSS is a dialect of XML. All PSS files must conform to the XML 1.0 specification, as published on the World Wide
Web Consortium (W3C) website.
A summary of PSS version history.
At the top level, a PSS document is a <pss> element, with a mandatory attribute called version, that specifies the
version of PSS that the document conforms to. If it conforms to this specification, the version attribute must be
0.01.
Subordinate to the <pss> element is a single <manufacturer> element, which contains information about the
manufacturer (metadata) and its products.
Sample files
Here are sample files for: PSS 0.01.
About this document
This document represents the current status of PSS anduse as a template the structure of the RSS 2.11
specification. Change notes are here.
First we document the required and optional sub-elements of <manufacturer>; and then document the sub-
elements of <brand> and <item>. The final sections answer frequently asked questions, and provide a roadmap
for future evolution, and guidelines for extending PSS.
The PSS Profile contains a set of recommendations for how to create PSS documents that work best in the wide
and diverse audience of client software that supports the format.
PSS documents can be tested for validity in the PSS Validator.
1
2. Required manufacturer elements
Here's a list of the required manufacturer elements, each with a brief description, an example, and where
available, a pointer to a more complete description.
Element Description Example
name The name of the manufacturer. Beverage Alpha
link The URL to the manufacturer official HTML website http://www.b-alpha.com/
description Phrase or sentence describing the activity of the manufacturer. Fruit juice producer.
Optional manufacturer elements
Here's a list of optional manufacturer elements.
Element Description Example
language The language the manufacturer is written in. This en-us
allows aggregators to group all Italian language sites,
for example, on a single page. A list of allowable values
for this element, as provided by Netscape, is here.
copyright Copyright notice for content in the feed. Copyright 2013, Beverage Alpha
managingEditor Email address for person responsible for editorial jacob@beverage-alpha.com (Jacob
content. Marley)
webMaster Email address for person responsible for technical robert@beverage-alpha.com (Robert
issues relating to feed. Marley)
pubDate The publication date for the content in the feed. All Sun, 15 Oct 2013 16:52:00 GMT
date-times in RSS conform to the Date and Time
Specification of RFC 822, with the exception that the
year may be expressed with two characters or four
characters (four preferred).
lastBuildDate The last time the content of the feed changed. Sun, 15 Oct 2013 17:35:23 GMT
category Specify one or more categories that the manufacturer <category>Newspapers</category>
belongs to. Follows the same rules as the <item>-
level category element. More info.
generator A string indicating the program used to generate the MightyInHouse Content System v2.3
feed.
2
3. docs A URL that points to the documentation for the format http://www.product-open-
used in the PSS file. It's probably a pointer to this page. data.com/pss-specification
It's for people who might stumble across an PSS file on
a Web server 25 years from now and wonder what it is.
ttl ttl stands for time to live. It's a number of minutes that <ttl>60</ttl>
indicates how long a manufacturer can be cached
before refreshing from the source. More info here.
image Specifies a GIF, JPEG or PNG image representing the
manufactuer's logo that can be displayed. More
info here.
rating The PICS rating for the feedr.
textInput Specifies a text input box that can be displayed with the
manufacturer. More info here.
skipHours A hint for aggregators telling them which hours they
can skip. This element contains up to 24 <hour> sub-
elements whose value is a number between 0 and 23,
representing a time in GMT, when aggregators, if they
support the feature, may not read the feed on hours
listed in the <skipHours> element. The hour beginning
at midnight is hour zero.
skipDays A hint for aggregators telling them which days they can
skip. This element contains up to seven <day> sub-
elements whose value is Monday, Tuesday,
Wednesday, Thursday, Friday, Saturday or Sunday.
Aggregators may not read the feed during days listed in
the <skipDays> element.
<image> sub-element of <manufacturer>
<image> is an optional sub-element of <manufacturer>, which contains three required and three optional sub-
elements.
<url> is the URL of a GIF, JPEG or PNG image that represents the manufacturer's logo.
<title> describes the image, it's used in the ALT attribute of the HTML <img> tag when the manufacturer is
rendered in HTML.
<link> is the URL of the site, when the feed is rendered, the image is a link to the site. (Note, in practice the image
<title> and <link> should have the same value as the manufacturer's <title> and <link>.
Optional elements include <width> and <height>, numbers, indicating the width and height of the image in pixels.
<description> contains text that is included in the TITLE attribute of the link formed around the image in the HTML
rendering.
Maximum value for width is 144, default value is 88.
Maximum value for height is 400, default value is 31.
3
4. <ttl> sub-element of <manufacturer>
<ttl> is an optional sub-element of <manufacturer>.
ttl stands for time to live. It's a number of minutes that indicates how long a feed can be cached before refreshing
from the source. This makes it possible for RSS sources to be managed by a file-sharing network such as
Gnutella.
Example:
<ttl>60</ttl>
<textInput> sub-element of <manufacturer>
A manufacturer may optionally contain a <textInput> sub-element, which contains four required sub-elements.
<title> -- The label of the Submit button in the text input area.
<description> -- Explains the text input area.
<name> -- The name of the text object in the text input area.
<link> -- The URL of the CGI script that processes text input requests.
The purpose of the <textInput> element is something of a mystery. You can use it to specify a search engine box.
Or to allow a reader to provide feedback. Most aggregators ignore it.
Requiered brand's elements
A manufacturer may contain any number of <brand>s. The difference between a product line and a brand has to
be defined by the manufacturer;
Here's a list of requiered brand elements.
Element Description Example
name Name of the brand. Super Juice
Optional brand's elements
Here's a list of optional brand elements.
Element Description Example
description Phrase or sentence describing the activity of the manufacturer. Fruit juice
producer.
image Specifies a GIF, JPEG or PNG image representing the manufactuer's logo that
can be displayed. More info here.
4
5. <image> sub-element of <brand>
<image> is an optional sub-element of <manufacturer>, which contains three required and three optional sub-
elements.
<url> is the URL of a GIF, JPEG or PNG image that represents the brand's logo.
<title> describes the image, it's used in the ALT attribute of the HTML <img> tag when the brand is rendered in
HTML.
<link> is the URL of the site, when the feed is rendered, the image is a link to the site. (Note, in practice the image
<title> and <link> should have the same value as the brand's <title> and <link>.
Optional elements include <width> and <height>, numbers, indicating the width and height of the image in pixels.
<description> contains text that is included in the TITLE attribute of the link formed around the image in the HTML
rendering.
Maximum value for width is 144, default value is 88.
Maximum value for height is 400, default value is 31.
Requiered item's elements
A brand may contain any number of <item>s. An item may represent a product or a live animal;
Here's a list of requiered item elements.
Element Description Example
gtin The GTIN composed of 13 digits and officially assigned by the GS1 organization. 3272036004636
GTIN-12 must be left padded with a zero. The code can be tested for validity with
the GS1 check digit calculator.
name The commercialization name of the item. Pure orange juice
extra
brand The URL of the item. Bio juice
gpc The GPC Brick code of the item. This code is used to classify the item. GS1 10000201
Website provides the list of all the possible GPC Brick codes.
Optional item's elements
Here's a list of optional item elements.
Element Description Example
productLine The product line of the product. Note that this element is clearly linked to the Skin Care in
business of the manufacturer, his structure and history. cosmetic
5
6. measure Specifies the measures of weight, volume and alcohol. More info here.
packaging Specifies the attributes of the packaging. More info here.
image Specifies a GIF, JPEG or PNG image of the item. More info here.
description Presentation the item. This text can be subjective. The best orange
juice...
link URL of a item page on the manufacturer's website.
ref Reference used by the manufacturer to identify a product before its AX23568B
commercialization.
commDate Indicates when the item was commercialized.More.
<image> sub-element of <item>
<image> is an optional sub-element of <item>, which contains three required and three optional sub-elements.
<url> is the URL of a GIF, JPEG or PNG image of the item.
<title> describes the image, it's used in the ALT attribute of the HTML <img> tag when the manufacturer is
rendered in HTML.
<link> is the URL of the site, when the feed is rendered, the image is a link to the site. (Note, in practice the image
<title> and <link> should have the same value as the item's <title> and <link>.
Optional elements include <width> and <height>, numbers, indicating the width and height of the image in pixels.
<description> contains text that is included in the TITLE attribute of the link formed around the image in the HTML
rendering.
Maximum value for width is 144, default value is 88.
Maximum value for height is 400, default value is 31.
<measure> sub-element of <item>
<measure> is an optional sub-element of <item>, which contains six optional sub-elements. Note that the volume
and the weight measure may be indicated for certain type of product.
<ml> -- The volume of the item in milliliters (ml).
<floz> -- The volume of the item in fluid ounces (fl oz).
<g> -- The weight of the item in grams (g).
<g> -- The weight of the item in ounces (oz).
<abv> -- The alcohol by volume (ABV). The degree (°) and percentage (%) have the same meaning.
6
7. <abw> -- The alcohol by weight (ABW), used by some brewers instead of ABV. The degree (°) and percentage (%)
have the same meaning.
<packaging> sub-element of <item>
<packaging> is an optional sub-element of <item>, which contains two optional sub-elements.
<description> -- Indicate the type of material used to do the pack and the shape (ex: glass bottle).
<internalUnit> -- The number of identical elements contained into a product (ex: pack of 4 pots of yogurt).
<commDate> sub-element of <item>
<commDate> is an optional sub-element of <item>.
Its value is a date, indicating when the item was commercialized. If it's a date in the future, aggregators may
choose to not display the item until that date.
Comments
If you have questions about the PSS format, please post them on the PSS Public group . The group serves as a
support resource for users, authors and developers who are creating and using content in the format.
Extending PSS
PSS is an adaptation of the RSS feeds, the main key used for aggregation is the product GTIN code instead of
the date for the News contained in RSS.
RSS originated in 1999, and has strived to be a simple, easy to understand format, with relatively modest goals.
After it became a popular format, developers wanted to extend it using modules defined in namespaces,
as specified by the W3C.
RSS 2.0 adds that capability, following a simple rule. A RSS feed may contain elements and attributes not
described on this page, only if those elements and attributes are defined in a namespace.
The elements defined in this document are not themselves members of a namespace, so that RSS 2.0 can
remain compatible with previous versions in the following sense -- a version 0.91 or 0.92 file is also a valid 2.0 file.
If the elements of RSS 2.0 were in a namespace, this constraint would break, a version 0.9x file would notbe a
valid 2.0 file.
Roadmap
The first version of PSS is clearly focused on the food & beverage products so it will probably updated to fit with
characteristics to other kind of products. Some elements are currently not refering to codification (brand, type of
packaging,...), the addition of standard codification is important.
License and authorship
This document is authored by the Philippe Plagnol and is offered under the terms of
the Creative Commons Attribution/Share Alike license, based on an original RSS
specification published by the Berkman Center for Internet & Society at Harvard Law
School authored by Dave Winer.
7