I have a system that, for simplicity's sake, contains customer data. The object (table) contains three separate business keys with different semantic meanings.
1. A cross-platform unique identifier
2. a cross-enterprise unique identifier
3. a business unit unique identifier for a particular contact with the customer.
In the perfect world, this would be a hierarchy, but in practice, it is not. For example, I could have two cross-platform unique IDs, one cross-enterprise unique ID, and 50 business unit unique IDs. Someone else could have any combination of the three IDs. Finally, depending on the business unit, each of the three fields may be the business key.
Has anyone encountered this and how did you deal with it?