<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>

<channel>
	<title>Vino2Vino Blog</title>
	<atom:link href="http://blog.vino2vino.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.vino2vino.com</link>
	<description>Vino2Vino wine 2.0 weblog</description>
	<pubDate>Wed, 25 Apr 2007 23:01:04 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5</generator>
	<language>en</language>
			<item>
		<title>Vino2Vino Google Gadget Released</title>
		<link>http://blog.vino2vino.com/2007/04/25/vino2vino-google-gadget-released/</link>
		<comments>http://blog.vino2vino.com/2007/04/25/vino2vino-google-gadget-released/#comments</comments>
		<pubDate>Wed, 25 Apr 2007 23:01:04 +0000</pubDate>
		<dc:creator>mike</dc:creator>
		
		<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://blog.vino2vino.com/2007/04/25/vino2vino-google-gadget-released/</guid>
		<description><![CDATA[
We&#8217;re keeping busy here at Vino2Vino coming up with clever new ways to help you discover and learn about great wine. We also like it when things are convenient, and easy to use. And what&#8217;s more convenient than having the latest updates from your favorite wine-review website show up right on your personalized Google homepage?
The [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.google.com/ig/add?moduleurl=http%3A//www.vino2vino.com/ig-new-wines.xml"><img src="http://www.vino2vino.com/ig-new-wines-screenshot.png" style="float: right; margin: 1.75em 0 0 1em;" /></a><br />
We&#8217;re keeping busy here at Vino2Vino coming up with clever new ways to help you discover and learn about great wine. We also like it when things are convenient, and easy to use. And what&#8217;s more convenient than having the latest updates from your favorite wine-review website show up right on your personalized Google homepage?</p>
<p>The gadget is not in the official Google Gadget directory yet (it&#8217;s pending approval&#8230; yawn), but you can beat the crowd and start using it now. How? Simple! First you&#8217;ll need a <a href="http://www.google.com/ig">Google Personalized Homepage</a> (if you don&#8217;t have one already). Once that&#8217;s out of the way simply <a href="http://www.google.com/ig/add?moduleurl=http%3A//www.vino2vino.com/ig-new-wines.xml">click here to add the V2V New Wines Gadget to your homepage</a>. It&#8217;s that easy. No fuss, no muss. As always, we love feedback, so let us know how we can improve Vino2Vino for you!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.vino2vino.com/2007/04/25/vino2vino-google-gadget-released/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Wordpress Digg Widget</title>
		<link>http://blog.vino2vino.com/2007/04/14/wordpress-digg-widget/</link>
		<comments>http://blog.vino2vino.com/2007/04/14/wordpress-digg-widget/#comments</comments>
		<pubDate>Sun, 15 Apr 2007 00:54:55 +0000</pubDate>
		<dc:creator>mike</dc:creator>
		
		<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://blog.vino2vino.com/2007/04/14/wordpress-digg-widget/</guid>
		<description><![CDATA[I was taking a break from coding earlier and found a blog post on digg requesting a digg widget that would show your friends digg activity. It seemed like a pretty good idea, so I threw together a quick proof of concept. The styling isn&#8217;t great, but it works! Check out the sidebar here (on [...]]]></description>
			<content:encoded><![CDATA[<p>I was taking a break from coding earlier and found a <a href="http://conservablogs.com/EricOdom/2007/04/14/a-digg-request-digg-widgets/">blog post</a> on <a href="http://digg.com">digg</a> requesting a digg widget that would show your friends digg activity. It seemed like a pretty good idea, so I threw together a quick proof of concept. The styling isn&#8217;t great, but it works! Check out the sidebar here (on the homepage) for an example.</p>
<p>You can <a href="http://immike.net/scripts/diggfriends.php.txt">download the plugin here</a>. Place it in the plugins directory for Wordpress then activate it under plugins (it&#8217;s called diggfriends). Once you&#8217;ve done that you can place a call to the digg_friends() function anywhere in your theme files and it will create a list of what your friends have dugg! The function takes one argument, your username, passed as a string.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.vino2vino.com/2007/04/14/wordpress-digg-widget/feed/</wfw:commentRss>
		</item>
		<item>
		<title>New features on Vino2Vino.com for wine bloggers</title>
		<link>http://blog.vino2vino.com/2007/03/29/new-features-on-vino2vinocom-for-wine-bloggers/</link>
		<comments>http://blog.vino2vino.com/2007/03/29/new-features-on-vino2vinocom-for-wine-bloggers/#comments</comments>
		<pubDate>Thu, 29 Mar 2007 17:58:43 +0000</pubDate>
		<dc:creator>mike</dc:creator>
		
		<category><![CDATA[General]]></category>

		<category><![CDATA[Wineblog]]></category>

		<category><![CDATA[blogging]]></category>

		<category><![CDATA[the front line]]></category>

		<guid isPermaLink="false">http://blog.vino2vino.com/2007/03/29/new-features-on-vino2vinocom-for-wine-bloggers/</guid>
		<description><![CDATA[It&#8217;s been over a week since my last update, but in that time we&#8217;ve developed a whole bunch of cool new features, a number of which should be particularly interesting to bloggers. I&#8217;ll start with the more general additions.
We&#8217;ve integrated a full fledged wiki with Vino2Vino.com so that we can easily add historical, biographical, or [...]]]></description>
			<content:encoded><![CDATA[<p>It&#8217;s been over a week since my <a href="http://blog.vino2vino.com/2007/03/19/winery-mapping-on-vino2vinocom/">last update</a>, but in that time we&#8217;ve developed a whole bunch of cool new features, a number of which should be particularly interesting to bloggers. I&#8217;ll start with the more general additions.</p>
<p>We&#8217;ve integrated a full fledged <a href="http://en.wikipedia.org/wiki/Wiki">wiki</a> with <a href="http://www.vino2vino.com">Vino2Vino.com</a> so that we can easily add historical, biographical, or other amorphous wine-related information to the system. Wiki articles for wineries show up on the winery page, as you can see on the pages for <a href="http://www.vino2vino.com/winery/show/3251">Larkmead Vineyards</a>, <a href="http://www.vino2vino.com/winery/428">Concannom</a>, and <a href="http://www.vino2vino.com/winery/318">Beaulieu Vineyard</a> among others. In addition to the winery articles the wiki can be used to include information that would otherwise be missing from the system. For example, check out the articles for <a href="http://www.vino2vino.com/wiki/Mike_Grgich">Mike Grgich</a> (owner/operator of <a href="http://www.vino2vino.com/winery/927">Grgich Hills</a>), <a href="http://www.vino2vino.com/wiki/Andr%C3%A9_Tchelistcheff">André Tchelistcheff</a>, and <a href="http://www.vino2vino.com/wiki/The_Wine_Group">The Wine Group</a>.</p>
<p>We&#8217;ve also made some improvements in the UI department with a new profile page (you can find it by clicking &#8220;My Profile&#8221; at the top of the page after logging in) as well as a new look for the <a href="http://www.vino2vino.com/people/show/mike">wine lists page</a>. There&#8217;s new functionality here too. On the profile page you can upload your own picture (or &#8220;<a href="http://en.wikipedia.org/wiki/Avatar_(icon)">avatar</a>&#8220;), and on the wine lists page you can browse any number of user-created lists as well as auto-generated lists that show wines you&#8217;ve rated, commented on, tagged, or blogged! Which brings me to the new features for bloggers&#8230;</p>
<p>From <a href="http://www.spittoon.biz/bottletalk_a_superficial_intro.html">what I&#8217;ve been reading</a> <a href="http://www.vinography.com/archives/2006/06/why_community_tasting_note_sit.html">around the web</a>, <a href="http://www.justatheory.com/culture/wine/on_wine_webapps.html">wine bloggers</a> are not that impressed with the current generation of &#8220;Wine 2.0&#8243; websites. One common complaint is that these systems offer no easy way to cross-post a blogged wine review (or to interact with blogging software at all for that matter). We&#8217;re working hard to address these concerns, and have started by implementing <a href="http://en.wikipedia.org/wiki/Linkback">Linkbacks</a> (<a href="http://en.wikipedia.org/wiki/Pingback">pingbacks</a> really) so that bloggers who link to a V2V <a href="http://www.vino2vino.com/wine/50524">wine</a> or winery page from a post, and have pingbacks enabled, will automatically see a reciprocal link back from that page to their blog post. For example, if I link to a <a href="http://www.vino2vino.com/wine/21190">couple</a> <a href="http://www.vino2vino.com/wine/44929">of</a> <a href="http://www.vino2vino.com/wine/172011">wines</a> I&#8217;ve found particularly good recently, you&#8217;ll see links back to this page on the V2V page for each wine. We&#8217;re of the opinion that this mechanism will benefit us, bloggers, and users in general by creating an aggregated list of blog posts that discuss individual wines and wineries. So next time you <a href="http://www.californiawinehikes.com/winehiker/page/3/">discuss individual bottles of wine</a> in a blog post, link back to V2V so your readers can find additional info about each bottle, and ours can find out what you thought!</p>
<p><iframe scrolling="no" frameborder="0" style="float: right; width: 336px; overflow: hidden; margin: 1em 0 1.5em 1em;" src="http://www.vino2vino.com/wine/stream/mike?listname=Blogged%20Wines&#038;xnum=2"></iframe></p>
<p>Even cooler, if you have an account on V2V you can go to your profile page and associate your blog with your account. (If you don&#8217;t have an account, <a href="http://www.vino2vino.com/account/register">get one now!</a> it&#8217;s free, and it only takes about 30 seconds&#8230; what are you waiting for?) After linking your V2V account and your blog, you will be able to view a list of wines you&#8217;ve blogged about on your wine lists page. And just like any other list, you can export your list of blogged wines in the form of a <a href="http://blog.vino2vino.com/2007/03/10/wine-review-widget-live-on-widgetbox/">wine widget</a> or an <a href="http://blog.vino2vino.com/2007/03/13/how-to-turn-an-xml-feed-into-something-useful/">XML Feed</a>. Check out the widget displaying my blogged wines (to the right) for an example.</p>
<p>There are a number of other improvements and new features around the site, but this post is getting long so I&#8217;ll let you explore and find them on your own. We&#8217;re very excited about the new features, the blogging features in particular, and would love to hear what you have to say, so leave a comment or <a href="mailto:suggestions@REMOVE_MEvino2vino.com">shoot us an email</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.vino2vino.com/2007/03/29/new-features-on-vino2vinocom-for-wine-bloggers/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Winery Mapping on Vino2Vino.com</title>
		<link>http://blog.vino2vino.com/2007/03/19/winery-mapping-on-vino2vinocom/</link>
		<comments>http://blog.vino2vino.com/2007/03/19/winery-mapping-on-vino2vinocom/#comments</comments>
		<pubDate>Mon, 19 Mar 2007 23:13:14 +0000</pubDate>
		<dc:creator>mike</dc:creator>
		
		<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://blog.vino2vino.com/2007/03/19/winery-mapping-on-vino2vinocom/</guid>
		<description><![CDATA[
Last Friday we quietly added a new (beta) mapping feature to Vino2Vino.com. The interface is based on Google&#8217;s wonderful maps API which allows you to easily include maps of the entire globe on any publicly available website. On top of Google maps, we&#8217;ve placed markers for over 1,100 geocoded wineries. You can easily explore all [...]]]></description>
			<content:encoded><![CDATA[<p><a href='http://blog.vino2vino.com/wp-content/uploads/2007/03/napa-map.jpg' title='Map of Napa Valley, California'><img src='http://blog.vino2vino.com/wp-content/uploads/2007/03/napa-map.jpg' alt='Map of Napa Valley, California' style="width: 30%; height: 30%; float: right; margin: 1em;" /></a></p>
<p>Last Friday we quietly added a new (beta) mapping feature to <a href="http://www.vino2vino.com">Vino2Vino.com</a>. The interface is based on Google&#8217;s wonderful <a href="http://googlemapsapi.blogspot.com/">maps API</a> which allows you to easily include maps of the entire globe on any publicly available website. On top of Google maps, we&#8217;ve placed markers for over 1,100 <a href="http://en.wikipedia.org/wiki/Geocoding">geocoded</a> wineries. You can easily explore all of these wineries on a single page, without being overwhelmed, thanks to clustering that occurs at higher zoom levels (see the screen shot on the right, which shows a map of Napa Valley). If you click on a cluster, an info window pops up showing the address and contact information for any wineries the cluster covers (note that it may take a few seconds for an info window to pop up for large clusters - we&#8217;re working on improving the speed).</p>
<p>Map thumbnails appear on <a href="http://www.vino2vino.com/winery/3251">the</a> <a href="http://www.vino2vino.com/winery/1873">winery</a> <a href="http://www.vino2vino.com/winery/2794">page</a> <a href="http://www.vino2vino.com/winery/1378">for</a> <a href="http://www.vino2vino.com/winery/6644">geocoded</a> <a href="http://www.vino2vino.com/winery/3961">wineries</a>, in the right side bar (full maps also appear on certain region pages, like <a href="http://www.vino2vino.com/region/18">Napa Valley</a>). Clicking the marker on a map thumbnail will load a larger map overlay showing the surrounding geographic region along with any nearby wineries. From there you&#8217;re free to explore the entire world!</p>
<p><a href='http://blog.vino2vino.com/wp-content/uploads/2007/03/map_world.jpg' title='Wineries around the globe'><img src='http://blog.vino2vino.com/wp-content/uploads/2007/03/map_world.jpg' alt='Wineries around the globe' style="width: 100%"/></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.vino2vino.com/2007/03/19/winery-mapping-on-vino2vinocom/feed/</wfw:commentRss>
		</item>
		<item>
		<title>V2V Wine labels explained</title>
		<link>http://blog.vino2vino.com/2007/03/16/labels-explained/</link>
		<comments>http://blog.vino2vino.com/2007/03/16/labels-explained/#comments</comments>
		<pubDate>Fri, 16 Mar 2007 06:03:06 +0000</pubDate>
		<dc:creator>ted</dc:creator>
		
		<category><![CDATA[General]]></category>

		<category><![CDATA[features]]></category>

		<guid isPermaLink="false">http://blog.vino2vino.com/2007/03/16/labels-explained/</guid>
		<description><![CDATA[Here are a few examples of how the Vino2Vino virtual wine labels are generated.
2002 Three Hills Shiraz


This label has a bluish purple background indicating that it is a red grape varietal.
The light blue border color is shared between Australia and New Zealand.
The Australian flag indicates the country of origin is Australia.
The composite Vino2Vino rating is [...]]]></description>
			<content:encoded><![CDATA[<p><script type="text/javascript" src="http://widgetserver.com/syndication/subscriber/InsertPanel.js?panelId=77ab1210-4396-4d3b-b30b-f6e08c8559f5"></script>Here are a few examples of how the Vino2Vino virtual wine labels are generated.</p>
<h3>2002 Three Hills Shiraz</h3>
<div class="wbx-widget" id="92cbcd1c-020d-4e2b-ac78-8b327258bf99" style="float: right; margin: 1em;"></div>
<ul>
<li>This label has a bluish purple background indicating that it is a red grape varietal.</li>
<li>The light blue border color is shared between Australia and New Zealand.</li>
<li>The Australian flag indicates the country of origin is Australia.</li>
<li>The composite Vino2Vino rating is 79, and there is one professional wine rating.</li>
<li>The release price was $45.00</li>
</ul>
<h3 style="clear: both;">2004 Feudi di San Gregorio Falanghina Sannio</h3>
<div class="wbx-widget" id="d2d376b6-eab2-431e-89bc-7d0a0fcc0dbe" style="float: right; margin: 1em;"></div>
<ul>
<li>This label has a green background indicating that it is a white grape varietal.</li>
<li>The orange border color is used for all European wineries.</li>
<li>The Italian flag indicates the country of origin is Italy.</li>
<li>The composite Vino2Vino rating is 87, and there are no known professional ratings.</li>
<li>The release price was $18.00</li>
</ul>
<h3 style="clear: both;">2004 Ferrari Carano Fumé Blanc</h3>
<div class="wbx-widget" id="b38c9498-e1da-4d16-ac00-05a1610bd3bd" style="float: right; margin: 1em;"></div>
<ul>
<li>This label has a grey background indicating that Vino2Vino is uncertain of the grape color.</li>
<li>The yellow border color is used for all North American wineries.</li>
<li>The US flag indicates the country of origin is the United States.</li>
<li>The composite Vino2Vino rating is 87, and there are two professional wine ratings.</li>
<li>The release price was $15.00</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.vino2vino.com/2007/03/16/labels-explained/feed/</wfw:commentRss>
		</item>
		<item>
		<title>New layout, logo, and other new stuff</title>
		<link>http://blog.vino2vino.com/2007/03/13/new-layout-logo-and-other-new-stuff/</link>
		<comments>http://blog.vino2vino.com/2007/03/13/new-layout-logo-and-other-new-stuff/#comments</comments>
		<pubDate>Tue, 13 Mar 2007 21:23:32 +0000</pubDate>
		<dc:creator>mike</dc:creator>
		
		<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://blog.vino2vino.com/2007/03/13/new-layout-logo-and-other-new-stuff/</guid>
		<description><![CDATA[So, in case you haven&#8217;t noticed (or haven&#8217;t been here before), Vino2Vino.com got a new logo and some new graphics today (mmm, gradients). The changes are subtle, but I think it&#8217;s a big improvement!
The site got some less obvious enhancements as well. We&#8217;ve made some backend optimizations that should speed up the load time for [...]]]></description>
			<content:encoded><![CDATA[<p>So, in case you haven&#8217;t noticed (or haven&#8217;t been here before), Vino2Vino.com got a new logo and some new graphics today (mmm, gradients). The changes are subtle, but I think it&#8217;s a big improvement!</p>
<p>The site got some less obvious enhancements as well. We&#8217;ve made some backend optimizations that should speed up the load time for many pages, and we&#8217;ve added RSS feeds on the home page. You can subscribe to feeds for recently updated, best values, and top rated wines on Vino2Vino.com. Keep an eye out for more feeds to come, including personalized feeds for your wine lists.</p>
<p>Be sure to check back frequently this week. I&#8217;m back from spring break and ready to roll, so things will be happening fast.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.vino2vino.com/2007/03/13/new-layout-logo-and-other-new-stuff/feed/</wfw:commentRss>
		</item>
		<item>
		<title>How to turn an XML feed into something useful</title>
		<link>http://blog.vino2vino.com/2007/03/13/how-to-turn-an-xml-feed-into-something-useful/</link>
		<comments>http://blog.vino2vino.com/2007/03/13/how-to-turn-an-xml-feed-into-something-useful/#comments</comments>
		<pubDate>Tue, 13 Mar 2007 20:57:28 +0000</pubDate>
		<dc:creator>mike</dc:creator>
		
		<category><![CDATA[technical]]></category>

		<category><![CDATA[the front line]]></category>

		<guid isPermaLink="false">http://blog.vino2vino.com/2007/03/13/how-to-turn-an-xml-feed-into-something-useful/</guid>
		<description><![CDATA[Before we begin, a warning: this post is fairly technical, so if you&#8217;re looking for some light wine-related reading I suggest you skip this article. I&#8217;m assuming you already know at least the basics of working with XML and PHP (though not necessarily using them together). If you&#8217;ve never heard of these technologies, then what [...]]]></description>
			<content:encoded><![CDATA[<p>Before we begin, a warning: this post is fairly technical, so if you&#8217;re looking for some light wine-related reading I suggest you skip this article. I&#8217;m assuming you already know at least the basics of working with <a href="http://en.wikipedia.org/wiki/XML">XML</a> and <a href="http://www.php.net/">PHP</a> (though not necessarily using them together). If you&#8217;ve never heard of these technologies, then what follows will likely be completely meaningless to you.</p>
<p>If you&#8217;re used to working with XML, but have never bothered to learn about <a href="http://www.w3.org/Style/XSL/">XSL/XSLT</a>, you&#8217;re missing out. XSLT, or eXtensible Stylesheet Language Transformations, is an XML language that can transform an XML document into something else&#8230; What else? Well, theoretically, anything that can be represented as ones and zeros. We&#8217;ll be using it to transform Vino2Vino&#8217;s XML wine feeds into a variety of useful formats.</p>
<p>To begin, we need an XML source document. I&#8217;ll be working with my personal wine list from <a href="http://www.vino2vino.com">Vino2Vino.com</a>, which is located at <a href="http://www.vino2vino.com/feed/wine/mike">http://vino2vino.com/feed/wine/mike</a>, and looks something like this:</p>
<pre class="block">
<code>
&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;wines count=&quot;9&quot;&gt;
  &lt;link&gt;
    http://www.vino2vino.com/feed/wine/mike
  &lt;/link&gt;
  &lt;wine id=&quot;38681&quot;&gt;
    &lt;color&gt;unknown&lt;/color&gt;
    &lt;name&gt;Amarone della Valpolicella
       Classico Campolongo di Torbe&lt;/name&gt;
    &lt;year&gt;1999&lt;/year&gt;
    &lt;production-volume&gt;1600&lt;/production-volume&gt;
    &lt;winery id=&quot;2436&quot;&gt;Masi&lt;/winery&gt;
    &lt;region id=&quot;57&quot; country=&quot;IT&quot; continent=&quot;EU&quot;&gt;
      Veneto
    &lt;/region&gt;
    &lt;price&gt;85&lt;/price&gt;
    &lt;ratings&gt;
      &lt;rating by=&quot;V2V&quot;&gt;85&lt;/rating&gt;
      &lt;rating by=&quot;WS&quot;&gt;90&lt;/rating&gt;
    &lt;/ratings&gt;
    &lt;tags&gt;
      &lt;tag&gt;silky&lt;/tag&gt;
      &lt;tag&gt;rich&lt;/tag&gt;
      &lt;tag&gt;full bodied&lt;/tag&gt;
      &lt;tag&gt;full&lt;/tag&gt;
      &lt;tag&gt;plums&lt;/tag&gt;
    &lt;/tags&gt;
  &lt;/wine&gt;
  ...
&lt;/wines&gt;
</code>
</pre>
<p>If you&#8217;re working with a different markup language you&#8217;ll need to adjust the examples accordingly.</p>
<p>Let&#8217;s convert our XML feed into a format that a normal <a href="http://www.google.com/reader/view/">feed reader</a> can understand, that way I can subscribe to my wine feed and have it show up on my Google homepage, in the sidebar of my blog, etc. All I really want are the names of the wines with links to the wine info page for each wine in my list. Here&#8217;s a simple XSLT file to convert our XML feed to RSS 2.0:</p>
<pre class="block">
<code>
&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;xsl:stylesheet version=&quot;1.0&quot; indent=&quot;yes&quot;
     xmlns:xsl=&quot;http://www.w3.org/1999/XSL/Transform&quot;&gt;
  &lt;xsl:output method=&quot;xml&quot; version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;/&gt;
  &lt;xsl:template match=&quot;/&quot;&gt;
    &lt;rss version=&quot;2.0&quot;&gt;
      &lt;channel&gt;
        &lt;title&gt;My Vino2Vino.com RSS Feed&lt;/title&gt;
        &lt;description&gt;My Vino2Vino.com RSS Feed&lt;/description&gt;
        &lt;link&gt;&lt;xsl:value-of select=&quot;/wines/link&quot;/&gt;&lt;/link&gt;
        &lt;xsl:apply-templates select=&quot;/wines/wine&quot;/&gt;
      &lt;/channel&gt;
    &lt;/rss&gt;
  &lt;/xsl:template&gt;
  &lt;xsl:template match=&quot;wine&quot;&gt;
    &lt;item&gt;
      &lt;title&gt;
        &lt;xsl:value-of
          select=&quot;concat(winery, ' ', year, ' ', name)&quot;/&gt;
      &lt;/title&gt;
      &lt;description&gt;
        &lt;xsl:value-of select=&quot;color&quot;/&gt; wine from
        &lt;xsl:value-of
          select=&quot;concat(region, ', ', region/@country)&quot;/&gt;
      &lt;/description&gt;
      &lt;link&gt;
        http://www.vino2vino.com/wine/&lt;xsl:value-of
          select=&quot;@id&quot;/&gt;
      &lt;/link&gt;
      &lt;guid&gt;
        http://www.vino2vino.com/wine/&lt;xsl:value-of
          select=&quot;@id&quot;/&gt;
      &lt;/guid&gt;
      &lt;source url=&quot;{/wines/link}&quot;&gt;
        &lt;xsl:value-of
          select=&quot;concat(winery, ' ', year, ' ', name)&quot;/&gt;
      &lt;/source&gt;
    &lt;/item&gt;
  &lt;/xsl:template&gt;
&lt;/xsl:stylesheet&gt;
</code>
</pre>
<p>Next, we need to apply the transformation to our XML feed and print the output. The PHP code to perform this operation is trivial, so I won&#8217;t bother explaining it. If you want more details, check out the <a href="http://us2.php.net/manual/en/function.xsl-xsltprocessor-construct.php">PHP online documentation</a>. Here&#8217;s the code:</p>
<pre class="block">
<code>
$xmlFile = 'http://vino2vino.com/feed/wine/mike';
$xslFile = 'rss.xsl';

// Initialize XSLTProcessor by passing it a
// DOMDocument object loaded with XSL file
$xsl = new XSLTProcessor();
$xsl-&gt;importStyleSheet(DOMDocument::load($xslFile));

// Load source XML into DOMDocument object
$dom = DOMDocument::load($xmlFile);

print($xsl-&gt;transformToXml($dom));
</code>
</pre>
<p>If you place this script on your web server you can point an RSS reader at it and keep an eye on your wine lists! The output from this script looks something like this:</p>
<pre class="block">
<code>
&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;rss version=&quot;2.0&quot;&gt;
  &lt;channel&gt;
    &lt;title&gt;My Vino2Vino.com RSS Feed&lt;/title&gt;
    &lt;description&gt;My Vino2Vino.com RSS Feed&lt;/description&gt;
    &lt;link&gt;http://vino2vino.com/feed/wine/mike&lt;/link&gt;
    &lt;ttl&gt;30&lt;/ttl&gt;
    &lt;item&gt;
      &lt;title&gt;Masi 1999 Amarone della Valpolicella
          Classico Campolongo di Torbe&lt;/title&gt;
      &lt;description&gt;unknown wine from Veneto, IT&lt;/description&gt;
      &lt;link&gt;http://www.vino2vino.com/wine/38681&lt;/link&gt;
      &lt;pubDate&gt;Tue, 13 Mar 2007 05:54:24 GMT&lt;/pubDate&gt;
      &lt;guid&gt;http://www.vino2vino.com/wine/38681&lt;/guid&gt;
      &lt;source url=&quot;http://vino2vino.com/feed/wine/mike&quot;&gt;
        Masi 1999 Amarone della Valpolicella
        Classico Campolongo di Torbe
      &lt;/source&gt;
    &lt;/item&gt;
    ...
  &lt;/channel&gt;
&lt;/rss&gt;
</code>
</pre>
<p>I&#8217;ve put together a couple of useful transformations in <a href="http://blog.vino2vino.com/wp-content/uploads/xslt_examples.zip">a zip file</a> for you to play with. The zip contains stylesheets to convert XML feeds from Vino2Vino.com into <a href="http://www.rssboard.org/rss-specification">RSS</a>, <a href="http://www.json.org/">JSON</a>, and <a href="http://en.wikipedia.org/wiki/HTML">HTML</a>. <a href="http://blog.vino2vino.com/wp-content/uploads/xslt_examples.zip">Check it out</a>!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.vino2vino.com/2007/03/13/how-to-turn-an-xml-feed-into-something-useful/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Wine Review Widget live on Widgetbox!</title>
		<link>http://blog.vino2vino.com/2007/03/10/wine-review-widget-live-on-widgetbox/</link>
		<comments>http://blog.vino2vino.com/2007/03/10/wine-review-widget-live-on-widgetbox/#comments</comments>
		<pubDate>Sun, 11 Mar 2007 05:38:12 +0000</pubDate>
		<dc:creator>ted</dc:creator>
		
		<category><![CDATA[General]]></category>

		<category><![CDATA[features]]></category>

		<guid isPermaLink="false">http://blog.vino2vino.com/2007/03/10/wine-review-widget-live-on-widgetbox/</guid>
		<description><![CDATA[ 
This week we published our first wine widget on Widgetbox.&#160; It&#8217;s really neat, because the&#160;Wine Review Widget can be configured to do many different things simply by changing a few widget parameters.&#160; And, Widgetbox helps you use the widget properly and walks you through the process of installing a widget on any type of [...]]]></description>
			<content:encoded><![CDATA[<p> <script src="http://widgetserver.com/syndication/subscriber/InsertPanel.js?panelId=c908c752-f550-400f-a1ef-77915de9d566" type="text/javascript"></script>
<p>This week we published our first wine widget on <a href="http://www.widgetbox.com/">Widgetbox</a>.&nbsp; It&#8217;s really neat, because the&nbsp;<a href="http://www.widgetbox.com/widget/WineReview">Wine Review Widget</a> can be configured to do many different things simply by changing a few widget parameters.&nbsp; And, Widgetbox helps you use the widget properly and walks you through the process of installing a widget on any type of blog or site.</p>
<p>With Widgetbox, it&#8217;s a two step process.&nbsp; The first thing you need to do is to install a &#8220;panel&#8221; somewhere on your blog.&nbsp; It can be an empty panel if you&#8217;re planning to use widgets only&nbsp;in blog posts, or the panel can actually contain the widgets.&nbsp; Then, you can re-configure the panel at Widgetbox without needing to edit your template.</p>
<p>The second step is to configure the widget itself and place it either on your panel or in a blog post.&nbsp; The widget has the following parameters:</p>
<ul>
<li>How many labels to display, and whether the labels should animate (scroll)
<li>User specified sort parameter and value (ascending/descending)
<li>User specified wine, winery, varietal or V2V users&#8217; wine list
<li>Specific or Range of Year, Rating, Release Price, or Case Production</li>
</ul>
<p>Here are some example of what you can do with the widget.&nbsp; These widgets&nbsp;are all the same widget with different parameters specified.&nbsp; In all cases, clicking on a wine label takes the user to the wine page on Vino2Vino for the specified wine.</p>
<p><span style="font-weight: bold">A scrollable wine list for the user &#8220;VaDeVi&#8221;</span><br /> 
<div class="wbx-widget" id="4bbb4a48-94f9-41af-ab8a-c7f9719c3781"></div>
<p><a style="display: block; margin: 2px 0px" href="http://www.widgetbox.com/widget/WineReview?wbx.refer=1&amp;wbx.refer.instId=4bbb4a48-94f9-41af-ab8a-c7f9719c3781" target="_blank"><img title="Get this widget from Widgetbox" alt="Get" src="http://widgetserver.com/syndication/images/getwdgtmark.gif" border="0"></a> </p>
<p><span style="font-weight: bold">Cabernet wines, vintage 2000~2005, rated above 95 points</span><br /> 
<div class="wbx-widget" id="bc1775c2-2613-4719-968c-820cb7efdc28"></div>
<p><a style="display: block; margin: 2px 0px" href="http://www.widgetbox.com/widget/WineReview?wbx.refer=1&amp;wbx.refer.instId=bc1775c2-2613-4719-968c-820cb7efdc28" target="_blank"><img title="Get this widget from Widgetbox" alt="Get" src="http://widgetserver.com/syndication/images/getwdgtmark.gif" border="0"></a> <br /><span style="font-weight: bold"><br />All Napa Valley wines rated above 90 points</span><br /> 
<div class="wbx-widget" id="4fb1a78b-37c6-4802-b9fd-ec795880cb03"></div>
<p><a style="display: block; margin: 2px 0px" href="http://www.widgetbox.com/widget/WineReview?wbx.refer=1&amp;wbx.refer.instId=4fb1a78b-37c6-4802-b9fd-ec795880cb03" target="_blank"><img title="Get this widget from Widgetbox" alt="Get" src="http://widgetserver.com/syndication/images/getwdgtmark.gif" border="0"></a> <br /><span style="font-weight: bold"><br />Wines from the winery Château Margaux, 1980-Present</span><br /> 
<div class="wbx-widget" id="bd004dd3-9803-4664-9508-7388ed0d27e7"></div>
<p><a style="display: block; margin: 2px 0px" href="http://www.widgetbox.com/widget/WineReview?wbx.refer=1&amp;wbx.refer.instId=bd004dd3-9803-4664-9508-7388ed0d27e7" target="_blank"><img title="Get this widget from Widgetbox" alt="Get" src="http://widgetserver.com/syndication/images/getwdgtmark.gif" border="0"></a> <br /></iframe><br /><span style="font-weight: bold"><br />Single Wine - 1997 Trefethen Chardonnay</span><br /> 
<div class="wbx-widget" id="7333ef12-d196-410f-932f-23ff0e4228e5"></div>
<p><a style="display: block; margin: 2px 0px" href="http://www.widgetbox.com/widget/WineReview?wbx.refer=1&amp;wbx.refer.instId=7333ef12-d196-410f-932f-23ff0e4228e5" target="_blank"><img title="Get this widget from Widgetbox" alt="Get" src="http://widgetserver.com/syndication/images/getwdgtmark.gif" border="0"></a></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.vino2vino.com/2007/03/10/wine-review-widget-live-on-widgetbox/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Standardizing the world of wine</title>
		<link>http://blog.vino2vino.com/2007/03/09/standardizing-the-world-of-wine/</link>
		<comments>http://blog.vino2vino.com/2007/03/09/standardizing-the-world-of-wine/#comments</comments>
		<pubDate>Sat, 10 Mar 2007 04:07:16 +0000</pubDate>
		<dc:creator>mike</dc:creator>
		
		<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://blog.vino2vino.com/2007/03/09/standardizing-the-world-of-wine/</guid>
		<description><![CDATA[Early on during the development of Vino2Vino we ran into a difficult problem which we have yet to completely solve. While it&#8217;s fairly easy for a human to find information on a particular wine online (if information is available), it&#8217;s extremely difficult to do the same thing programmatically. The problem is that there is no [...]]]></description>
			<content:encoded><![CDATA[<p>Early on during the development of Vino2Vino we ran into a difficult problem which we have yet to completely solve. While it&#8217;s fairly easy for a human to find information on a particular wine online (if information is available), it&#8217;s extremely difficult to do the same thing programmatically. The problem is that there is no standard naming convention or identification mechanism for wines, wineries, regions, varietals, etc. Wine Spectator might call a wine a &#8220;1999 Luna Sangiovese Napa Valley Riserva,&#8221; while Wine Enthusiast simply calls it a &#8220;Luna Sangiovese,&#8221; then specifies that the designation is &#8220;Reserve.&#8221; This is a fairly trivial example, but you get the point. To make matters worse, we need a tractable solution that scales to databases containing several hundred thousand unique bottles.</p>
<p>Solving this problem is perhaps the biggest obstacle standing in the way of a truly useful &#8220;Wine 2.0&#8243; website. Web 2.0 is about enabling online collaboration, organizing user-generated content, and interlinking related sites (e.g. blog trackbacks), among other things. In order to do these things for wine, a reliable method of <a href="http://en.wikipedia.org/wiki/Record_linkage">linking records</a> in the world&#8217;s largest database (the internet) is required. The majority of <a href="http://winecast.net/2007/03/03/next-wine-20-chat-march-8th/">yesterday&#8217;s Wine 2.0 campfire chat</a> was devoted to discussing how to solve this issue, but I&#8217;m afraid some of the participants might be headed in the wrong direction.</p>
<p>Several members of the <a href="http://groups.google.com/group/wine20">Wine 2.0 community</a> are working on putting together what they call an &#8220;open source <a href="http://www.michaelstajer.com/2006/07/universal-wine-web-app-api.html">wine database</a>&#8221; which, I assume, means that the data would be available under the <a href="http://creativecommons.org/">Creative Commons license</a>, or something similar, but I&#8217;m not convinced this is the right direction. Creating a centralized, authoritative database of every wine in the world sounds like it would be difficult (and expensive), and wouldn&#8217;t really solve the record linking problem I mentioned above (you&#8217;ll still need to sync your existing data with the central database). Plus, <a href="http://www.iswn.org/iswn_org/iswn_info/index.cfm">it&#8217;s been tried</a> before without a whole lot of success.</p>
<p>What we really need are standards. Standard naming conventions, a standard way to describe a wine (e.g. <a href="http://www.vinoxml.org/">vinoxml</a>), and standard communication mechanisms. These are problems that bloggers have already solved, using standards like <a href="http://en.wikipedia.org/wiki/RSS_(file_format)">RSS</a> and <a href="http://microformats.org/">microformats</a>, along with communication mechanisms like <a href="http://en.wikipedia.org/wiki/Trackback">trackbacks</a> and <a href="http://en.wikipedia.org/wiki/Ping_blog">pinging</a>. In my opinion, standards like <a href="http://wineformats.org/wiki/Main_Page">wineformats</a> and <a href="http://www.vinoxml.org">vinoxml</a> hold far more promise than a centralized database.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.vino2vino.com/2007/03/09/standardizing-the-world-of-wine/feed/</wfw:commentRss>
		</item>
		<item>
		<title>Wine2.0 online chat</title>
		<link>http://blog.vino2vino.com/2007/03/07/wine20-online-chat/</link>
		<comments>http://blog.vino2vino.com/2007/03/07/wine20-online-chat/#comments</comments>
		<pubDate>Wed, 07 Mar 2007 19:03:33 +0000</pubDate>
		<dc:creator>ted</dc:creator>
		
		<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://blog.vino2vino.com/2007/03/07/wine20-online-chat/</guid>
		<description><![CDATA[Here&#8217;s an interesting post relating to some developers who are looking to standardize online tasting notes.&#160; And, their next online chat is tomorrow.&#160; That&#8217;s fortunate timing.
They&#8217;ve also got a small Google Group&#160;going to log their discussions, etc.&#160; We&#8217;re kind of the new kids on the block, but we&#8217;ll try to be there.&#160; I&#8217;ll be on [...]]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s an <a href="http://winecast.net/2007/03/03/next-wine-20-chat-march-8th/">interesting post</a> relating to some developers who are looking to standardize online tasting notes.&nbsp; And, their next online chat is tomorrow.&nbsp; That&#8217;s fortunate timing.</p>
<p>They&#8217;ve also got a small <a href="http://groups.google.com/group/wine20/">Google Group</a>&nbsp;going to log their discussions, etc.&nbsp; We&#8217;re kind of the new kids on the block, but we&#8217;ll try to be there.&nbsp; I&#8217;ll be on the road, so I&#8217;ll need to find a Starbucks somewhere to log on.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.vino2vino.com/2007/03/07/wine20-online-chat/feed/</wfw:commentRss>
		</item>
	</channel>
</rss>
