Patent ID: 7925620

Claim:
A method for managing contact data for a plurality of users, the method to be implemented on a data processing system, the method comprising: maintaining a database of contact information, said database comprising a plurality of contact entities, said plurality of contact entities comprising a plurality of public contact entities and a plurality of private contact entities, said plurality of public contact entities comprising a first public contact entity and a second public contact entity, said first public contact entity being distinct from said second public contact entity, said plurality of private contact entities comprising a first private contact entity, wherein said first public contact entity is associated with a first unique identifier on the data processing system, wherein said second public contact entity is associated with a second unique identifier on the data processing system, said first unique identifier being different from said second unique identifier, and wherein said database further comprising a plurality of contact lists, each public contact entity from said plurality of public contact entities being included in at least one contact list from said plurality of contact lists, each private contact entity from said plurality of private contact entities being included in one and only one contact list from said plurality of contact lists; maintaining a list of users, said list including a first user and a second user, said first user being distinct from said second user, said first user being associated with a contact list from said plurality of contact lists, wherein said contact list includes said first public contact entity and said first private contact entity; receiving, from said first user, a request to add, to said contact list, contact data of said second user; searching, in said database, for at least one contact entity that comprises said contact data; and updating, based on said searching, said contact list, wherein said updating comprises, if said at least one contact entity is found in said database and if said at least one contact entity comprises said second public contact entity, adding said second public contact entity to said contact list, and wherein said updating comprises, if said at least one contact entity is not found in said database, creating a second private contact entity in said database and adding said second private contact entity to said contact list, wherein said second private contact entity comprises said contact data.