Capturing reviews

Ian Bicking ianb at colorstudy.com
Thu Mar 22 13:50:00 EDT 2007


I was just talking to SJ about tagging and collecting content for the 
library and all that.  My first idea was that a collection of content is 
just a bunch of links, and people manage that bunch of links however 
they want (e.g., on a wiki).  Then that seemed a little too crude, and I 
remembered about hReview: http://microformats.org/wiki/hreview -- it's a 
microformat (markup embeddable in HTML) for representing reviews.  I've 
been reading the page some more, and I'm totally digging how it could be 
used.

So I'm imagining a tool where you give it a URL or a few URLs, and grab 
those pages and look for this hReview markup.  You can embed comments, 
tags, and ratings inside the markup.  It'll grab all of these, and then 
let you query what it's grabbed.  So at that point you could say "show 
me what pages are rated 2 or higher", or "show me everything tagged with 
'chemistry'" or whatever.  Then when you are satisfied, you can create a 
stand-alone bundle of all that content.  Or maybe just create a table of 
contents for your new View Of The Web (for online viewing).  Or take 
back the information you've collected and look for some content you feel 
is missing.

This markup could be added to existing apps or services, and we don't 
have to do any special integration with one particular service.  There 
are some services that produce it: 
http://microformats.org/wiki/hreview-examples-in-wild -- I haven't 
really digested this list, so I don't know what is appropriate for us.

Maybe an example would be useful:

<div class="hreview">
  <span class="item">
   <a class="url fn"
    href="http://wiki.laptop.org/go/GTK_for_OLPC">GTK for OLPC</a>
  </span>
  <div class="description">
   <p>
    Covers the differences of using GTK in an OLPC environment, and using
    GTK in more traditional environments.
   </p>
  </div>
  (<abbr class="rating" title="4">****</abbr>)
  <ul>
   <li class="rating">
    <a href="http://wiki.laptop.org/go/Introduction_to_Programming_OLPC"
     rel="tag">
     Programming <span class="value">3</span>
    </a>
   </li>
   <li class="rating">
    <a href="http://wiki.laptop.org/go/Introduction_to_Sugar"
     rel="tag">
     Sugar <span class="value">5</span>
    </a>
   </li>
  </ul>
  <p class="reviewer vcard">Review by
   <a class="url fn" href="http://ianbicking.org">Ian Bicking</a>,
   <abbr class="dtreviewed" title="200703">March '07</abbr>
  </p>
</div>

So, in this, I've said:
* What the URL is (fn means this is the thing I'm rating)
* A comment (description)
* An overall rating (of 4)
* I've tagged it with Programming (the link to the wiki page implies a 
specific meaning -- in this case probably a tutorial I'm trying to 
assemble), with a rating related to that
* And I've tagged it with GUI, with a different rating (it's more 
relevant there)
* And I've said who I am, and when I made this review

They have a tool to help you make this code: 
http://microformats.org/code/hreview/creator -- but for some subset we 
could probably convert simpler formats (e.g., what can be easily entered 
on a wiki), and tagging sites already have structured data of their own 
that they can just present in this format.

What occurred to me this morning is that you can indicate the type as 
well, and I'm thinking about a "review" type.  So you are basically 
creating a review of a review.  The tool sees this, and then brings in 
all of *those* reviews, allowing you to collect information from a 
variety of sources.  And you can bring them in with different metrics. 
An example I can imagine:

<div class="hreview">
  <span class="item">
   <a class="url fn"
    href="{page with reviews}">Joe's reviews</a>
  </span>
  <div class="description">
   <span class="type" title="review">
    Joe collects a lot of great links about frogs
   </span>
  </div>
  <ul>
   <li class="rating">
    <a href="http://wiki.naturalsciences.org/amphibians"
     rel="tag">
     Amphibians <span class="value">5</span>
    </a>
   </li>
  </ul>
</div>

And all the links would be collected there, and the amphibian tag will 
be added to every item, and maybe some adjustment of Joe's ratings will 
be applied (probably some weight applied to the rating based on the 
rating of his reviews).

Sorry for the length of this; I just got excited when I started thinking 
about review aggregation as just being a recursive process.  I'm also 
stoked about hReview.


-- 
Ian Bicking | ianb at colorstudy.com | http://blog.ianbicking.org
             | Write code, do good | http://topp.openplans.org/careers


More information about the Library mailing list