[pdb-discuss] Re: Somewhere to start

Rufus Pollock rufus.pollock at okfn.org
Mon Jul 16 14:56:32 UTC 2007


Yves Raimond wrote:
> Hello!

Hi Yves, good to speak with you last week and thanks for posting.

[snip]

> Therefore allowing agents using this data to jump smoothly from one
> dataset to another.
> 
> We already published and interlinked, among others, Jamendo,
> Magnatune, Musicbrainz, Wikipedia/DbPedia, US Census data and DBLP.

Sounds great.

> There is a really active mailing list for this project at [4].
> 
> [snip]
> 
>> I think designing a domain model that will really work for everything is
>> *hard* so I think we should try and keep things simple and then refactor
>> (suggestions as to what would be simplest are very welcome).
> 
> For this, I suggest using a model based on the music ontology [1],
> which seems to match your needs (and if it doesn't, we'll work on it:)
> ). It describes the workflow leading to a particular record, through a

Sounds good and from what I understood during our meeting the plan is 
for musicbrainz to move towards this in future.

> chain of events (composition, arrangement, performance, recording,
> etc.). Check [5] for a small depiction of it, and [6] for a short
> paper describing it into more details. It has been used for expressing
> a wide range of music datasets, from the Royal Scottish Academy for
> Music and Drama HotBed datbase to Musicbrainz or the John Peel
> sessions.

This looks really excellent. I've just ported our existing domain model 
to sqlalchemy/elixir and you can see the results at:

http://p.knowledgeforge.net/pdw/svn/trunk/src/pdw/www/models/recording.py

Unit tests showing usage at:

<http://p.knowledgeforge.net/pdw/svn/trunk/src/pdw/www/tests/models/test_recording.py>

This is already very similar to [5] (modulo minor differences in 
naming). The main difference that I can see is that [5] has a 
Performance, Recording and Record object (whereas we just have 
Recording). Could you expand a little on what the distinction between 
these are?

Also how would we apply the domain model the following use case (which 
is invented):

1950 78 release with 3 distinct pieces on it:

1. Peformance of an Aria from Gounod's Faust
2. Performance of a movement from Beethoven's 9th
3. A Piece of Vaughn Williams

We can assume these are all performed by the same orchestra but this 
need not be so ...

> Of course, I am happy to contribute some python code! Just let me know
> if you think this could be useful.

We'd welcome assistance and I very much think this could be useful. Our 
next task is to complete the domain model and then start pushing/pulling 
data from musicbrainz to a local db on which we can run the web app.

Regards,

Rufus

> 
> [1]http://musicontology.com/
> [2] http://linkeddata.org/
> [3] http://www.w3.org/DesignIssues/LinkedData.html
> [4] http://simile.mit.edu/mailman/listinfo/linking-open-data
> [5] http://musicontology.com/imgs/mo-workflow.jpg
> [6] http://moustaki.org/pubs/Raimond-ISMIR2007-Submitted.pdf




More information about the pd-discuss mailing list