Continued Examination Under 37 CFR 1.114
A request for continued examination under 37 CFR 1.114, including the fee set forth in 37 CFR 1.17(e), was filed in this application after final rejection. Since this application is eligible for continued examination under 37 CFR 1.114, and the fee set forth in 37 CFR 1.17(e) has been timely paid, the finality of the previous Office action has been withdrawn pursuant to 37 CFR 1.114. Applicant's submission filed on 10/15/2025 has been entered.
Detailed Action
Applicant amended claims 1-19 and presented claims 1-20 for reconsideration on 10/15/2025.
Claim Rejections - 35 USC § 102
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of 35 U.S.C. 102 that forms the basis for all the rejections under this section made in this Office Action:
A person shall be entitled to a patent unless—
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale or otherwise available to the public before the effective filing date of the claimed invention.
Claims 1-4, 7-9, 11-14 and 17-18 are rejected under 35 U.S.C. 102(a)(2) as being anticipated by the prior art provided as IDS: MAHALINGAM et al. Pub. No.: US 2019/0236199 (Mahalingam)
Claim 1. Mahalingam teaches:
A method, comprising:
accessing, by one or more processors, a plurality of record objects of one or more customer relationship management (CRM) systems of record, each record object of the plurality of record objects comprising one or more object field-value pairs, the one or more CRM systems of record associated with one or more data source providers; (¶¶ 20-23, 28, 42, 46-47, activity data including “one or more event objects containing data of certain events” wherein an “event can be an email, a calendar event (e.g., a meeting), a chat group (e.g., instant messaging, webchat), etc.” is parsed for extracting field-value pairs such as “the names or IDs, and/or email addresses of the participant”; ¶¶ 19, 21, system of records are associated with multiple data source providers; ¶¶ 46-47, “One of the goals is to update the contact information of a database entry of a CRM system based on the email or calendar activities automatically and periodically without user intervention…the process can update a large amount of CRM records based on a large amount of activities automatically with minimum errors”)
identifying, by the one or more processors, from a record object of the plurality of record objects corresponding to a first group entity, an account relationship data structure comprising (i) a first entity identifier corresponding to the first group entity, (ii) at least one second entity identifier corresponding to a respective second group entity, and (iii) a relationship type value specifying a relationship between the first group entity and the respective second group entity, wherein the account relationship data structure is generated or maintained based on data from the one or more CRM systems of record, wherein the first group entity is a first company, wherein the respective second group entity is a respective second company; (¶¶ 22, 30-31, 36, 44, system identifies domain IDs corresponding to a first company and a second company participating in a meeting from an event such as “an email, a calendar event (e.g., a meeting), a chat group (e.g., instant messaging, webchat), etc.” because an identified domain ID “is associated with a specific corporate or enterprise client and each client may have one or more entities (e.g., corporate divisions or accounts) as shown in FIG. 3… a domain name is typically associated with an entity”; the type of relationship between participants/companies may be reflected by the type of the assigned ID extracted from an event. “A participant ID can be an email address, a chat ID, and/or a mobile phone number of a participant. For each of the participant IDs, activity manager 120 determines or extracts a domain ID identifying a domain associated with the corresponding participant…if a participant ID includes an email address such as john_smith@abc_corporation.com, the domain ID associated with the participant ID will include "abc_corporation" or "abc_corporation.com." … a domain ID can be obtained by performing a lookup operation in a data structure or database containing the domain IDs. For example, a domain ID can be obtained by communicate with a domain name registry such as domain name registry server 107…an email address can be utilized as a part of a domain ID…a domain ID can also be other forms or types of information such as telephone numbers, etc.”)
identifying, by the one or more processors, a first group node profile corresponding to the first group entity, the first group node profile including one or more node field-value pairs corresponding to the one or more object field-value pairs of the record object corresponding to the first group entity; (¶¶ 22, 30-31, 36, 44, a group node profile for a company is a node comprising participant IDs such as “abc_corporation" or "abc_corporation.com." which identifies all participants related to a particular company)
identifying, by the one or more processors, for the respective second group entity, a corresponding second group node profile including node field-value pairs generated using object field-value pairs of second record objects of a second group entity maintained by the one or more CRM systems of record; (¶¶ 22, 30-31, 36, 44, a group node profile for a company is a node comprising participant IDs such as “abc_corporation" or "abc_corporation.com." which identifies all participants related to a particular company)
detecting, by the one or more processors, a change in the relationship type value of that account relationship data structure, the change indicating that the relationship between the first group entity and the respective second group entity has been updated from a first relationship type to a second relationship type; and (¶¶ 24, 34, 43, an attribute of an identified entity based on a domain ID is updated to reflect identified change: “Based on the domain ID, task manager 110 identifies a list of one or more entity objects based on the domain ID… An entity object may be associated with an account or a division of a corporate or enterprise client…At least one attribute of at least one of the entity objects is modified by the task manager 110 based on the participant ID and the domain ID, which generates a modified entity object. For example, contact information of a participant of the event may be updated for the entity object”, “if there is an entity object that is associated with a domain ID of a participant, at least one attribute of the entity object is modified or updated…, a user object such as user object 303A of entity object 302A matching at least a portion of the participant ID may be updated…a new email address or phone number of an existing user of an existing user object may be added”)
updating, by the one or more processors, the first group node profile based on detecting the change in the relationship type value of the account relationship data structure. (¶¶ 24, 34, 43, an attribute of an identified entity based on a domain ID is updated to reflect identified change: “Based on the domain ID, task manager 110 identifies a list of one or more entity objects based on the domain ID… An entity object may be associated with an account or a division of a corporate or enterprise client…At least one attribute of at least one of the entity objects is modified by the task manager 110 based on the participant ID and the domain ID, which generates a modified entity object. For example, contact information of a participant of the event may be updated for the entity object”, “if there is an entity object that is associated with a domain ID of a participant, at least one attribute of the entity object is modified or updated…, a user object such as user object 303A of entity object 302A matching at least a portion of the participant ID may be updated…a new email address or phone number of an existing user of an existing user object may be added”)
Claim 11. Mahalingam teaches:
A system, comprising:
one or more processors configured to execute machine-readable instructions to:
access a plurality of record objects of one or more customer relationship management (CRM) systems of record, each record object of the plurality of record objects comprising one or more object field-value pairs, the one or more CRM systems of record associated with one or more data source providers; (¶¶ 20-23, 28, 42, 46-47, activity data including “one or more event objects containing data of certain events” wherein an “event can be an email, a calendar event (e.g., a meeting), a chat group (e.g., instant messaging, webchat), etc.” is parsed for extracting field-value pairs such as “the names or IDs, and/or email addresses of the participant”; ¶¶ 19, 21, system of records are associated with multiple data source providers; ¶¶ 46-47, “One of the goals is to update the contact information of a database entry of a CRM system based on the email or calendar activities automatically and periodically without user intervention…the process can update a large amount of CRM records based on a large amount of activities automatically with minimum errors”)
identify, from a record object of the plurality of record objects corresponding to a first group entity, an account relationship data structure comprising (i) a first entity identifier corresponding to the first group entity, (ii) at least one second entity identifier corresponding to a respective second group entity, and (iii) a relationship type value specifying a relationship between the first group entity and the respective second group entity, wherein the account relationship data structure is generated or maintained based on data from the one or more CRM systems of record, wherein the first group entity is a first company, wherein the respective second group entity is a respective second company; (¶¶ 22, 30-31, 36, 44, system identifies domain IDs corresponding to a first company and a second company participating in a meeting from an event such as “an email, a calendar event (e.g., a meeting), a chat group (e.g., instant messaging, webchat), etc.” because an identified domain ID “is associated with a specific corporate or enterprise client and each client may have one or more entities (e.g., corporate divisions or accounts) as shown in FIG. 3… a domain name is typically associated with an entity”; the type of relationship between participants/companies may be reflected by the type of the assigned ID extracted from an event. “A participant ID can be an email address, a chat ID, and/or a mobile phone number of a participant. For each of the participant IDs, activity manager 120 determines or extracts a domain ID identifying a domain associated with the corresponding participant…if a participant ID includes an email address such as john_smith@abc_corporation.com, the domain ID associated with the participant ID will include "abc_corporation" or "abc_corporation.com." … a domain ID can be obtained by performing a lookup operation in a data structure or database containing the domain IDs. For example, a domain ID can be obtained by communicate with a domain name registry such as domain name registry server 107…an email address can be utilized as a part of a domain ID…a domain ID can also be other forms or types of information such as telephone numbers, etc.”)
identify a first group node profile corresponding to the first group entity, the first group node profile including one or more node field-value pairs corresponding to the one or more object field-value pairs of the record object corresponding to the first group entity; (¶¶ 22, 30-31, 36, 44, a group node profile for a company is a node comprising participant IDs such as “abc_corporation" or "abc_corporation.com." which identifies all participants related to a particular company)
identify, for the respective second group entity, a corresponding second group node profile including node field-value pairs generated using object field-value pairs of second record objects of a second group entity maintained by the one or more CRM systems of record; (¶¶ 22, 30-31, 36, 44, a group node profile for a company is a node comprising participant IDs such as “abc_corporation" or "abc_corporation.com." which identifies all participants related to a particular company)
detect, a change in the relationship type value of the account relationship data structure, the change indicating that the relationship between the first group entity and the respective second group entity has been updated from a first relationship type to a second relationship type; and (¶¶ 24, 34, 43, an attribute of an identified entity based on a domain ID is updated to reflect identified change: “Based on the domain ID, task manager 110 identifies a list of one or more entity objects based on the domain ID… An entity object may be associated with an account or a division of a corporate or enterprise client…At least one attribute of at least one of the entity objects is modified by the task manager 110 based on the participant ID and the domain ID, which generates a modified entity object. For example, contact information of a participant of the event may be updated for the entity object”, “if there is an entity object that is associated with a domain ID of a participant, at least one attribute of the entity object is modified or updated…, a user object such as user object 303A of entity object 302A matching at least a portion of the participant ID may be updated…a new email address or phone number of an existing user of an existing user object may be added”)
update, the first group node profile based on detecting the change in the relationship type value of the account relationship data structure. (¶¶ 24, 34, 43, an attribute of an identified entity based on a domain ID is updated to reflect identified change: “Based on the domain ID, task manager 110 identifies a list of one or more entity objects based on the domain ID… An entity object may be associated with an account or a division of a corporate or enterprise client…At least one attribute of at least one of the entity objects is modified by the task manager 110 based on the participant ID and the domain ID, which generates a modified entity object. For example, contact information of a participant of the event may be updated for the entity object”, “if there is an entity object that is associated with a domain ID of a participant, at least one attribute of the entity object is modified or updated…, a user object such as user object 303A of entity object 302A matching at least a portion of the participant ID may be updated…a new email address or phone number of an existing user of an existing user object may be added”)
Claim 2. The method of claim 1, wherein detecting the change in the relationship type value further comprises detecting the change in the relationship type value from a communication pattern among one or more electronic activities identifying participants corresponding to the first group entity or the second group entity. (Mahalingam , ¶¶ 28, 36, 38, wherein “the activity data 221 includes one or more event objects containing data of certain events. An event can be an email, a calendar event (e.g., a meeting), a chat group (e.g., instant messaging, wechat), etc.” and “a particular participant ID of a participant initiated the event” indicates that a communication pattern is used for updating relationship type)
Claim 12 is rejected under the same rationale as claim 2.
Claim 3. The method of claim 1, wherein detecting the change in the relationship type value further comprises detecting the change in the relationship type value including a modification of an address in electronic activities identifying participants corresponding to the first group entity or the second group entity. (Mahalingam, ¶¶ 36, 38 43, based on participant ID and the domain ID, a modified address is detected in ¶ 43, and a relationship type corresponding to an address is updated as in ¶¶ 24, 34, 43)
Claim 13 is rejected under the same rationale as claim 3.
Claim 4. The method of claim 1, wherein detecting the change in the relationship type value further comprises detecting a change in a domain name corresponding to the first group entity or the respective second group entity. (Mahalingam, ¶ 34, wherein a change in a domain name is detected by detecting “a new email address or phone number of an existing user of an existing user object”)
Claim 14 is rejected under the same rationale as claim 4.
Claim 7. The method of claim 1, wherein detecting the change in the relationship type value further comprises detecting a change in the account relationship data structure specifying the relationship among the group entities from the record object of the plurality of record objects corresponding to the first group entity. (Mahalingam, ¶¶ 34, 36, 38, 43-44, a change in relationship type is determined withing a group: “if a particular participant ID matches an owner ID or a user member ID of a member of a user group (e.g., a team member) of a particular task of the matching entity object, at least one attribute of the corresponding user object may be updated”)
Claim 17 is rejected under the same rationale as claim 7.
Claim 8. The method of claim 1, wherein detecting the change in the relationship type value further comprises detecting a change in a second account relationship data structure of a second record object of the plurality of the plurality of record objects corresponding to the second group entity. (Mahalingam, ¶¶ 36, 38, 40, 47, participant IDs and owner ID of an entity including a second entity is matched for identifying a relationships and records are updated/modified based on the identified relationship using participant IDs)
Claim 18 is rejected under the same rationale as claim 8.
Claim 9. The method of claim 1, further comprising providing, by the one or more processors, in response to updating, the relationship type value to populate a record object of the plurality of record objects corresponding to the respective second group entity. (Mahalingam, ¶¶ 36, 38, 40, 47, participant IDs and owner ID of an entity including a second entity is matched for identifying a relationships and records are updated/modified based on the identified relationship using participant IDs)
Claim Rejections - 35 USC § 103
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102 of this title, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 5 and 15 are rejected under 35 U.S.C. 103(a) as being unpatentable over Mahalingam as applied to claims 1 and 11 above, in view of Gao et al., Patent No.: US 11,232,111 (Gao).
Claim 5. The method of claim 1, wherein detecting the change in the relationship type further comprises detecting a redirection of a website corresponding to the first group entity or the second group entity.
Mahalingam taught all features as disclosed in this claim as shown in claim 1 except detecting the change including a redirection of a website corresponding to the first group entity or the second group entity.
Gao teaches detecting the change including a redirection of a website corresponding to the first group entity or the second group entity by detecting a redirection of a website corresponding to a company using a company matching system and generating a signature for the company which includes the “resolved website or domain if there is a redirect” and based on the detected redirection, information of the company in a CRM database is updated. Gao, col. 9, ll. 49-62.
It would have been obvious before the effective filling date of the claimed invention to a person having ordinary skill in the art to combine the applied references for disclosing detecting the change including a redirection of a website corresponding to the first group entity or the second group entity because doing so would further increase usability of Mahalingam by detecting a redirection of a website corresponding to a company and updating the information related to the company by its resolved website or domain.
Claim 15 is rejected under the same rationale as claim 5.
Claims 6, 16, 19 and 20 are rejected under 35 U.S.C. 103(a) as being unpatentable over Mahalingam in view of Davar et al., Pub. No.: US 2019/0295106 (Davar).
Claim 6. Mahalingam teaches:
The method of claim 1, wherein detecting the change in the relationship type further comprises detecting a change by applying an algorithm on the one or more electronic activities to extract a feature indicating the change. (Mahalingam, ¶¶ 28, 36-37, wherein electronic activity data is parsed and analyzed for detecting a feature such as whether a participant initiated an event for determining a relationship type or selecting “certain predefined fields for matching between an entity object and a user object of a participant or certain field values of certain fields between an entity object and a user object”)
Mahalingam did not explicitly disclose but Davar discloses applying a natural language processing algorithm for extracting feature. (Davar, ¶ 108, wherein natural language processing is used for determining the type of a relationship)
It would have been obvious before the effective filling date of the claimed invention to a person having ordinary skill in the art to combine the applied references for disclosing applying a natural language processing algorithm for extracting feature because a natural language processing algorithm is an available tool to be utilized as needed for achieving the same predictable result as disclosed by Mahalingam ¶¶ 28, 36-37.
Claim 16 is rejected under the same rationale as claim 6.
Claim 19. Mahalingam teaches:
A method, comprising:
accessing, by one or more processors, a plurality of systems of record, each system of record maintaining a plurality of object data structures(¶¶ 20-23, 42, objects in system of records such as “activity database system” and “task database system” are accessed for synchronization; the records comprise field-value pairs such as “participant identifiers (IDs)”; ¶¶ 19, 21, system of records are associated with multiple data source providers)
identifying, by the one or more processors, from a first object data structure of a first system of record of the plurality of systems of record, a first value identifying a first entity and a second value identifying a second entity and an association between the first entity and the second entity; (¶¶ 22, 30, 36, 44-45, using participant IDs, multiple entities are identified under a domain such as “abc_corporation" or "abc_corporation.com." as well as a relationship such as “owner of a task, a team member of a team managing the task, or a manager of owners or teams of tasks” identified by “an owner ID of an owner of the entity object”; participants in a communication includes at least a first entity and at least a second entity)
generating, by the one or more processors, a value data structure including the first entity, the second entity, the association between the first entity and the second entity; (¶¶ 22, 30, 36, 44, extracting multiple entities and relationships from participant IDs generates a value data structure including entities IDs and their relationships)
determining, by the one or more processors, that a second object data structure of a second system of record of the plurality of systems of record includes the first value identifying the first entity and the second value identifying the second entity and the association between the first entity and the second entity; (¶¶ 40, 46-47, a second data structure of a second system is a record in a second database such as a CRM database synchronized with the identified entities and relationships from a first system as described above)
updating, by the one or more processors, responsive to the determining, the generated value data structure with data identifying the second object data structure; and (¶¶ 40, 46-47, a second data structure of a second system is a record in a second database such as a CRM database synchronized with the identified entities and relationships from a first system as described above)
Mahalingam did not specifically teach but Davar teaches a confidence score of the association based on a first trust score of the first object data structure, the first trust score based on an accuracy of information stored in the first system of record; updating, by the one or more processors, the confidence score of the association based on a second trust score of the second object data structure, the second trust score based on an accuracy of information stored in the second system of record. (Davar, wherein a database includes values representing relationship between a first entity and second entity and wherein the value is updated based on the evidence/accuracy of information; ¶ 41, “The database preferably comprises millions of organizations and relationships”; ¶¶ 105-108, 115, “The result of the verification process is an update of a confidence score of relationship record. A new unverified relationship may be initialized with a zero (Boolean FALSE) or minimal confidence score. If the verification agent confirms the relationship, it sets the confidence score to one/ TRUE/maximum”)
Both Mahalingam ¶ 21 and Davar, ¶ 32 disclose a database for storing organization’s data and their associated relationships. Davar, further discloses assigning a confidence score to a relationship and increase the score based on the records used as evidence. It would have been obvious before the effective filling date of the claimed invention to a person having ordinary skill in the art to combine the applied references for disclosing a confidence score of the association based on a first trust score of the first object data structure, the first trust score based on an accuracy of information stored in the first system of record; updating, by the one or more processors, the confidence score of the association based on a second trust score of the second object data structure, the second trust score based on an accuracy of information stored in the second system of record because doing so would provide for an alternative way in Mahalingam for determining an associations between an entity with other entities and further assigning a low initial confidence score to an identified entity and association and modifying the score by determining, for example, “whether a particular participant ID of a participant initiated the event and the participant ID matches an owner ID of an entity object” in Mahalingam, ¶ 36.
Claim 20. The method of claim 19, wherein generating, by the one or more processors, the value data structure comprises generating an entry that identifies the first system of record, the first trust score based on the accuracy of information stored in the first system of record, and a timestamp indicating a time when the association was added to the first system of record. (Mahalingam, ¶ 47, wherein, synchronizing CRM records automatically and periodically indicates a timestamp is used for updating data; and Davar, ¶ 115, wherein a confidence score shows how a verified data is accurate)
Response to Amendment and Arguments
In view of the Terminal Disclaimer dated 10/15/2025, double patenting rejection is withdrawn.
Applicant “submits that the foregoing claim amendments overcome the rejections of the claims, thereby rendering the rejections moot”. However, the claim amendments are disclosed by the applied references as shown above.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to MOHSEN ALMANI whose telephone number is (571)270-7722. The examiner can normally be reached on M-F, 9:00 to 5:00.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Ann J. Lo can be reached on 571-272-9767. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of an application may be obtained from the Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from either Private PAIR or Public PAIR. Status information for unpublished applications is available through Private PAIR only.
For more information about the PAIR system, see http://pair-direct.uspto.gov. Should you have questions on access to the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative or access to the automated information system, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/MOHSEN ALMANI/Primary Examiner, Art Unit 2159