Cadaver747: A nice solution but it might have complications in future. My theory is that GOG realized that with such approach they generate more sales ;)
For instance how is that I don't own Shadow Warrior 2 Soundtrack when I bought Shadow Warrior 2 Deluxe and even Shadow Warrior 2 DLC upgrage. But GOG is willing to sell me Soundtrack for a 3rd time.
Hmm, well if it's a more binary approach, you could raise each main entry to 256, then you have 7 entries for future addons in any combination in your ID which includes what is also attached to it. That would work best for base game plus ost plus extras, etc.
Unfortunately there's games with 100 addons (
like certain train simulators) where that won't work. Likely internally it's 32 or 64bit numbers for game id's, which thinking about it, may also incorporate the company ID too.
The next thing up would be to make special pseudo item rules which scans periodically (
say, once a week) and if a person has a combination of items that equals a product, then they are just given the combined product equivalent. I say once a week because sometimes adding removing or doing games items can have an effect of modifying major things, like when Fallout under Interplay went to Bethesda instead.
Oh reminds me... GoG should STILL have game pages up for games they aren't selling. As such it shouldn't be searchable and you couldn't buy it, but still find it to see what the reviews and last update to it was. So instead of gog.com/games/somegame, becomes gog.com/unlisted/somegame, and if it was referenced in the forum to games/somegame and the game doesn't exist it redirects it to unlisted instead.