As you can know there are aggregated contacts (one 1) and each can have multiple raw contacts linked together to that contact (many N)
So there is a 1 contact -> N raw contacts relationship between them.
When you need to store a custom info for your contact, you have to store it for one of the raw contacts. The question is, how do you select which raw contact to use? The raw contacts can belong to different accounts.