Ideally for MusicBrainz, a more flexible "Manifestation" may be required, that lets, e.g. multi-disc sets exist as heirachical manifestations. Certainly, in the spec, a 2 disc set is 1 manifestation. Musicbrainz needs to distinguish them as there are 2 CDIDs. I'd be inclined to make manifestations able to be parents of each other, so a 2 disc set shows up as 3 manifestations, 1 for each disc, and one for the whole. This could get hard to UI.
- In today's MB database group 2 = artists, group 3 = urls, and group 1 = tracks and albums. We have 4 tables where we could theoretically do with 3. Person-is-member-of-group is just an AdvancedRelationship, and so could track-is-part-of-album be. If track and album were merged to "product", then track, album and boxed set could be types within that table, just like person and group are types within the artist table. All it takes are a few more rows in l_product_product. Aha, and maybe a position number too, so tracks stay in sequence. We could even have a non-boxed set, such as the release "absolute music 14" being part of the "absolute music" series. In the artist table, we could use a new type for record companies. Other product types could be melody (composed by artist) and lyrics (written by artist) that are both part-of song, which is part of a track (performed by artist). For classical music, maybe a product type arrangement (arranged by artist). When Weird Al sings "I'm fat", that's the same melody as Michael Jackson's "I'm bad" but with different lyrics, so a new song, recorded by Al. The important thing is that we don't get exploded into dozens of new tables and a need for AdvancedRelationships like l_song_melody and l_lyrics_artist. All we would need is l_product_artist and l_product_product. --LA2