data_interchange_problems_come.html 14.8 KB
<?xml version="1.0"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <style type="text/css" media="all">
    @import "/QA/2006/01/blogstyle.css";
    </style>
    <meta name="keywords" content='digital media data interchange web architecture music rdfa microformats' />
    <meta name="description" content=" I had a pretty small data interchange problem the other day: I just wanted to archive some play lists that I had compiled using various music player daemon (mpd) clients. The mpd server stores playlists as simple m3u files,..." />
    <meta name="revision" content="$Id: data_interchange_problems_come.html,v 1.34 2011/12/15 22:21:23 mirror Exp $" />    
   <link rel="alternate" type="application/atom+xml" title="Atom" href="http://www.w3.org/QA/atom.xml" />
   <link rel="alternate" type="application/rss+xml" title="RSS 1.0" href="http://www.w3.org/QA/news.rss" />   
   <title>Data interchange problems come in all sizes - W3C Blog</title>

   <link rel="start" href="http://www.w3.org/QA/" title="Home" />
   <link rel="prev" href="http://www.w3.org/QA/2009/05/once_more_into_versioning_--_t.html" title="Once more into Versioning -- this time with HTML" />
   <link rel="next" href="http://www.w3.org/QA/2009/05/w3c_is_micro-blogging.html" title="W3C is micro-blogging" />

   <!--
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
         xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/"
         xmlns:dc="http://purl.org/dc/elements/1.1/">
<rdf:Description
    rdf:about="http://www.w3.org/QA/2009/05/data_interchange_problems_come.html"
    trackback:ping="http://www.w3.org/QA/sununga/mt-tb.cgi/268"
    dc:title="Data interchange problems come in all sizes"
    dc:identifier="http://www.w3.org/QA/2009/05/data_interchange_problems_come.html"
    dc:subject="HTML"
    dc:description=" I had a pretty small data interchange problem the other day: I just wanted to archive some play lists that I had compiled using various music player daemon (mpd) clients. The mpd server stores playlists as simple m3u files,..."
    dc:creator="Dan Connolly"
    dc:date="2009-05-08T21:10:44+00:00" />
</rdf:RDF>
-->

    <!-- <script type="text/javascript" src="http://www.w3.org/QA/mt.js"></script>-->

</head>
<body class="layout-one-column">
      <div id="banner">
      <h1 id="title">
	<a href="http://www.w3.org/"><img height="48" alt="W3C" id="logo" src="http://www.w3.org/Icons/WWW/w3c_home_nb" /></a>
W3C Blog
</h1>
    </div>
    
    <ul class="navbar" id="menu">
        <li><strong><a href="/QA/" title="W3C Blog Home">[ W3C Blog ]</a></strong></li>
        <li><a href="/QA/Library/" title="Documents and Publications on Web and Quality">Documents</a></li>
        <li><a href="/QA/Tools/" accesskey="3" title="Validators and other Tools">Tools</a></li>
        <li><a href="/2007/12/qa-blog-help/index#feedback">Feedback</a></li>
    </ul>
<div id="searchbox">
<form method="get" action="http://www.google.com/custom" enctype="application/x-www-form-urlencoded">
<p id="formbox"><input type="text" size="15" class="textfield" name="q" accesskey="E" maxlength="255" /> <input type="submit" class="submitfield" value="Search" id="goButton" name="sa" accesskey="G" /> <input type="hidden" name="cof" value="T:black;LW:72;ALC:#ff3300;L:http://www.w3.org/Icons/w3c_home;LC:#000099;LH:48;BGC:white;AH:left;VLC:#660066;GL:0;AWFID:0b9847e42caf283e;" /><input type="hidden" id="searchW3C" name="sitesearch" checked="checked" value="www.w3.org/QA" /><input type="hidden" name="domains" value="www.w3.org/QA" /></p>
</form>
</div>


    <div id="main"><!-- This DIV encapsulates everything in this page - necessary for the positioning -->

                     <p class="content-nav">
                        <a href="http://www.w3.org/QA/2009/05/once_more_into_versioning_--_t.html">&laquo; Once more into Versioning -- this time with HTML</a> |
                        <a href="http://www.w3.org/QA/">Main</a>
                        | <a href="http://www.w3.org/QA/2009/05/w3c_is_micro-blogging.html">W3C is micro-blogging &raquo;</a>
                     </p>

                        <h2 class="entry-header">Data interchange problems come in all sizes</h2>
                           <div class="entry-body">
                              
<p>I had a pretty small data interchange problem the other day: I just
wanted to archive some play lists that I had compiled using various
music player daemon (<a href="http://en.wikipedia.org/wiki/Music_Player_Daemon">mpd</a>)
clients.
 The mpd server stores playlists as simple <a href="http://en.wikipedia.org/wiki/M3U">m3u</a> files,
i.e. line-oriented files with a path to the media file on each line. But
that's too fragile for archive and interchange purposes.

I had a similar problem a while back with iTunes playlists. In <a href="http://dig.csail.mit.edu/breadcrumbs/node/228">that episode</a>,
I chose <a href="http://microformats.org/wiki/haudio">hAudio</a>, an
HTML dialect in progress in the <a href="http://microformats.org/wiki/Main_Page">microformats
community</a>, as my target.</p>

<p>Unfortunately, hAudio changed out from under me between when I
started and when I finished.  So this time, a simple search found the
<a href="http://musicontology.com/">music ontology</a> and I tried it
with <a href="http://www.w3.org/TR/xhtml-rdfa-primer/">RDFa</a>, which
lets you use any RDF vocabulary in HTML<a href="#quibble">*</a>.
I'm mostly pleased with the results:
</p>


<blockquote>
<ol xmlns:mo="http://purl.org/ontology/mo/" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:dc="http://purl.org/dc/elements/1.1/">
<li about="#album1" typeof="mo:Record">
from <cite property="dc:title">A Song's Best Friend_ The Very Best Of John Denver [Disc 1]</cite>
<br /> by <span rel="foaf:maker"><b typeof="foaf:Agent" about="#agent1" property="foaf:name">John Denver</b></span>
<br /><a rel="mo:track" href="http://www.w3.org/QA/sununga/mt-static/html/artists-popular/John%20Denver/A%20Song%27s%20Best%20Friend_%20The%20Very%20Best%20Of%20John%20Denver%20%5BDisc%201%5D/1-04%20Poems%2C%20Prayers%20And%20Promises.mp3"><em property="dc:title">Poems, Prayers And Promises</em></a></li>

<li about="#album2" typeof="mo:Record">
from <cite property="dc:title">WOW Worship (orange)</cite>
<br /> by <span rel="foaf:maker"><b typeof="foaf:Agent" about="#agent2" property="foaf:name">Compilations</b></span>
<br /><a rel="mo:track" href="http://www.w3.org/QA/sununga/mt-static/html/artists-popular/Compilations/WOW%20Worship%20%28orange%29/1-01%20Did%20you%20Feel%20the%20Mountains%20Tremble.mp3"><em property="dc:title">Did you Feel the Mountains Tremble</em></a></li>

<li about="#album3" typeof="mo:Record">
from <cite property="dc:title">Family Music Party</cite>
<br /> by <span rel="foaf:maker"><b typeof="foaf:Agent" about="#agent3" property="foaf:name">Trout Fishing In America</b></span>
<br /><a rel="mo:track" href="http://www.w3.org/QA/sununga/mt-static/html/artists-popular/Trout%20Fishing%20In%20America/Family%20Music%20Party/14%20-%20Back%20When%20I%20Could%20Fly.flac"><em property="dc:title">Back When I Could Fly</em></a></li>
</ol>
</blockquote>

<p>The album names come before the track names because I didn't read
enough of the the <a href="http://www.w3.org/TR/xhtml-rdfa-primer/">RDFa primer</a> when I
was coding; RDFa includes <tt>@rev</tt> as well as <tt>@rel</tt>
for reversing subject/object order.
See
<a href="http://www.advogato.org/person/connolly/diary/67.html">an
advogato episode on m3uin.py</a> for details about the code.
</p>

<p>The Music Ontology was developed by a handful of people who
staked out a claim in URI space
(<tt>http://musicontology.org/...</tt>) and happily took comments from
as big a review community as they could manage, but they had no
obligation to get a really global consensus. The microformats process
is intended to reach a global consensus so that staking out a claim in
URI space is superfluous; it works well given certain initial
conditions about how common the problem is and availability of pre-web
designs to draw from. Perhaps playlists (and media syndication, as
hAudio seems to be expanding in scope to hMedia) will eventually reach
these conditions, but the music ontology already meets my needs, since
I'm the sort who doesn't mind declaring my data vocabulary with URIs.
</p>

<p>My view of Web architecture is shaped by episodes such as this
one. While giga-scale deployment is always impressive and definitely
something we should design for, small scale deployment is just as
important. The Web spread, initially, not because of global phenomena
such as Wikipedia and Facebook but because you <em>didn't</em> need
your manager's permission to try it out; you <em>didn't</em> even
<em>need</em> a domain name; you could just run it on your LAN
or even on just one machine with no server at all.</p>

<p>In an
<a href="http://www.w3.org/2008/10/22-tp-minutes.html#item02">Oct 2008
tech plenary session on web architecture</a>,
Henri Sivonen said:
</p>

<blockquote>
<p>I see the Web
as the public Web that people can access. The resources you can
navigate publicly. I define Web as the information space accessible to
the public via a browser.<br /> If a mobile operator operates behind
walls, this is not part of the Web.</p>
</blockquote>

<p>I can't say that I agree with that perspective. I'm no great fan of
walled gardens either, but freedom means freedom to do things we don't
like as well as freedom to do things we do like. And architecture and
policy should have a sort of church-and-state separation between
them.</p>

<p>Plus, data interchange happens not just at planetary scale, but
also within mobile devices, across devices, and across communities
and enterprises of all shapes and sizes.</p>

<p id="quibble"><small>I've gone a little outside the scope of current
standards; RDFa has only been specified for use in modular XHTML, with
the <tt>application/xhtml+xml</tt> media type, so far.</small>
</p>

<hr>
<p>See also:</p>

<ul>
<li>Feb 2009: <cite><a href="http://www.w3.org/QA/2009/02/palm_webos_approach_to_html_ex.html" rel="bookmark">Palm webOS approach to HTML extensibility:
x-mojo-*</a></cite></li>

<li>Aug 2008: <cite><a href="http://www.w3.org/QA/2008/08/the_details_of_data_in_documen.html">The details of data in documents: GRDDL, profiles, and HTML5</a></cite>
</li>
</ul>

                           </div>
                           <div id="more" class="entry-more">
                              
                           </div>
                       <p class="postinfo">Filed by <a href="http://www.w3.org/People/Connolly/">Dan Connolly</a> on May  8, 2009  9:10 PM in <a href="http://www.w3.org/QA/archive/technology/html/">HTML</a>, <a href="http://www.w3.org/QA/archive/web_spotting/opinions_editorial/">Opinions &amp;amp; Editorial</a>, <a href="http://www.w3.org/QA/archive/technology/semantic_web/">Semantic Web</a>, <a href="http://www.w3.org/QA/archive/web_architecture/">Web Architecture</a><br />
<span class="separator">|</span> <a class="permalink" href="http://www.w3.org/QA/2009/05/data_interchange_problems_come.html">Permalink</a>
                                 | <a href="http://www.w3.org/QA/2009/05/data_interchange_problems_come.html#comments">Comments (0)</a>
                                 | <a href="http://www.w3.org/QA/2009/05/data_interchange_problems_come.html#trackback">TrackBacks (0)</a>
</p>





  <div class="comments-open" id="comments-open">
<h3 class="comments-open-header">Leave a comment</h3>

<div class="comments-open-moderated">
   <p>
   Note: this blog is intended to foster <strong>polite
   on-topic discussions</strong>. Comments failing these
   requirements and spam will not get published. Please,
   enter your real name and email address. Every
   individual comment is reviewed by the W3C staff.
   This may take some time, thank you for your patience.
   </p>
   <p>
   You can use the following HTML markup (a href, b, i, 
   br/, p, strong, em, ul, ol, li, blockquote, pre) 
   and/or <a href="http://daringfireball.net/projects/markdown/syntax">Markdown syntax</a>.</p>
</div>

<div id="comments-open-data">
<form method="post" action="http://www.w3.org/QA/sununga/beach.pl" id="comments-form">
<h4>Your comment</h4>
<div id="comments-open-text">
  <textarea id="comment-text" name="text" rows="20" cols="100"></textarea><br />
<label for="comment-text">Write your comment text here. Remember, keep the discussion on topic and courteous.</label>
</div>

<h4>About you</h4>
<div id="comment-form-name">
  <input type="hidden" name="static" value="1" />
<input type="hidden" name="entry_id" value="6360" />
<input type="hidden" name="__lang" value="en" /> 
<label for="comment-author">Your Name</label>
<input id="comment-author" name="author" size="30" value="" />
</div>
<div id="comment-form-email">
<label for="comment-email">Your Email Address</label>
<input id="comment-email" name="email" size="30" value="" />
</div>

<div id="comments-open-footer">
<input type="submit" accesskey="s" name="post" id="comment-submit" value="Submit" />

</div>
</form>
</div>
</div>



<p id="gentime">This page was last generated on $Date: 2011/12/15 22:21:23 $</p> 

      </div><!-- End of "main" DIV. -->

<address>

This blog is written by W3C staff and working group participants,<br />
&nbsp;and maintained by <a href="/People/CMercier/">Coralie Mercier</a>.<br />
Authorized parties may <a href="/QA/new">log in</a> to create a new entry.<br/>
<span id="poweredby">Powered by Movable Type, magpierss and a lot of Web Technology</span>
    </address>


    
    <p class="copyright">
      <a rel="Copyright" href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> &copy; 1994-2011
      <a href="http://www.w3.org/"><acronym title="World Wide Web Consortium">W3C</acronym></a>&reg;
      (<a href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute of Technology">MIT</acronym></a>,
      <a href="http://www.ercim.eu/"><acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>,
      <a href="http://www.keio.ac.jp/">Keio</a>),
      All Rights Reserved.
      W3C <a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>,
      <a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a>,
      <a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a>
      and <a rel="Copyright" href="http://www.w3.org/Consortium/Legal/copyright-software">software licensing</a>
      rules apply. Your interactions with this site are in accordance
      with our <a href="http://www.w3.org/Consortium/Legal/privacy-statement#Public">public</a> and
      <a href="http://www.w3.org/Consortium/Legal/privacy-statement#Members">Member</a> privacy
      statements.
    </p>

  </body>
</html>