hReview-aggregate 0.2

(Difference between revisions)

Jump to: navigation, search
m (Reverted edits by Gowrvw (Talk) to last version by Goennech)
Line 1: Line 1:
-
HOW THING THROUGH
+
<entry-title>hReview-aggregate 0.2</entry-title>
-
HOW MAKE THING THROUGH
+
{{DraftSpecification}}
-
HOW THING BE THROUGH
+
 
-
HOW MAKE THING BE THROUGH
+
[[hreview-aggregate|hReview-aggregate]] is a format for embedding review information (of products, services, businesses, etc). Whereas [[hreview|hReview]] is intended for an individual review, hReview-aggregate is meant for summary information about a collection of user or critic reviews about an item. hReview-aggregate is one of several [[microformats]] open standards suitable for embedding in HTML, XHTML, Atom, RSS, and arbitrary XML.
-
HOW ANYTHING THROUGH
+
 
-
HOW MAKE ANYTHING THROUGH
+
== Microformats Draft Specification 2009-11-10 ==
-
HOW ANYTHING BE THROUGH
+
 
-
HOW MAKE ANYTHING BE THROUGH
+
; Editor: [[User:KaviGoel|Kavi Goel]], Google
-
HOW EVERYTHING THROUGH
+
; Authors/Contributers (alphabetical): [[User:Tantek|Tantek Çelik]]
-
HOW MAKE EVERYTHING THROUGH
+
: Othar Hansson, Google
-
HOW EVERYTHING BE THROUGH
+
: [[User:JayMyers|Jay Myers]], [http://www.bestbuy.com/ Best Buy, Co., Inc.]
-
HOW MAKE EVERYTHING BE THROUGH
+
 
-
HOW UNIVERSE THROUGH
+
== Introduction ==
-
HOW MAKE UNIVERSE THROUGH
+
 
-
HOW UNIVERSE BE THROUGH
+
Many websites publish reviews using a variety of organization schemes. hReview-aggregate and the similar microformat [[hreview|hReview]] were designed to enable sharing of review information.
-
HOW MAKE UNIVERSE BE THROUGH
+
 
-
HOW THING OUT
+
hReview, created in 2006, is well suited to mark up reviews done by individuals on their own websites or for editor's reviews for a new product or service. However, in recent years, there has been an increasing number of sites who aggregate user reviews, either by accepting reviews submitted to their website or by collecting those user reviews from across the web. In these cases, it is often valuable to share not just the individual reviews shown on the webpage, but the consensus opinion derived from those individual reviews.
-
HOW MAKE THING OUT
+
 
-
HOW THING BE OUT
+
hReview-aggregate was created to address this need. hReview-aggregate is a standard that can be used to share the number of reviews, average rating, and consensus opinion for a particular product or service. It is meant to complement hReview and reuses hReview properties wherever appropriate. Research and discussion that fed into the design of hReview-aggregate can be found on the [[aggregate-review-brainstorming|aggregate review brainstorming]] wiki page.
-
HOW MAKE THING BE OUT
+
 
-
HOW ANYTHING OUT
+
{{rfc-2119-intro}}
-
HOW MAKE ANYTHING OUT
+
 
-
HOW ANYTHING BE OUT
+
=== Scope ===
-
HOW MAKE ANYTHING BE OUT
+
 
-
HOW EVERYTHING OUT
+
Collections of reviews consistently share several common aspects. Where possible hReview-aggregate has been based on this common subset.
-
HOW MAKE EVERYTHING OUT
+
 
-
HOW EVERYTHING BE OUT
+
=== Out of scope ===
-
HOW MAKE EVERYTHING BE OUT
+
 
-
HOW UNIVERSE OUT
+
Portions of reviews that are specific to particular kinds of items have been omitted from hReview-aggregate.
-
HOW MAKE UNIVERSE OUT
+
 
-
HOW UNIVERSE BE OUT
+
== Format ==
-
HOW MAKE UNIVERSE BE OUT
+
 
-
HOW THING THROUGH
+
=== Schema ===
-
HOW MAKE THING THROUGH
+
 
-
HOW THING BE THROUGH
+
The hReview-aggregate schema consists of the following:
-
HOW MAKE THING BE THROUGH
+
 
-
HOW ANYTHING THROUGH
+
* hReview-aggregate ('''<code>hreview-aggregate</code>''')
-
HOW MAKE ANYTHING THROUGH
+
** '''<code>item</code>''' info. required. '''<code>fn</code>''' ('''<code>url</code>''' || '''<code>photo</code>''' ) | '''[[hcard|hCard]]''' (for person or business) | '''[[hcalendar|hCalendar]]''' (for event) | '''[[hproduct|hProduct]]''' (for product)
-
HOW ANYTHING BE THROUGH
+
** '''<code>rating</code>'''. required. fixed point integer [1.0-5.0], with optional alternate '''<code>worst</code>''' (default:1.0) and/or '''<code>best</code>''' (default:5.0), also fixed point integers, and explicit '''<code>average</code>'''.
-
HOW MAKE ANYTHING BE THROUGH
+
** '''<code>count</code>'''. optional. non-negative integer.
-
HOW EVERYTHING THROUGH
+
** '''<code>votes</code>'''. optional. non-negative integer. Note that while <code>count</code> and <code>votes</code> are both marked optional, at least one of the two fields must be specified.
-
HOW MAKE EVERYTHING THROUGH
+
** '''<code>summary</code>'''. optional. text.
-
HOW EVERYTHING BE THROUGH
+
 
-
HOW MAKE EVERYTHING BE THROUGH
+
=== Property details ===
-
HOW UNIVERSE THROUGH
+
 
-
HOW MAKE UNIVERSE THROUGH
+
Details of the hReview-aggregate properties:
-
HOW UNIVERSE BE THROUGH
+
 
-
HOW MAKE UNIVERSE BE THROUGH
+
'''item''':: This required property {{must}} have at a minimum the name of the entity being reviewed (using the subproperty "fn"), or alternatively have an encapsulated microformat (i.e. [[hcard|hCard]] for a business or person, [[hproduct|hProduct]] for a product, or [[hcalendar|hCalendar]] for an event). If an encapsulated microformat is not used, a URI ("url") for the item and a photo or depiction ("photo") {{may}} also be provided. Non-URL unique item IDs (e.g. ISBNs, UPCs) {{may}} be represented as a URN ("url") for the item.  Encapsulated microformats must be set on the item itself (e.g. class="item vcard").  However, when using item info subproperties ("fn", "url", "photo"), they must be nested inside the item element.
-
HOW THING OUT
+
 
-
HOW MAKE THING OUT
+
'''rating''':: The rating is a fixed point integer (one decimal point of precision) from 1.0 to 5.0 inclusive indicating the average rating for the item across all reviews, higher indicating a better rating by default. Optionally a different integral "worst" value and/or "best" value may be specified to indicate a different range (e.g. 6 from 0-10).
-
HOW THING BE OUT
+
 
-
HOW MAKE THING BE OUT
+
'''count''':: This property is used to specify the total number of reviews for the product or service.
-
HOW ANYTHING OUT
+
 
-
HOW MAKE ANYTHING OUT
+
'''votes''':: This property is used to specify the total number of users who have rated the product or service, contributing to the average rating. For some sites, the number of votes is equal to the number of reviews, so <code>count</code> may be used and this property omitted.
-
HOW ANYTHING BE OUT
+
 
-
HOW MAKE ANYTHING BE OUT
+
'''summary''':: This optional property can be the title for the review collection or a very short summary of the consensus opinion from the collection.
-
HOW EVERYTHING OUT
+
 
-
HOW MAKE EVERYTHING OUT
+
The <code>item</code>, <code>rating</code>, and <code>summary</code> properties are reused from [[hreview|hReview]].
-
HOW EVERYTHING BE OUT
+
 
-
HOW MAKE EVERYTHING BE OUT
+
== Examples ==
-
HOW UNIVERSE OUT
+
 
-
HOW MAKE UNIVERSE OUT
+
=== Basic example ===
-
HOW UNIVERSE BE OUT
+
 
-
HOW MAKE UNIVERSE BE OUT
+
Here is an example showing aggregate review information for a restaurant:
 +
 
 +
<pre><nowiki>
 +
<div>
 +
<h3>
 +
  <span>Mediterranean Wraps</span>
 +
</h3>
 +
<span>Customers flock to this small restaurant for their
 +
tasty falafel and shawerma wraps and welcoming staff.</span>
 +
<span>4.5 out of 5 based on 17 reviews</span>
 +
</div>
 +
</nowiki></pre>
 +
 
 +
Adding hReview-aggregate markup to this is straightforward:
 +
 
 +
<pre><nowiki>
 +
<div class="hreview-aggregate">
 +
<h3 class="item">
 +
  <span class="fn">Mediterranean Wraps</span>
 +
</h3>
 +
<span class="summary">Customers flock to this small restaurant for their
 +
tasty falafel and shawerma wraps and welcoming staff.</span>
 +
<span><span class="rating">4.5</span> out of 5
 +
based on <span class="count">17</span> reviews</span>
 +
</div>
 +
</nowiki></pre>
 +
 
 +
=== Embedded microformat, 10-point rating scale ===
 +
 
 +
Often, there is more information available on a page about the item being reviewed than the title. Here is another example of a restaurant review, but with address information present.
 +
 
 +
<pre><nowiki>
 +
<div>
 +
<div>
 +
  <h3>Mediterranean Wraps</h3>
 +
  <span>433 S California Ave</span>
 +
  <span>Palo Alto, CA
 +
  <span>(650) 321-8189</span>
 +
</div>
 +
<span>Customers flock to this small restaurant for their
 +
tasty falafel and shawerma wraps and welcoming staff.</span>
 +
<span>9.2 out of 10 based on 17 reviews</span>
 +
</div>
 +
</nowiki></pre>
 +
 
 +
And here it is with hReview-aggregate markup, along with an embedded [[hcard|hCard]] to describe the address and phone information for the restaurant:
 +
 
 +
<pre><nowiki>
 +
<div class="hreview-aggregate">
 +
<div class="item vcard">
 +
  <h3 class="fn">Mediterranean Wraps</h3>
 +
  <span class="adr">
 +
  <span class="street-address">433 S California Ave</span>
 +
  <span><span class="locality">Palo Alto</span>, <span class="region">CA</span></span>
 +
  <span class="tel">(650) 321-8189</span>
 +
  </span>
 +
</div>
 +
<span class="summary">Customers flock to this small restaurant for their
 +
tasty falafel and shawerma wraps and welcoming staff.</span>
 +
<span class="rating"><span class="average">9.2</span> out of <span class="best">10</span>
 +
based on <span class="count">17</span> reviews</span>
 +
</div>
 +
</nowiki></pre>
 +
 
 +
Note that the <code>item</code> and <code>vcard</code> are put next to each other in the same class attribute in order to show that the item being reviewed is described by the embedded hCard.
 +
 
 +
=== Count vs votes ===
 +
 
 +
In the examples so far, the <code>count</code> property has been used but not <code>votes</code>. <code>votes</code> is useful when users have rated an item without writing full corresponding reviews. Their vote contributed toward the average rating but not towards the number of reviews available.
 +
 
 +
Consider this example:
 +
 
 +
<pre><nowiki>
 +
<div>
 +
<h3>
 +
  <span>Mediterranean Wraps</span>
 +
</h3>
 +
<span>Customers flock to this small restaurant for their
 +
tasty falafel and shawerma wraps and welcoming staff.</span>
 +
<span>4.5 out of 5 based on 24 ratings.</span>
 +
<span>5 user reviews:</span>
 +
...
 +
</div>
 +
</nowiki></pre>
 +
 
 +
Here the example is again, with both <code>count</code> and <code>votes</code> specified where appropriate.
 +
 
 +
<pre><nowiki>
 +
<div class="hreview-aggregate">
 +
<h3 class="item">
 +
  <span class="fn">Mediterranean Wraps</span>
 +
</h3>
 +
<span class="summary">Customers flock to this small restaurant for their
 +
tasty falafel and shawerma wraps and welcoming staff.</span>
 +
<span><span class="rating">4.5</span> out of 5
 +
based on <span class="votes">24</span> ratings.</span>
 +
<span><span class="count">5</span> user reviews:</span>
 +
...
 +
</div>
 +
</nowiki></pre>
 +
 
 +
== examples in the wild ==
 +
This section is '''informative'''.
 +
 
 +
The following sites have implemented [[hReview-aggregate]], and thus are a great place to start for anyone looking for examples "in the wild" to try parsing, indexing, organizing etc. If your site is marked up with hReview aggregate, feel free to add it to the '''top''' of this list. Once the list grows too big, we'll make a separate wiki page like [[hreview-aggregate-examples-in-wild]] similar to [[hreview-examples-in-wild]].
 +
 
 +
* [http://www.belvini.de/ BELViNi] For aggregating customers wine-reviews I used the hReview-aggregate standard, example: [http://www.belvini.de/pinfo.php/pID/8011/markus-schneider-kaitui-sauvignon-blanc-pfalz.html Reviews of the wine Kaitui]
 +
* [http://www.konzerte-abfeiern.de/ konzerte-abfeiern.de] On this site I used the hReview-aggregate standard, you can see here one example: [http://www.konzerte-abfeiern.de/rocknheim/ Rock’n’Heim]
 +
* [http://www.iconfinance.co.uk/bridging-finance/ Icon Finance] has an hReview aggregate (though invisible, and count only 1).
 +
* [https://easygap.co.uk/ Easy Gap] uses hreview aggregate on a specific review page and homepage. Take a look at our review page here [http://easygap.co.uk/519/reviews/ Easy Gap Insurance reviews]
 +
* [https://gapinsurance123.co.uk/ Gap Insurance 123] uses hreview aggregate on its Customer Testimonial, homepage and throughout the site. See here for example [https://gapinsurance123.co.uk/519/testimonials/ Gap Insurance testimonials]
 +
* [http://www.jocurios.ro/jocuri-de-gatit Jocuri de gatit] is a online games website and uses hreview aggregate on review, see here example [http://www.jocurios.ro/jocuri-barbie Jocuri barbie]
 +
* 2012-07-04: [http://www.autotrader.co.uk Auto Trader UK] rolled out hReview aggregate support (e.g. [http://www.autotrader.co.uk/used-cars/bmw/3-series Used BMW 3 Series cars for sale]) and "... [https://twitter.com/berianreed/status/220484982399963136 SERP updated almost instantly]".
 +
* [http://www.essentialtravel.co.uk/travelinsurance/ Essential Travel Insurance] uses hreview-aggregate which shows up nicely in a [https://www.google.com/search?q=Essential+Travel+insurance Google Search].
 +
* [http://www.mufa.de/free-sms.html mufa.de Free SMS ohne Anmeldung kostenlos versenden] We use hreview-aggregate for our green stars user rating on the bottom of our page. Feel free to check and copy our source code (from line ~96) for an example.
 +
* [http://themusicfactorydisco.co.uk/ Mobile DJ Wirral] uses hreview aggregate on its Customer Review Pages. See here for example [http://themusicfactorydisco.co.uk/customer-reviews/ The Music Factory Disco]
 +
* [http://www.applianceman-repair-fortbend.com/ac-air-conditioning-repair-houston-tx.html Houston Air Conditioning] uses hreview aggregate info on the bottom the the servicing webpages. See here for example [http://www.applianceman-repair-fortbend.com/ac-air-conditioning-repair-katy-tx.html AC Repair Katy]
 +
* [http://www.euroexchange.de Kleinanzeigen kostenlos] ist die Plattform für gewerbliche und private Inserate mit Bild. Die Funktion wird in der Bewertung der Inserate durch Besucher verwendet. Siehe [http://www.euroexchange.de/detail.php?id=1 Ferienhaus Belgien]
 +
* [http://www.spielplatztreff.de Spielplatztreff] is the playground rating website that implements hreview-aggregate and hreview for the userratings on each playground site e.g. [http://www.spielplatztreff.de/spielplatz/an-der-waldau-kinderfreizeitpark-in-bonn_205 Spielplatz in Bonn]
 +
* [https://www.yourlastingpowerofattorney.co.uk Lasting Power of Attorney] is a legal service website that uses hReview on its testimonial with a site wide aggregation [https://www.yourlastingpowerofattorney.co.uk/lasting-power-of-attorney/lasting-power-of-attorney-guidance/ Lasting Power of Attorney Guidance]
 +
* [http://petfoodtalk.com/ PetFoodTalk], a pet food review and coupon site, implements hreview-aggregate for its presentation of dog food [http://petfoodtalk.com/dogfoodreviews/ user ratings and reviews] and [http://petfoodtalk.com/dogfoodcoupons/ coupons] e.g. [http://petfoodtalk.com/dogfoodcoupons/blue-buffalo-coupons/ Blue Buffalo coupons] and [http://petfoodtalk.com/dogfoodreviews/blue-buffalo-dog-food/ reviews].
 +
* [http://dinehere.ca/ DineHere] is a restaurant review site that publishes hreview-aggregates of hCards e.g. [http://dinehere.ca/vancouver/blue-edge-organic-cafe Blue Edge Organic Cafe].
 +
* [http://www.urbanspoon.com/ urbanspoon] is a restaurant review site that publishes hreview-aggregates e.g. [http://www.urbanspoon.com/r/24/280005/restaurant/Buckman/3-Friends-Coffee-House-Portland 3 Friends Coffee House].
 +
* [http://www.tickets-tour.de Tickets Tour] is a community news site about concerts where users can rate music events (also marked up with hCalender). Example: [http://www.tickets-tour.de/westernhagen-tour-2012/ Westernhagen]
 +
* [http://www.golfmadesimpleinscotland.com Golf Made Simple In Scotland] uses hReview-aggregate for a page of golf tour testimonials written by clients. Example: [http://www.golfmadesimpleinscotland.com/testimonials/ Golf tour testimonials].
 +
** the 'hreview-aggregate' element is unfortunately set to style="display:none" - [[User:Tantek|Tantek]] 17:35, 10 October 2011 (UTC)
 +
* [http://www.ala.co.uk ALA GAP Insurance] use hReview-aggregate on their home page based on hProduct/hReviews used throughout the site
 +
* [http://www.hardcoreepoxyflooringdetroit.com Epoxy Detroit] is a epoxy flooring and paint website that uses hReview on its footer that is site wide. View here for example [http://www.hardcoreepoxyflooringdetroit.com/ Epoxy Paint Michigan]
 +
* [http://citysearch.com/ Citysearch] supports hReview-aggregate (e.g. [http://seattle.citysearch.com/profile/10767458/seattle_wa/tulio_ristorante.html Tulio Ristorante in Seattle] and [http://sanfrancisco.citysearch.com/profile/46396865/san_francisco_ca/four_barrel_coffee.html Four Barrel in SF]) with a nested hCard for the venue.
 +
** minor flaw: uses a capitalized form of the root class name: <code>hReview-aggregate</code> [[User:Tantek|Tantek]] 01:37, 22 July 2011 (UTC)
 +
* [http://www.giga-music.de Giga Music] is a community site where customers can rate different music and sport events (which are also marked up with hCalender). Example: [http://www.giga-music.de/david-garrett-tickets-live-konzerte/ David Garrett]
 +
* [http://www.cabs.co.za CABS Car hire South Africa] Lists reviews submitted by customers on the customer testimonial page.  Example: [http://www.cabs.co.za/customer-testimonials.html car rental reviews]
 +
* [http://trustafriend.com Trust a Friend] Lists reviews of products and services submitted by users and external blogs.  Example: [http://trustafriend.com/reviews/j.george-plastering-newent-gloucestershire/ J.George Plastering, Newent, Gloucestershire]
 +
* CustomerLink Reviews has implemented hReview-aggregate for reviews of local businesses. Example: [http://reviews.customerlink.com/biz/auto-tech-sonora Review of Auto Tech & Tire]
 +
* [http://www.oasisroofinginc.com/ roofing seattle wa] uses hreview aggregate inside the footer of roofer website. See here for example [http://www.oasisroofinginc.com/ Roof Repair Seattle]
 +
* SuperStoreSearch.com is a shopping search engine and price comparison site and offers an interesting implementation of hReview-aggregate and hProduct,  whereas typical e-commerce sites feature one store offer, this shopping search vertical site allows users to [http://www.superstoresearch.com/ compare prices], therefore you can see an example of the 'price' class being utilized with nested tags that also features the 'pricerange' class - which can be seen on individual pages such as this comparison listing for the [http://www.superstoresearch.com/shopping/categories/electronics/personal-audio/mp3-digital-media-players/apple-ipod-touch-8gb--24603784.html Apple iPod Touch 8GB]. The product information pages that have hReview-aggregate markup, also incorporate hProduct classes. hProduct has also been used on category menu pages such as this guide on [http://www.superstoresearch.com/shopping/categories/home-appliances/4253/washing-machines.html Washing Machines] - where multiple instances of hProduct can be seen on a single page. In total, over 10+ million products and pages have been updated with hProduct and hReview-aggregate markup.
 +
 
 +
* [http://www.thesuggestr.com theSUGGESTR.com] has implemented hReview-aggregate for it's business ratings and reviews.
 +
* Google has implemented support for [http://www.google.com/support/webmasters/bin/answer.py?hl=en&answer=146645 hReview-aggregate] via [http://googlewebmastercentral.blogspot.com/2009/05/introducing-rich-snippets.html Rich Snippets].
 +
* [http://local.stv.tv/glasgow/place/restaurant-japanese/10320725-wagamama/ STV Local] uses hreview-aggregate for business ratings, average prices and contact details with hcard
 +
* [http://www.critiki.com Critiki] publishes ratings and reviews of Tiki bars, and uses hReview aggregate for average ratings on their pages, e.g. [http://www.critiki.com/cgi-bin/location.cgi?loc_id=162 overview of The Tonga Room]. (as [http://twitter.com/humuhumu/status/4165014155 tweeted by humuhumu] 2009-09-21)
 +
* [http://free.naplesplus.us NAPLESPLUS] is an example of a website that has implemented hreview-aggregate via Google specs.
 +
*[http://FriendsEAT.com FriendsEAT] is an example of a food website that has implemented hreview-aggregate for it's restaurant and recipe ratings/reviews, e.g. [http://friendseat.com/restaurants/New-York/Churrascaria-Plataforma Review of Churrascaria Plataforma]
 +
* [http://www.vorverkaufstarts.de Vorverkaufstarts.de] uses hreview-aggregate for concert ratings, and concert dates. Example: [http://www.vorverkaufstarts.de/robbie-williams-tour-2013-koln-munchen/ Robbie Williams Tour 2013]
 +
* ...
 +
 
 +
== Related Pages ==
 +
 
 +
* [[hreview|hReview]] - microformat for marking up individual reviews
 +
* [[aggregate-review-brainstorming|Aggregate review brainstorming]] - discussions leading to the creation of hReview-aggregate and ideas for improvement.
 +
* [[aggregate-review-examples|Aggregate review examples]]
 +
 
 +
[[Category:Draft Specifications]]
 +
[[Category:hReview-aggregate]]

Revision as of 19:49, 25 August 2013

This document represents a draft microformat specification. Although drafts are somewhat mature in the development process, the stability of this document cannot be guaranteed, and implementers should be prepared to keep abreast of future developments and changes. Watch this wiki page, or follow discussions on the #microformats Freenode IRC channel to stay up-to-date.

hReview-aggregate is a format for embedding review information (of products, services, businesses, etc). Whereas hReview is intended for an individual review, hReview-aggregate is meant for summary information about a collection of user or critic reviews about an item. hReview-aggregate is one of several microformats open standards suitable for embedding in HTML, XHTML, Atom, RSS, and arbitrary XML.

Contents

Microformats Draft Specification 2009-11-10

Editor
Kavi Goel, Google
Authors/Contributers (alphabetical)
Tantek Çelik
Othar Hansson, Google
Jay Myers, Best Buy, Co., Inc.

Introduction

Many websites publish reviews using a variety of organization schemes. hReview-aggregate and the similar microformat hReview were designed to enable sharing of review information.

hReview, created in 2006, is well suited to mark up reviews done by individuals on their own websites or for editor's reviews for a new product or service. However, in recent years, there has been an increasing number of sites who aggregate user reviews, either by accepting reviews submitted to their website or by collecting those user reviews from across the web. In these cases, it is often valuable to share not just the individual reviews shown on the webpage, but the consensus opinion derived from those individual reviews.

hReview-aggregate was created to address this need. hReview-aggregate is a standard that can be used to share the number of reviews, average rating, and consensus opinion for a particular product or service. It is meant to complement hReview and reuses hReview properties wherever appropriate. Research and discussion that fed into the design of hReview-aggregate can be found on the aggregate review brainstorming wiki page.

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119.

Scope

Collections of reviews consistently share several common aspects. Where possible hReview-aggregate has been based on this common subset.

Out of scope

Portions of reviews that are specific to particular kinds of items have been omitted from hReview-aggregate.

Format

Schema

The hReview-aggregate schema consists of the following:

Property details

Details of the hReview-aggregate properties:

item:: This required property MUST have at a minimum the name of the entity being reviewed (using the subproperty "fn"), or alternatively have an encapsulated microformat (i.e. hCard for a business or person, hProduct for a product, or hCalendar for an event). If an encapsulated microformat is not used, a URI ("url") for the item and a photo or depiction ("photo") MAY also be provided. Non-URL unique item IDs (e.g. ISBNs, UPCs) MAY be represented as a URN ("url") for the item. Encapsulated microformats must be set on the item itself (e.g. class="item vcard"). However, when using item info subproperties ("fn", "url", "photo"), they must be nested inside the item element.

rating:: The rating is a fixed point integer (one decimal point of precision) from 1.0 to 5.0 inclusive indicating the average rating for the item across all reviews, higher indicating a better rating by default. Optionally a different integral "worst" value and/or "best" value may be specified to indicate a different range (e.g. 6 from 0-10).

count:: This property is used to specify the total number of reviews for the product or service.

votes:: This property is used to specify the total number of users who have rated the product or service, contributing to the average rating. For some sites, the number of votes is equal to the number of reviews, so count may be used and this property omitted.

summary:: This optional property can be the title for the review collection or a very short summary of the consensus opinion from the collection.

The item, rating, and summary properties are reused from hReview.

Examples

Basic example

Here is an example showing aggregate review information for a restaurant:

<div>
 <h3>
  <span>Mediterranean Wraps</span>
 </h3>
 <span>Customers flock to this small restaurant for their 
 tasty falafel and shawerma wraps and welcoming staff.</span>
 <span>4.5 out of 5 based on 17 reviews</span>
</div>

Adding hReview-aggregate markup to this is straightforward:

<div class="hreview-aggregate">
 <h3 class="item">
  <span class="fn">Mediterranean Wraps</span>
 </h3>
 <span class="summary">Customers flock to this small restaurant for their 
 tasty falafel and shawerma wraps and welcoming staff.</span>
 <span><span class="rating">4.5</span> out of 5 
 based on <span class="count">17</span> reviews</span>
</div>

Embedded microformat, 10-point rating scale

Often, there is more information available on a page about the item being reviewed than the title. Here is another example of a restaurant review, but with address information present.

<div>
 <div>
  <h3>Mediterranean Wraps</h3>
  <span>433 S California Ave</span>
  <span>Palo Alto, CA
  <span>(650) 321-8189</span>
 </div> 
 <span>Customers flock to this small restaurant for their 
 tasty falafel and shawerma wraps and welcoming staff.</span>
 <span>9.2 out of 10 based on 17 reviews</span>
</div>

And here it is with hReview-aggregate markup, along with an embedded hCard to describe the address and phone information for the restaurant:

<div class="hreview-aggregate">
 <div class="item vcard">
  <h3 class="fn">Mediterranean Wraps</h3>
  <span class="adr">
   <span class="street-address">433 S California Ave</span>
   <span><span class="locality">Palo Alto</span>, <span class="region">CA</span></span>
   <span class="tel">(650) 321-8189</span>
  </span>
 </div> 
 <span class="summary">Customers flock to this small restaurant for their 
 tasty falafel and shawerma wraps and welcoming staff.</span>
 <span class="rating"><span class="average">9.2</span> out of <span class="best">10</span> 
 based on <span class="count">17</span> reviews</span>
</div>

Note that the item and vcard are put next to each other in the same class attribute in order to show that the item being reviewed is described by the embedded hCard.

Count vs votes

In the examples so far, the count property has been used but not votes. votes is useful when users have rated an item without writing full corresponding reviews. Their vote contributed toward the average rating but not towards the number of reviews available.

Consider this example:

<div>
 <h3>
  <span>Mediterranean Wraps</span>
 </h3>
 <span>Customers flock to this small restaurant for their 
 tasty falafel and shawerma wraps and welcoming staff.</span>
 <span>4.5 out of 5 based on 24 ratings.</span>
 <span>5 user reviews:</span>
 ...
</div>

Here the example is again, with both count and votes specified where appropriate.

<div class="hreview-aggregate">
 <h3 class="item">
  <span class="fn">Mediterranean Wraps</span>
 </h3>
 <span class="summary">Customers flock to this small restaurant for their 
 tasty falafel and shawerma wraps and welcoming staff.</span>
 <span><span class="rating">4.5</span> out of 5 
 based on <span class="votes">24</span> ratings.</span>
 <span><span class="count">5</span> user reviews:</span>
 ...
</div>

examples in the wild

This section is informative.

The following sites have implemented hReview-aggregate, and thus are a great place to start for anyone looking for examples "in the wild" to try parsing, indexing, organizing etc. If your site is marked up with hReview aggregate, feel free to add it to the top of this list. Once the list grows too big, we'll make a separate wiki page like hreview-aggregate-examples-in-wild similar to hreview-examples-in-wild.

Related Pages

Categories

hReview-aggregate 0.2 was last modified: Wednesday, December 31st, 1969

Views