Thanks for the conversation and suggestions, but I'm not sure why this is so complicated.
For me it's boils down to just parsing for ';' in albumartist tag and adding to multiple artists instead of recognizing it as a unique string. This is just creating multiple pointers to the same object/file and allowing you to find it by different paths.
It's up to the user to get the tag itself correct and the tag content determines where the albums show up in the listing.
For Andre's genre example : 40 songs :5 pop, 10 rock, 25 'rock;pop', I expect 35 in Rock and 30 in pop exactly like you say. If I want to play Rock I do expect to get 35 files, if I want to play Pop I do expect to get 30 files, and the player should be smart enough that if you select all genre's to only add the file once (by default) (multiple pointers resolve to the same file so don't re-add), so I get 40 songs.
(I find it useful to think about this with Venn diagrams, each song can only be a single element in the venn diagram, but you can draw different collections around objects to group them)
Artist and AlbumArtist are two unique tags and as far as I know completely separate relationship (e.g. I can put Artist:Kate Bush, AlbumArtist:Rage against the Machine if I so wish).
So for Absintheque's example :
Artist: Eminem, Album Artist: Eminem; Dr. Dre, Album: Encore
This should be broken down to simple single elements and handled with pointer to the same file under :
Artist: Eminem, Album Artist: Eminem, Album: Encore AND
Artist: Eminem, Album Artist: Dr. Dre, Album: Encore
and likewise :
Artist: Eminem; Dr. Dre, Album Artist: Eminem, Album: Encore
should be broken down as :
Artist: Dr. Dre, Album Artist: Eminem, Album: Encore AND
Artist: Eminem, Album Artist: Eminem, Album: Encore
Having stuff show up in multiple places is fine by me. I control the tag content, but I need Poweramp to do the tag breakdown and simplification to multiple pointers.
This is what other programs do to handle this scenario.
Thx! glad this is getting some chatter at a minimum!
Again I love this product.