Unified Person Object Deduplication Across Contact Sources

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Email applications often store and display duplicate contact information for the same person due to multiple records being entered and sourced from various platforms like global address lists, email contacts, and third-party social networking applications.

Innovation Solution

A method is implemented on an electronic computing device to create a data structure representing a person, using an entry identifier to aggregate contact information from multiple sources, including global address lists, email contacts, and third-party sources, and store it in a person object with linked contact objects, ensuring efficient access and display of unified contact information.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If contact information is stored from multiple sources (global address list, email contacts, third-party applications), then the quantity and completeness of contact information increases, but duplicate contact information is displayed

Engineering Contradiction:
Improvecontact informationVSAvoidduplicate information
Core Design Contradiction:
Quantity of substanceVSLoss of information

Solution Approach 1:

The patent merges contact information from multiple sources (global address list, email contacts, third-party applications) into a unified person object data structure. The system aggregates contact records by matching entry identifiers across different sources and consolidates them into a single person object, eliminating duplicates while preserving all unique contact information.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent introduces a person object as an intermediary data structure that sits between multiple contact sources and the user interface. This person object serves as a mediator that receives, processes, and unifies contact information from various sources, resolving duplicates before presentation to the user.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Quantity of substance

If multiple contact records are stored for the same person, then contact information completeness improves, but data structure complexity increases

Engineering Contradiction:
Improvecontact recordsVSAvoiddata structure
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent segments contact information into distinct contact objects, each representing a specific contact record from a particular source. These contact objects are then linked to a parent person object through entry identifier matching, creating a hierarchical structure that organizes multiple records while maintaining clear relationships and reducing overall complexity.

Inventive Principle:
Principle #1Segmentation

3Measurement precision

If contact information is aggregated from multiple sources in real-time, then information accuracy improves, but processing time increases

Engineering Contradiction:
Improveinformation accuracyVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent performs preliminary action by pre-processing and normalizing contact information as it is imported from various sources. The system pre-creates person objects and establishes entry identifier mappings in advance, so that when contact information needs to be displayed, the aggregation and deduplication work has already been completed or is readily available.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8799487B2Build a person object from multiple contacts
Publication Date: 2014.08.05 MICROSOFT TECHNOLOGY LICENSING LLC
  • US8799487B2 patent drawing
  • US8799487B2 patent drawing
  • US8799487B2 patent drawing

AI summary

A data structure that represents a person is created. The data structure comprises a person object. The person object comprises one or more contact objects. When it is determined that the person is a global address list contact, first contact information for the person is obtained from a global address list store and stored in a first contact object. When it is determined that the person is an email contact, second contact information is obtained from a contact store and stored in a first memory cache. When it is determined that the second contact information includes a global address identifier, the global address identifier is stored in the second contact object. A person identifier is created for the person that identifies the person. The person identifier is stored in the first contact object and in the second contact object.