W3C home > Mailing lists > Public > public-lod@w3.org > July 2008

Re: ANN: BBC Music Linked Data Goodness

From: Patrick Sinclair <Patrick.Sinclair@bbc.co.uk>
Date: Thu, 31 Jul 2008 11:39:07 +0100
To: Richard Cyganiak <richard@cyganiak.de>
CC: <public-lod@w3.org>
Message-ID: <C4B754DB.2348%Patrick.Sinclair@bbc.co.uk>

Hi Richard,

Thank you very much for your feedback!


On 30/7/08 18:31, "Richard Cyganiak" <richard@cyganiak.de> wrote:

> - At the content-negotiated URIs of form /music/artists/{id}, add a
> Content-Location header that gives the URI of the selected variant
> (e.g. /music/artists/{id}.html if HTML was selected)

We are considering building this directly into the framework behind
/programmes and /music, so it should happen sometime shortly.
 
> - Maybe add <link rel="alternate"> headers to the HTML for the other,
> non-RDF data formats as well (XML, JSON)

The /programmes team are building this functionality into the framework so
it happens automatically for each page based on the formats that the
controller action accepts. This will make it much easier to maintain as
there are XML, YAML and JSON representations for all of our recourses (e.g.
releases, appearson, relatedartists, links, wikipedia, labels - see
http://www.bbc.co.uk/music/developers for more details).
 
> - Add a foaf:page link to the RDF that points back to the HTML (e.g.
> to </music/artists/{id}.html>)

We're hoping to get a release out today, and we'll be adding that in.

> - No RDF yet for releases and songs? :-(

The issue is that MusicBrainz doesn't currently model the notion of a
"cultural item" for songs and releases - only the actual physical release,
so each song/release appears multiple times. I'm sure we will discuss this
issue in more detail on BBC Radio Labs blog shortly.

> - If I dereference the URI of a SoloMusicArtist who is a band member,
> then the RDF doesn't contain a pointer back to the band. The HTML has
> the pointer. Example:
> http://www.bbc.co.uk/music/artists/6953c4db-7214-4724-a140-e87550bde420

That should happen today also.

> - Is there any way to search for a specific artist, by name? In the
> HTML interface? It might be useful to have some way to get back those
> search results in RDF as well.

We will be addressing search over the coming weeks, and we will certainly
investigate including RDF search results. For now, the best bet is to use
MusicBrainz. I've created a bookmarklet that makes it easy to switch between
the BBC Music site and MusicBrainz, you can read about it here:
http://metade.org/blog/2008/07/30/bbc-musicmusicbrainz-bookmarklet/

Regards,

Patrick
 
> Good catch about the Vary header. I read in the HTTP spec that we're
> supposed to use it whenever we do content negotiation, but most
> examples I looked at didn't use it and seemed to work fine, so I never
> gave it much thought. Now we know that breakage can occur if the
> header is absent.
> 
> All the best,
> Richard
> 
> 
> On 29 Jul 2008, at 19:30, Patrick Sinclair wrote:
> 
>> Hi All,
>> 
>> As you may know, we launched the BBC Music Beta yesterday [1,2,3].
>> We'd like to go over the Linked Data goodness that we have built
>> into the site.
>> 
>> For every artist profile we have published, we have content-
>> negotiated RDF:
>> 
>> rapper -o turtle
>> http://www.bbc.co.uk/music/artists/cc197bad-dc9c-440d-a5b5-d52ba2e14234
>> rapper: Parsing URI
>> http://www.bbc.co.uk/music/artists/cc197bad-dc9c-440d-a5b5-d52ba2e14234
>>  with parser rdfxml
>> rapper: Serializing with serializer turtle
>> @prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
>> @prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
>> @prefix foaf: <http://xmlns.com/foaf/0.1/> .
>> @prefix mo: <http://purl.org/ontology/mo/> .
>> @prefix owl: <http://www.w3.org/2002/07/owl#> .
>> @prefix time: <http://www.w3.org/2006/time#> .
>> @prefix dc: <http://purl.org/dc/elements/1.1/> .
>> @prefix timeline: <http://purl.org/NET/c4dm/timeline.owl#> .
>> @prefix event: <http://purl.org/NET/c4dm/event.owl#> .
>> 
>> <http://www.bbc.co.uk/music/artists/cc197bad-dc9c-440d-a5b5-d52ba2e14234.rdf
>>> 
>>     rdfs:label "Description of the artist Coldplay" .
>> 
>> <http://www.bbc.co.uk/music/artists/cc197bad-dc9c-440d-a5b5-d52ba2e14234#arti
>> st 
>>> 
>>     a mo:MusicGroup;
>>     foaf:name "Coldplay";
>>     owl:sameAs <http://dbpedia.org/resource/Coldplay>;
>>     mo:image 
>> <http://www.bbc.co.uk/music/images/artists/7col_in/cc197bad-dc9c-440d-a5b5-d5
>> 2ba2e14234.jpg 
>>> ;
>>     mo:musicbrainz
>> <http://musicbrainz.org/artist/cc197bad-dc9c-440d-a5b5-d52ba2e14234
>>> ;
>>     mo:homepage <http://www.coldplay.com/>;
>>     mo:fanpage <http://www.pleasureunit.com/coldplay/index.php>;
>>     mo:wikipedia <http://en.wikipedia.org/wiki/Coldplay>;
>>     mo:imdb <http://www.imdb.com/name/nm1095892/>;
>>     mo:myspace <http://www.myspace.com/coldplay>;
>>     mo:member 
>> <http://www.bbc.co.uk/music/artists/18690715-59fa-4e4d-bcf3-8025cf1c23e0#arti
>> st 
>>> , 
>>> <http://www.bbc.co.uk/music/artists/d156ceb2-fd90-4e82-baea-829bbdf1c127#art
>>> ist 
>>> , 
>>> <http://www.bbc.co.uk/music/artists/6953c4db-7214-4724-a140-e87550bde420#art
>>> ist 
>>> , 
>>> <http://www.bbc.co.uk/music/artists/98d1ec5a-dd97-4c0b-9c83-7928aac89bca#art
>>> ist 
>>> .
>> 
>> <http://www.bbc.co.uk/music/artists/18690715-59fa-4e4d-bcf3-8025cf1c23e0#arti
>> st 
>>> 
>>     a mo:SoloMusicArtist;
>>     foaf:name "Guy Berryman" .
>> 
>> <http://www.bbc.co.uk/music/artists/d156ceb2-fd90-4e82-baea-829bbdf1c127#arti
>> st 
>>> 
>>     a mo:SoloMusicArtist;
>>     foaf:name "Jon Buckland" .
>> 
>> <http://www.bbc.co.uk/music/artists/6953c4db-7214-4724-a140-e87550bde420#arti
>> st 
>>> 
>>     a mo:SoloMusicArtist;
>>     foaf:name "Will Champion" .
>> 
>> <http://www.bbc.co.uk/music/artists/98d1ec5a-dd97-4c0b-9c83-7928aac89bca#arti
>> st 
>>> 
>>     a mo:SoloMusicArtist;
>>     foaf:name "Chris Martin" .
>> 
>> rapper: Parsing returned 23 triples
>> 
>> Our approach to publishing the site in a linked data manner is:
>> * each artist profile HTML document is published at
>> http://www.bbc.co.uk/music/artists/:gid
>> , where :gid is the MusicBrainz identifier
>> * rdf is available at http://www.bbc.co.uk/music/artists/:gid.rdf
>> * content-negotiation is configured for
>> http://www.bbc.co.uk/music/artists/:gid
>> * The http://www.bbc.co.uk/music/artists/:gid.rdf URI describes the
>> document
>> * The http://www.bbc.co.uk/music/artists/:gid.rdf#artist URI
>> describes the artist
>> 
>> Wešve considered various LOD publishing recipes, and decided to take
>> this approach as it was:
>> * simple: one view for the HTML, one view for the RDF
>> * suited our internal caching policy, as we could cache all
>> representations
>> 
>> However, wešve found some curious issues with our internal BBC
>> proxy, which has randomly cached the RDF version and served that
>> when a web browser was expecting the HTML page. We believe wešve got
>> around this by setting the ŗVary: Accept˛ [5] in the HTTP headers.
>> Wešre curious to know if anyone else has encountered this issue, as
>> we had trouble finding any Linked Data documentation on the subject.
>> 
>> Itšs been suggested that we use foaf:member and foaf:homepage
>> instead of mo:member and mo:homepage, so we will very likely make
>> this change shortly.
>> 
>> Wešd like to publish the play count data you can see on the pages as
>> RDF, and wešre looking for approaches on how to do this. Yves
>> Raimondšs playcount ontology [6] looks like a great start, but
>> please get in touch if you have any ideas on how to do it.
>> 
>> Finally, wešre providing owl:sameAs relations to DBPedia to artists
>> profiles if they have an English Wikipedia link.
>> 
>> Wešd really appreciate feedback on what wešre doing, so please get
>> in touch if you have any ideas or requests!
>> 
>> Patrick Sinclair and Nicholas Humfrey
>> 
>> [1] 
>> http://www.bbc.co.uk/blogs/bbcinternet/2008/07/bbc_music_artist_pages_beta.ht
>> ml
>> [2] 
>> http://www.bbc.co.uk/blogs/bbcinternet/2008/07/interesting_stuff_the_all_new.
>> html
>> [3] 
>> http://derivadow.com/2008/07/28/the-all-new-bbc-music-site-where-programmes-m
>> eet-music-and-the-semantic-web/
>> [4] http://musicbrainz.org
>> [5] http://httpd.apache.org/docs/2.0/mod/mod_headers.html
>> [6] http://purl.org/ontology/playcount/
>> http://www.bbc.co.uk
>> This e-mail (and any attachments) is confidential and may contain
>> personal views which are not the views of the BBC unless
>> specifically stated.
>> If you have received it in error, please delete it from your system.
>> Do not use, copy or disclose the information in any way nor act in
>> reliance on it and notify the sender immediately.
>> Please note that the BBC monitors e-mails sent or received.
>> Further communication will signify your consent to this.


http://www.bbc.co.uk/
This e-mail (and any attachments) is confidential and may contain personal views which are not the views of the BBC unless specifically stated.
If you have received it in error, please delete it from your system.
Do not use, copy or disclose the information in any way nor act in reliance on it and notify the sender immediately.
Please note that the BBC monitors e-mails sent or received.
Further communication will signify your consent to this.
					
Received on Thursday, 31 July 2008 10:39:46 UTC

This archive was generated by hypermail 2.3.1 : Sunday, 31 March 2013 14:24:17 UTC