History:Fundamental Mismatch Of MusicBrainz Entities And Reality
There's some very odd things being discussed with regards to AdvancedRelationships, but I don't think anyone has been explicit about some of the root causes of this oddness.
At a casual glance you may think that MusicBrainz deals with Artists, Songs and Albums and the relationships between them. But it doesn't. MusicBrainz holds information about Performance names, CDs and Tracks which are substantially different things from what you may think they are e.g.
- The Beatles released the double album called "The Beatles" aka "The White Album". Musicbrainz has no entry for this album (or any other double or triple album), instead it has an entry for each of the compact discs that make up this album. You don't really notice for the 90+ percent of albums that have only one CD but for double (or triple) albums this means that all release data is entered twice, and that any AR that wants to point to this album, must point to the first CD instead (at least I *think* that's the rule).
- Similarly, the Beatles song "Something" does not exist in the database either. There are several CD tracks of this song, and many more CD tracks of cover versions of this song. But there is no way to say that one song is a cover of another song. Instead you can only say that this CD track is a cover of this CD track. If you are lucky, you'll be able to link all the many cover version tracks to the earliest released track of the song but even then it's going to look a little bit silly
- Finally the ArtistName is actually the name used for a particular performance (the PerformanceName). This means that if an artist performs under different names her catalog is dispersed over multiple 'artists'
These issues make some things difficult ("song A samples song B" isn't really going to work very well if you don't have 'songs' as such) but are certainly not the end of the world. It's better to understand that somethings are difficult to represent in MusicBrainz though.
One suggestion that springs out of this analysis is to LinkCoversToArtistsNotTracks.
Another one is to add these entities to the database. Tarragon already proposed to add "releases" (what you call album) in his ReleaseGroups proposal. Songs or Works could be added as well. This calls for AdvancedEntities to be solved properly. --DonRedman