What is ROR?
ROR (Resources of a Resource) is an XML format for describing the
content, objects, and structure of websites in a generic fashion
so search engines and other web applications can find and understand
information more easily.
For example if your website is selling products, ROR enables you
to document your product names, descriptions, prices, images,
availability, affiliate programs, etc. Or if your site or blog
provides information on a given topic, it allows you to describe
how this information is organized (sitemap, topics, categories,
new information, archive, blogroll, etc). ROR also provides terms
for documenting objects such as contacts, articles, newsletters,
feeds, images, audio, links, reviews, privacy policy, copyrights,
and more.
ROR File
ROR information can be easily added to your website by adding
a ROR File called ror.xml. ROR is actually quite simple. It is
built on top of RDF, the W3 Resource Description Language (http://www.w3.org/RDF).
If you are not familiar with RDF, don't worry, we won't go into
any details here.
With ROR, all objects are represented by a <Resource>
tag, and can optionally have a <type>
property to determine the type (or class) of the object (e.g.
Product,
Article,
Event,
etc). The other properties are typically determined by the type
you choose. Here is a simple example of a product described by
ROR:
<Resource>
<type>Product</type>
<title>My Product</title>
<desc>My great new product</desc>
<url>http://www.mywebsite.com/my-product.htm</url>
<price>19.95</price>
<currency>USD</currency>
</Resource>
Pretty simple, isn't it?
And if you want to describe other objects, ROR provides other types
like Contact, Article, Feed, Event, etc. You can find the current
list of object and their properties in the ROR Specification at
http://www.addme.com/ror-sitemap-generator.htm.
Now let's see how to assemble several objects together in a ROR
file. In a ROR file the meaning of information is determined by
both the objects and the relationship between them. Depending how
an object is linked to another object, it will provide a different
meaning. To link two objects together the property <resourceOf>
is used. Here is an example:
The first object uses the
rdf:about attribute
to identify itself so it can be referenced elsewhere. The <resourceOf>
property is then used to attach the second and third objects to
the first. Attaching the two objects to the first one is a way to
say that they contain information that relates to or further describes
that object.
That's pretty much it! Now that you know the essential about ROR,
let's create a simple ROR file. Again we won't go into the details
of RDF, but let's just say this; since ROR is built on top of RDF,
it is enclosed in the <rdf:RDF>
tag. Notice that the first object in this file has a type property
set to Main. This
designates it as the entry point into the data structure of the
ROR file.
Extending ROR
As mentioned above, ROR provides a set of pre-defined objects.
These are objects that are commonly used on websites (Contact,
Address, Webpage, Product, Feed, etc). But ROR can also
be easily combined with other vocabularies if you needed. As a
simple example, let's say you want to describe a list of people.
To do this you can combine ROR with the Friends of a Friend (FOAF
at http://www.foaf-project.org)
vocabulary. Here is what you would get: http://www.rorweb.com/examples/members.xml
. And of course you can also add terms from the Dublin Core vocabulary
(http://www.dublincore.org).
ROR Tools
The ROR website (http://www.rorweb.com)
offers several tools to help you create a ROR file, all free.
The ROR File Editor makes it easy to create and update
a simple ROR file without any coding. The File Reader allows
you to create a ROR file from a tab-delimited text file with your
products, articles, links, or contacts information. This tools
can also read a Froogle product feed or a Yahoo Shopping feed.
Finally, the ROR Explorer allows you to drill down into
the information of a ROR file.
Tell the world what your site is all about, ROR
your website! Some large websites are already using ROR, see them
here.