Your AudioScrobbler data as Linked Data
By Yves on Friday 11 January 2008, 15:38 - Permalink
I just put online a small service, which converts your AudioScrobbler data to RDF, designed using the Music Ontology: it exposes your last 10 scrobbled tracks.
The funny thing is that it links the track, records, and artists to corresponding dereferencable URIs in the Musicbrainz dataset. So the tracks you were last listening to are part of the Data Web!
Just try it by getting this URI:
http://dbtune.org/last-fm/<last.fm username>
For example, mine is:
http://dbtune.org/last-fm/moustaki
Of course, by being linked to dereferencable URIs in Musicbrainz, you are able to access the birth dates of the artists you last listened to, or use the links published by DBPedia to plot your last artists played on map, by just crawling the Data Web a little.
Then, you can link that to your FOAF URI. Mine now holds the following statement:
<http://moustaki.org/foaf.rdf#moustaki> owl:sameAs <http://dbtune.org/last-fm/moustaki>.
Now, my URI looks quite nice, in the Tabulator generic data browser!

Comments
Cool! Just a quick comment, it would be good if there were a few triples describing the URI of the user, e.g. /last-fm/moustaki. At least a label, and a foaf:primaryTopic triple from the document URI. Perhaps also a foaf:holdsAccount description describing the Last.fm account.
I've added the owl:sameAs triple to my FOAF file, but for some reason the ScrobbleEvents don't show up in Tabulator. It works in Disco.
Keep up the great work Yves!
Cool - I'll do that (showing some information about the user) :-)
The tabulator issue is weird - I'll investigate on that.
Thanks :)
y
Hey,
Hope your blog won't eat my comment again. :) This is really cool stuff!
Basically I agree there could be some triples added. I'd like to see a foaf:PersonalProfileDocument rdf:about="", typing of the people as foaf:Person, typing of the accounts as foaf:OnlineAccount and adding a foaf:holdsAccount to the person the document is about. Then I see a small problem with the resources you link to with foaf:holdsAccount. I think http://www.last.fm/user/username/ is a document, not an account. I would do something like
<http://dbtune.org/last-fm/username > foaf:holdsAccount
[
a foaf:OnlineAccount ;
foaf:accountServiceHomepage <http://www.last.fm/> ;
foaf:accountName "username" ;
foaf:page <http://www.last.fm/user/username/ >
] .
And I hope when can get more IDs, especially track IDs, out of last.fm in the future. :)
Simon
Hmm, actually the foaf:page would better be foaf:isPrimaryTopicOf.
Hi Simon!
Really sorry about the comment-eating spam filter :-(
Your modeling is indeed much better, I'll put it online later today.
Many thanks!!
y
Hey, I have to thank you for putting it online. :)
Hi Simon!
I think I *finally* implemented all your comments (including description of the http://dbtune.org/last-fm/user resources as foaf:Person-s and associated accounts).
Many thanks, again!
y
Hooray!
Oh but I found another little bug. :P
foaf:isPrimaryTopicOf instead of foaf:PrimaryTopicOf. (Btw: People have suggested adding a foaf:accountProfilePage to the spec on the foaf-dev mailing list. But I think foaf:isPrimaryTopicOf does that job quite well.)
Thanks,
Simon