On Wed, 2006-10-25 at 11:20 +0100, Jamie McCracken wrote: > James "Doc" Livingston wrote: > > What would be really cool is support for field groups, but that would > > probably require a fairly large change. So you could do things like > > correctly storing the release dates when a track is on multiple albums: > > > > Title=Some Track > > Artist=Artist > > (Album=X, ReleaseDate=2000/1/1) > > (Album=Y, ReleaseDate=2001/2/2) > > that would be tricky unless the album was a separate object
I spent a good long while trying to make a complete metadata ontology for musical recordings. Some of these things just get really tricky. The release date is clearly a property of the album itself, so the proposal above is basically trying to store album properties without actually talking about the album. A related but harder issue is when you have some property that really belongs to the track-album pair, and not to either particular object. (Think of child properties in GTK+: "expand" belongs neither to a GtkBox or to whichever GtkWidget is inside it, but rather to the pair). Track numbers are the easiest example of this. A track might be number 2 on Album 1 and number 7 on Album 2. Clearly, the track itself can't just have a track number. And the track number obviously doesn't belong to either album. One clever mathy way of addressing this is to recognize that a relation R on S and T is just subset R ⊂ T x S. Then a combo property can be a mapping from T x S into some other set. The more practical way of solving this is to say that a track is on only one album, and then create relations to say that two tracks are basically the same. -- Shaun _______________________________________________ desktop-devel-list mailing list [email protected] http://mail.gnome.org/mailman/listinfo/desktop-devel-list
