The LinkedBrainz project is intended to help MusicBrainz publish its database as Linked Data. Linked Data is simply a method for publishing structured data on the web based on semantic web technologies. LinkedBrainz will provide
- a mapping of NGS and ARs to RDF
- integration with MusicBrainz server code to provide dereferenceable URIs
- a SPARQL endpoint for querying MusicBrainz data
Entity concepts in MusicBrainz will be mapped to concepts in the Music Ontology and other appropriate ontologies.
Old RDF Mappings
At least 4 RDF mappings of the MusicBrainz database exist
- the original RDF service used by MusicBrainz back in the day
- the Zitgist mappings
- the DBTune mappings
- the new Talis dataincubator mappings (work in progress)
None of these tackle NGS but should serve as a good starting point.
There are essentially two approaches to providing dereferenceable URIs of the form http://musicbrainz.org/<type>/<mbid>
RDFa is a syntax for embedding RDF into HTML documents. The RDF modeling of a particular MusicBrainz entity could be embedded along side the normal HTML. Web browsers and RDF consumers would use the exact same content.
- only small changes to the code base required
- most parsers read RDFa these days
- HTML page sizes would get bigger (not sure how much bigger) which might slow everything down
With the content negotiation approach, during each request, the HTTP Accept header is examined. If it contains something like "Accept:application/rdf+xml" an RDF/XML document is returned. Otherwise a normal HTML page is returned.
- the "classic" linked data approach
- most widely supported by RDF consumers
- no HTML bloating
- must modify code base and muck around with the request cycle a bit
kurtjx is employed on a consulting basis for 6 months+
Funding for LinkedBrainz comes from JISC.