LinkedBrainz/Software Approach

From MusicBrainz Wiki
< LinkedBrainz
Revision as of 22:37, 22 August 2010 by Kurtjx (talk | contribs)
Jump to navigationJump to search

There are several approaches to implementing LinkedBrainz in software. Broadly, these fall into two categories - modifying the MusicBrainz server code directly or using/modifying off-the-shelf software that translates the Postgres DB into RDF. The approach now favored is to do a little bit of both. First implement RDFa in the MusicBrainz code base and then find some RDB to RDF solution that is not too hard on the DB server.

Modify MusicBrainz

We would modify the views (and perhaps controllers) in the codebase to serve RDF or RDFa. This would allow/force us to adopt the same pagination scheme used for the HTML and ensure no heavy load on the DB server.

kurtjx's thoughts

RDB to RDF (aka RDF Views)

RDF Views allow the translation of an RDBMS into RDF. The main advantage is that this approach could side-step all pagination. However, this is also the major disadvantage as we must find some alternative method to limit the load on the DB server.

See the W3C WG on RDB2RDF, their wiki, and this nice blog post about existing RDB2RDF tech.

Virtuoso

Virtuoso Open Source was used in the Zitgist mappings. See this mapping file.

D2RQ

D2RQ and the D2R server were used in the DBTune mappings. See this mapping file.