Transform XSPF to MusicOntology RDF

This document specifies how to transform a valid XSPF document into MusicOntology RDF/XML.

It is designed for use by agents who understand GRDDL, and acts as the XSPF NamespaceTransformation.

Based on original work by Libby Miller

Copyright Yves Raimond & Daniel O'Connor

Example

The below XSPF playlist
<?xml version="1.0" encoding="utf-8"?>
<playlist version="1" xmlns="http://xspf.org/ns/0/">

  <title>My playlist</title>

  <creator>Jane Doe</creator>
  <annotation>My favorite songs</annotation>
  <info>http://example.com/myplaylists</info>
  <location>http://example.com/myplaylists/myplaylist</location>
  <identifier>magnet:?xt=urn:sha1:YNCKHTQCWBTRNJIV4WNAE52SJUQCZO5C</identifier>
  <image>http://example.com/img/mypicture</image>
  <date>2005-01-08T17:10:47-05:00</date>
  <license>http://creativecommons.org/licenses/by/1.0/</license>
  <attribution>
    <identifier>http://bar.com/secondderived.xspf</identifier>
    <location>http://foo.com/original.xspf</location>
  </attribution>
  <link rel="http://foaf.example.org/namespace/version1">http://socialnetwork.example.org/foaf/mary.rdfs</link>
  <meta rel="http://example.org/key">value</meta>
  <extension application="http://example.com">
    <clip start="25000" end="34500"/>
  </extension>

<trackList>

    <track>

      <location>http://example.com/my.mp3</location>
      <identifier>magnet:?xt=urn:sha1:YNCKHTQCWBTRNJIV4WNAE52SJUQCZO5C</identifier>
      <title>My Way</title>
      <creator>Frank Sinatra</creator>
      <annotation>This is my theme song.</annotation>
      <info>http://franksinatra.com/myway</info>
      <image>http://franksinatra.com/img/myway</image>
      <album>Frank Sinatra's Greatest Hits</album>
      <trackNum>3</trackNum>
      <duration>19200</duration>
      <link rel="http://foaf.org/namespace/version1">http://socialnetwork.org/foaf/mary.rdfs</link>
      <meta rel="http://example.org/key">value</meta>
      <extension application="http://example.com">
        <clip start="25000" end="34500"/>
      </extension>

    </track>

  </trackList>


</playlist>
can be transformed into
<?xml version="1.0" encoding="utf-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:rdfs="http://www.w3.org/2000/02/rdfschema#" xmlns:play="http://xspf.org/ns/0/" xmlns:mo="http://purl.org/ontology/mo/" xmlns="http://xspf.org/ns/0/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:dct="http://purl.org/dc/terms/" xmlns:foaf="http://xmlns.com/foaf/0.1/" xmlns:cc="http://web.resource.org/cc/" xmlns:owl="http://www.w3.org/2002/07/owl#">
  <mo:MusicalItem rdf:about="magnet:?xt=urn:sha1:YNCKHTQCWBTRNJIV4WNAE52SJUQCZO5C">
    <owl:sameAs rdf:resource="http://example.com/myplaylists/myplaylist"/>
    <rdfs:seeAlso rdf:resource="http://example.com/myplaylists"/>
    <foaf:maker>Jane Doe</foaf:maker>
    <dc:created>2005-01-08T17:10:47-05:00</dc:created>
    <cc:license rdf:resource="http://creativecommons.org/licenses/by/1.0/"/>
    <mo:license rdf:resource="http://creativecommons.org/licenses/by/1.0/"/>
    <dc:description>My favorite songs</dc:description>
    <mo:image rdf:resource="http://example.com/img/mypicture"/>
    <mo:track>
      <mo:Track rdf:about="magnet:?xt=urn:sha1:YNCKHTQCWBTRNJIV4WNAE52SJUQCZO5C">
        <mo:available_as rdf:resource="http://example.com/my.mp3"/>
        <foaf:maker>Frank Sinatra</foaf:maker>
        <dc:title>My Way</dc:title>
        <mo:album>
          <mo:MusicalWork>
            <dc:title>Frank Sinatra's Greatest Hits</dc:title>
          </mo:MusicalWork>
        </mo:album>
        <dc:description>This is my theme song.</dc:description>
        <mo:image rdf:resource="http://franksinatra.com/img/myway"/>
        <rdfs:seeAlso rdf:resource="http://franksinatra.com/myway"/>
      </mo:Track>
    </mo:track>
  </mo:MusicalItem>
</rdf:RDF>

License

Creative Commons License
This work is licensed under a Creative Commons License.
#