DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
In response to the application filed on November 21, 2025, claims 1-20 are now pending for examination in the application.
Response to Arguments
This office action is in response to amendment filed 11/21/2025. In this action claim(s) 1, 5-8, 10-11, 15-18 and 20 is/are rejected under 35 U.S.C. 102(a)(1) as being anticipated by RAMAN et al. (US Pub. Mo. 20190340168) and Horns et al. (US Pub. No. 20200117388) in further view of Tsofi et al. (US Pub. No. 20110004702). The Tsofi et al. reference has been added to address the amendment of identifying a device-level conflict resolution policy configured by a customer associated with the user identifier for the data attribute.
Applicant’s arguments:
In regards to claim 1 on Page(s) 9, applicant argues “1. Improvement in Computer Functionality: Automated multi-device conflict detection The Specification explains that "profile-level conflicts. arise when distinct user profiles need to be merged," and commonly occur when "a user has used multiple devices or has not consistently identified themselves across sessions." These conflicts occur because user attribute values are asynchronously uploaded, overwritten, or merged incorrectly across distributed platforms. The improved system automatically detects conflicting attribute values across distributed devices and sessions, using processor-implemented monitoring of historical timestamps, and tracking user identifiers and device-originated data streams in real time. These processor-based operations reduce corrupted profile states, prevent repeated retries and erroneous merges, and eliminate costly data rollbacks. This constitutes a concrete improvement to computer functionality.
2. Improvement in Data Integrity and System Reliability: Policy identification and selection The improved system automatically retrieves and applies customer-configured, system- stored conflict-resolution policies. As described in the Specification, these policies include latest- win, preserving-first-occurrence merging-in-lists, business-logic-based policies, and preferring-true or preferring-false policies. Implementing these policies at the processor level allows the computer to maintain unified and consistent attribute values across distributed data stores, reducing divergence and improving reliability.
3. Improvement Through Deterministic, Priority-Based Policy Execution The Specification discusses that policies are prioritized, the system automatically selects which policy to apply based on priority, and values may be resolved into true, false, or conflict so that downstream systems can treat conflicts deterministically. This deterministic conflict-resolution approach significantly improves data quality, system stability, as well as API-based workflows that consume user-profile data. This represents a textbook example of improving computer functionality by implementing a specific data-consistency algorithm within a distributed computing environment, akin to the improvements recognized in Enfish⁶, McRO⁷, and Visual Memory⁸.
4. The Claimed Improvements Are Rooted in Computer Technology The claimed improvements are rooted in computer technology because they solve computer- centric issues where inconsistent, asynchronous, and distributed user-attribute updates originate from multiple devices and sessions. These issues do not simply arise in the human mind, as they emerge in networked computing environments where mobile clients, browser clients, server processes, and cloud-based storage nodes simultaneously update profile attributes. The automated conflict detection, policy retrieval, and deterministic resolution solutions improve data synchronization, server-side consistency, API reliability, and overall profile coherence across distributed systems. These processor-implemented improvements demonstrate that the claims integrate any alleged abstract idea into a practical application. These improvements are reflected at least in the following elements, "identifying a device- level conflict on a data attribute associated with a user identifier, the device-level conflict indicating that conflicting values were configured via a plurality of devices associated with the user identifier over a period of time; identifying a device-level conflict resolution policy configured by a customer associated with the user identifier for the data attribute; and generating a value of the data attribute, the generating of the value including applying the device-level conflict resolution policy to the device-level conflict.”
Examiner’s Reply:
The abstract idea recited in the claims is generally linking it to a computer environment, and does not integrate the abstract idea into a practical application. Resolving data conflicts does not improve the functioning of a computing system.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to non-patentable subject matter. The claims are directed to an abstract idea without significantly more.
Claim 1-20 is rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more. The judicial exception is not integrated into a practical application. The claims do not include additional elements that are sufficient to amount to significantly more than judicial exception. The eligibility analysis in support of these findings is provided below, on Claim Rejections - 35 USC 101 accordance with the "2019 Revised Patent Subject Matter Eligibility Guidance" (published on 1/7/2019 in Fed, Register, Vol. 84, No. 4 at pgs. 50-57, hereinafter referred to as the "2019 PEG").
Step 1. in accordance with Step 1 of the eligibility inquiry (as explained in MPEP 2106), it is first noted the device (claims 1-10), method (claims 11-19), medium (claim 20) are directed to one of the eligible categories of subject matter and therefore satisfies Step 1.
Step 2A. In accordance with Step 2A, prong one of the 2019 PEG, it is noted that the independent claims recite an abstract idea falling within the Mental Processes & Mathematical Concepts enumerated groupings of abstract ideas set forth in the 2019 PEG. Examiner is of the position that independent claims 1, 11, and 20 are directed towards the Mental Process Grouping of Abstract Ideas.
Independent claim 1, 11, 20 recites the following limitations directed towards a Mental Processes:
identifying a device-level conflict on a data attribute associated with a user identifier, the device-level conflict indicating that conflicting values were configured via a plurality of devices associated with the user identifier over a period of time (The limitation recites a mental process of evaluation and/or judgement capable of being performed by the human mind by identifying a conflict);
identifying a device-level conflict resolution policy configured by a customer associated with the user identifier for the data attribute (The limitation recites a mental process of evaluation and/or judgement capable of being performed by the human mind by identifying a policy); and
generating a value of the data attribute, the generating of the value including applying the device-level conflict resolution policy to the device-level conflict (The limitation recites a mental process of evaluation and/or judgement capable of being performed by the human mind by generating a value).
Step 2A. In accordance with Step 2A, prong two of the 2019 PEG, the judicial exception is not integrated into a practical application because of the recitation in claim(s) 1, 11, and 20:
one or more hardware processors (i.e., as a generic processor/component performing a generic computer function); and
at least one machine-storage medium for storing instructions that, when executed by the one or more hardware processors (i.e., as a generic processor/component performing a generic computer function), cause the one or more hardware processors to perform operations comprising.
Step 2B. Similar to the analysis under 2A Prong Two, the claim(s) does/do not include additional elements that are sufficient to amount to significantly more than the judicial exception. Because the additional elements of the independent claims amount to insignificant extra solution activity and/or mere instructions, the additional elements do not add significantly more to the judicial exception such that the independent claims as a whole would be patent eligible.
Therefore, independent claim(s) 1, 11, and 20 is rejected under 35 U.S.C. 101.
With respect to claim(s) 2 and 12:
Step 2A Prong One Analysis:
identifying a profile-level conflict on the data attribute associated with the user identifier, the profile-level conflict indicating that conflicting values of the data attribute resulting from merging of a plurality of profiles (The limitation recites a mental process of evaluation and/or judgement capable of being performed by the human mind by identifying a conflict);
identifying a profile-level conflict resolution policy configured for the data attribute (The limitation recites a mental process of evaluation and/or judgement capable of being performed by the human mind by identifying a policy); and
generating the value of the data attribute, the generating of the value including applying the device-level conflict resolution policy before applying the profile-level conflict resolution policy (The limitation recites a mental process of evaluation and/or judgement capable of being performed by the human mind by generating a value).
Step 2A Prong Two Analysis:
This judicial exception is not integrated into a practical application because there are no
additional elements to provide practical application.
Step 2B Analysis:
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. The claim is not patent eligible.
With respect to claim(s) 3 and 13:
wherein the profile-level conflict resolution policy comprises one or more of a merging-in-lists policy, a latest-win policy, a preserving-first-occurrence policy, a preferring-true policy, a preferring-false policy, a leave-in-conflict policy, and a preferring-identified-user-over-anonymous-user policy (The limitation recites a mental process of evaluation and/or judgement capable of being performed by the human mind by identifying a policy).
Step 2A Prong Two Analysis:
This judicial exception is not integrated into a practical application because there are no
additional elements to provide practical application.
Step 2B Analysis:
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. The claim is not patent eligible.
With respect to claim(s) 4 and 14:
wherein the merging-in-lists policy comprises a policy that resolves conflicting values of the data attribute by merging conflicting values of the data attribute to form a list of attribute values, wherein the preserving-first-occurrence policy comprises a policy that resolves conflicting values of the data attribute based on a first-provided data value made available by the user identifier, wherein the preferring-true policy comprises a policy that resolves conflicting values of the data attribute by assigning a data value of true to the data attribute, wherein the leave-in-conflict policy comprises a policy that resolves conflicting values of the data attribute by allowing conflicting values of the data attribute to co-exist in a profile associated with the user identifier, and the preferring-identified-user-over-anonymous-user policy comprises a policy that resolves conflicting values of the data attribute based on a value of the data attribute configured via an identified user identifier (The limitation recites a mental process of evaluation and/or judgement capable of being performed by the human mind by identifying a policy).
Step 2A Prong Two Analysis:
This judicial exception is not integrated into a practical application because there are no
additional elements to provide practical application.
Step 2B Analysis:
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. The claim is not patent eligible.
With respect to claim(s) 5 and 15:
wherein the value of the data attribute comprises a value representing true, false, or conflict (The limitation recites a mental process of evaluation and/or judgement capable of being performed by the human mind by generating a value).
Step 2A Prong Two Analysis:
This judicial exception is not integrated into a practical application because there are no
additional elements to provide practical application.
Step 2B Analysis:
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. The claim is not patent eligible.
With respect to claim(s) 6 and 16:
wherein the device-level conflict resolution policy comprises one or more of a merging-in-lists policy, a latest-win policy, a preserving-first-occurrence policy, a user-resolving-conflict policy, a preferring-true policy, a preferring-false policy, and a leave-in-conflict policy (The limitation recites a mental process of evaluation and/or judgement capable of being performed by the human mind by identifying a policy).
Step 2A Prong Two Analysis:
This judicial exception is not integrated into a practical application because there are no
additional elements to provide practical application.
Step 2B Analysis:
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. The claim is not patent eligible.
With respect to claim(s) 7 and 17:
wherein the merging-in-lists policy comprises a policy that merges conflicting values of the data attribute to form a list of attribute values, wherein the latest-win policy comprises a policy that resolves conflicting values of the data attribute based on a recent data value made available by the user identifier, wherein the preserving-first-occurrence policy comprises a policy that resolves conflicting values of the data attribute based on a first-provided data value made available by the user identifier, wherein the user-resolving-conflict policy comprises a policy that resolves conflicting values of the data attribute by allowing the user identifier to provide an appropriate data value for the data attribute, wherein the preferring-false policy comprises a policy that resolves conflicting values of the data attribute by assigning a data value of false to the data attribute, and wherein the leave-in-conflict policy comprises a policy that allows conflicting values of the data attribute to co-exist in a profile associated with the user identifier (The limitation recites a mental process of evaluation and/or judgement capable of being performed by the human mind by identifying a policy).
Step 2A Prong Two Analysis:
This judicial exception is not integrated into a practical application because there are no
additional elements to provide practical application..
Step 2B Analysis:
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. The claim is not patent eligible.
With respect to claim(s) 8:
wherein a data value of the data attribute corresponds to a consent preference specified by the user identifier at a timestamp in the period of time (The limitation recites a mental process of evaluation and/or judgement capable of being performed by the human mind by generating a value).
Step 2A Prong Two Analysis:
This judicial exception is not integrated into a practical application because there are no
additional elements to provide practical application..
Step 2B Analysis:
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. The claim is not patent eligible.
With respect to claim(s) 9 and 18:
wherein the data attribute corresponds to an element of a user associated with the user identifier or an application associated with the user identifier, and wherein a data value of the data attribute corresponds to one or more input values of the element of the user or the application at a timestamp in the period of time (The limitation recites a mental process of evaluation and/or judgement capable of being performed by the human mind by generating a value).
Step 2A Prong Two Analysis:
This judicial exception is not integrated into a practical application because there are no
additional elements to provide practical application.
Step 2B Analysis:
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. The claim is not patent eligible.
With respect to claim(s) 10 and 19:
identifying a plurality of device-level conflict resolution policies configured for the data attribute, each device-level conflict resolution policy being assigned a priority level indicating an order in which plurality of device-level conflict resolution policies is applied (The limitation recites a mental process of evaluation and/or judgement capable of being performed by the human mind by identifying policies); and
generating the value of the data attribute based on the priority level assigned to each device-level conflict resolution policy (The limitation recites a mental process of evaluation and/or judgement capable of being performed by the human mind by generating a value).
Step 2A Prong Two Analysis:
This judicial exception is not integrated into a practical application because there are no
additional elements to provide practical application..
Step 2B Analysis:
The claim does not include additional elements that are sufficient to amount to significantly more than the judicial exception. The claim is not patent eligible.
Claim Rejections - 35 USC § 103
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, 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.
Claim(s) 1, 5-8, 10-11, 15-18 and 20 is/are rejected under 35 U.S.C. 102(a)(1) as being anticipated by RAMAN et al. (US Pub. Mo. 20190340168) and Horns et al. (US Pub. No. 20200117388) in further view of Tsofi et al. (US Pub. No. 20110004702).
With respect to claim 1, RAMAN et al. teaches a method comprising:
identifying a device-level conflict on a data attribute associated with a user identifier, the device-level conflict indicating that conflicting values were configured via a plurality of devices associated with the user identifier over a period of time (Paragraph 34 discloses identify the conflicting requests 118 and may choose one according to a data version conflict resolution technique (e.g., selecting the earlier request 118 or the later request 118 according to timestamps associated with each request 118, or selecting the first request 118 or the second request 118 according to the sequential order in which the requests 118 arrived at the second server 104), or, alternatively, may choose another resolution that fulfills both requests 118 (e.g., applying an update 120 that sets the value of the second data item 108 to 3));
identifying a device-level conflict resolution policy configured by a customer associated with the user identifier for the data attribute (Paragraph 139 discloses he data version conflict resolution technique 304 may comprise a last-writer-wins policy that prioritizes retaining the most recent value of the data item 108 according to timestamps of the updates 120);
generating a value of the data attribute, the generating of the value including applying the device-level conflict resolution policy to the device-level conflict (Paragraph 34 discloses identify the conflicting requests 118 and may choose one according to a data version conflict resolution technique (e.g., selecting the earlier request 118 or the later request 118 according to timestamps associated with each request 118, or selecting the first request 118 or the second request 118 according to the sequential order in which the requests 118 arrived at the second server 104), or, alternatively, may choose another resolution that fulfills both requests 118 (e.g., applying an update 120 that sets the value of the second data item 108 to 3)). RAMAN et al.
does not explicitly discloses identifying a device-level conflict on a data attribute associated with a user identifier, the device-level conflict indicating that conflicting values were configured via a plurality of devices associated with the user identifier over a period of time.
However, Horns et al. teaches discloses identifying a device-level conflict on a data attribute associated with a user identifier, the device-level conflict indicating that conflicting values were configured via a plurality of devices associated with the user identifier over a period of time (Paragraph 26 discloses identifying a conflict within different versions of the same composite part, the conflict resolution system identifies one or more format-specific rule sets that apply to the composite part and Paragraph 58 discloses an identifier (“id”), name, media type, and tags. Each attribute is assigned one or more values. To demonstrate, the identifier property attribute can serve as a unique identifier of the root node).
Therefore, it would have been obvious at the time the invention was made to a person having ordinary skill in the art to modify RAMAN et al. with Horns et al. to include identifying a device-level conflict on a data attribute associated with a user identifier, the device-level conflict indicating that conflicting values were configured via a plurality of devices associated with the user identifier over a period of time. This would have facilitated accelerated searching. See Horns et al. Paragraph 10-12.
RAMAN et al. as modified by Horns et al. does not explicitly disclose identifying a device-level conflict resolution policy configured by a customer associated with the user identifier for the data attribute.
However, Tsofi et al. teaches identifying a device-level conflict resolution policy configured by a customer associated with the user identifier for the data attribute (Paragraph 31 discloses resolver component 310 can process received and/or retrieved data and make a decision concerning how a conflict should be handled. Exemplary input includes the identity of the conflicting objects and the instances of those objects that need to be resolved. Furthermore, the resolver component 310 can acquire rules and RuleSets (described below) from policy component 320)
Therefore, it would have been obvious at the time the invention was made to a person having ordinary skill in the art to modify RAMAN et al. and Horns et al. to with Tsofi et al. to include identifying a device-level conflict resolution policy configured by a customer associated with the user identifier for the data attribute. This would have facilitated accelerated searching. See Horns et al. Paragraph 10-12.
The RAMAN et al. reference as modified by Horns et al. and Tsofi et al. teaches all the limitations of claim 1. With respect to claim 5, RAMAN et al. discloses the method of claim 1, wherein the value of the data attribute comprises a value representing true, false, or conflict (Paragraph 31 discloses while a second client 112 may simultaneously submit a second request 118 to update 120 the same data item 108 to a second, different value. If both requests 118 are transmitted to the same server 104, the server 104 may detect the conflicting requests 118 and may resolve the conflict in a variety of ways (e.g., selecting one write request 118 to be committed to the data set 106 as an update 120 while rejecting the other write request 118; rejecting both write requests 118 as mutually conflicting; and/or merging the write requests 118 into a single update 120 that reflects both write requests 118)).
The RAMAN et al. reference as modified by Horns et al. and Tsofi et al. teaches all the limitations of claim 1. With respect to claim 6, RAMAN et al. teaches the method of claim 1, wherein the device-level conflict resolution policy comprises one or more of a merging-in-lists policy, a latest-win policy, a preserving-first-occurrence policy, a user-resolving-conflict policy, a preferring-true policy, a preferring-false policy, and a leave-in-conflict policy (Paragraph 139 discloses the second update 120 may have been chronologically preceded by a first update 120 initiated by a different master 116 but received later by the merge master 302, and the merge master 302 may have to resolve the chronological inconsistency using a data version conflict resolution technique).
The RAMAN et al. reference as modified by Horns et al. and Tsofi et al. teaches all the limitations of claim 6. With respect to claim 7, RAMAN et al. teaches the method of claim 6, wherein the merging-in-lists policy comprises a policy that merges conflicting values of the data attribute to form a list of attribute values, wherein the latest-win policy comprises a policy that resolves conflicting values of the data attribute based on a recent data value made available by the user identifier, wherein the preserving-first-occurrence policy comprises a policy that resolves conflicting values of the data attribute based on a first-provided data value made available by the user identifier, wherein the user-resolving-conflict policy comprises a policy that resolves conflicting values of the data attribute by allowing the user identifier to provide an appropriate data value for the data attribute, wherein the preferring-false policy comprises a policy that resolves conflicting values of the data attribute by assigning a data value of false to the data attribute, and wherein the leave-in-conflict policy comprises a policy that allows conflicting values of the data attribute to co-exist in a profile associated with the user identifier (Paragraph 139 discloses a data version conflict resolution technique 304 that is associated with the fourth data item 108, and the data version conflict resolution technique 304 produces a data version conflict resolution outcome 306 indicating that the update 120 of the fourth data item 108 is to be kept and applied to the data set 106 (e.g., the update 120 in the tentative update set 1110 may have a later timestamp than the previously applied update 120)).
The RAMAN et al. reference as modified by Horns et al. and Tsofi et al. teaches all the limitations of claim 1. With respect to claim 8, RAMAN et al. teaches the method of claim 1, wherein a data value of the data attribute corresponds to a consent preference specified by the user identifier at a timestamp in the period of time (Paragraph 55 discloses the masters 116 may generate data version conflict resolution outcomes of a data version conflict 202 with the same result (e.g., selecting the same update 120 to be applied to the data item 108), but with timing differences, leading to different timestamps with which the data version conflict resolution outcomes are to be applied), or, alternatively, may choose another resolution that fulfills both requests 118 (e.g., applying an update 120 that sets the value of the second data item 108 to 3)).
The RAMAN et al. reference as modified by Horns et al. and Tsofi et al. teaches all the limitations of claim 1. With respect to claim 10, RAMAN et al. teaches the method of claim 1, comprising:
identifying a plurality of device-level conflict resolution policies configured for the data attribute, each device-level conflict resolution policy being assigned a priority level indicating an order in which plurality of device-level conflict resolution policies is applied (Paragraph 34 discloses identify the conflicting requests 118 and may choose one according to a data version conflict resolution technique (e.g., selecting the earlier request 118 or the later request 118 according to timestamps associated with each request 118, or selecting the first request 118 or the second request 118 according to the sequential order in which the requests 118 arrived at the second server 104), or, alternatively, may choose another resolution that fulfills both requests 118 (e.g., applying an update 120 that sets the value of the second data item 108 to 3)); and
generating the value of the data attribute based on the priority level assigned to each device-level conflict resolution policy (Paragraph 34 discloses identify the conflicting requests 118 and may choose one according to a data version conflict resolution technique (e.g., selecting the earlier request 118 or the later request 118 according to timestamps associated with each request 118, or selecting the first request 118 or the second request 118 according to the sequential order in which the requests 118 arrived at the second server 104), or, alternatively, may choose another resolution that fulfills both requests 118 (e.g., applying an update 120 that sets the value of the second data item 108 to 3)).
With respect to claim 11, RAMAN et al. teaches a system comprising:
one or more hardware processors (Paragraph 11 discloses a processor); and
at least one machine-storage medium (Paragraph 69 discloses a processor) for storing instructions that, when executed by the one or more hardware processors, cause the one or more hardware processors to perform operations comprising:
identifying a device-level conflict on a data attribute associated with a user identifier, the device-level conflict indicating that conflicting values were configured via a plurality of devices associated with the user identifier over a period of time (Paragraph 34 discloses identify the conflicting requests 118 and may choose one according to a data version conflict resolution technique (e.g., selecting the earlier request 118 or the later request 118 according to timestamps associated with each request 118, or selecting the first request 118 or the second request 118 according to the sequential order in which the requests 118 arrived at the second server 104), or, alternatively, may choose another resolution that fulfills both requests 118 (e.g., applying an update 120 that sets the value of the second data item 108 to 3));
identifying a device-level conflict resolution policy configured by a customer associated with the user identifier for the data attribute (Paragraph 139 discloses he data version conflict resolution technique 304 may comprise a last-writer-wins policy that prioritizes retaining the most recent value of the data item 108 according to timestamps of the updates 120);
generating a value of the data attribute, the generating of the value including applying the device-level conflict resolution policy to the device-level conflict (Paragraph 34 discloses identify the conflicting requests 118 and may choose one according to a data version conflict resolution technique (e.g., selecting the earlier request 118 or the later request 118 according to timestamps associated with each request 118, or selecting the first request 118 or the second request 118 according to the sequential order in which the requests 118 arrived at the second server 104), or, alternatively, may choose another resolution that fulfills both requests 118 (e.g., applying an update 120 that sets the value of the second data item 108 to 3)). RAMAN et al.
does not explicitly discloses identifying a device-level conflict on a data attribute associated with a user identifier, the device-level conflict indicating that conflicting values were configured via a plurality of devices associated with the user identifier over a period of time.
However, Horns et al. teaches discloses identifying a device-level conflict on a data attribute associated with a user identifier, the device-level conflict indicating that conflicting values were configured via a plurality of devices associated with the user identifier over a period of time (Paragraph 26 discloses identifying a conflict within different versions of the same composite part, the conflict resolution system identifies one or more format-specific rule sets that apply to the composite part and Paragraph 58 discloses an identifier (“id”), name, media type, and tags. Each attribute is assigned one or more values. To demonstrate, the identifier property attribute can serve as a unique identifier of the root node).
Therefore, it would have been obvious at the time the invention was made to a person having ordinary skill in the art to modify RAMAN et al. with Horns et al. to include identifying a device-level conflict on a data attribute associated with a user identifier, the device-level conflict indicating that conflicting values were configured via a plurality of devices associated with the user identifier over a period of time. This would have facilitated accelerated searching. See Horns et al. Paragraph 10-12.
RAMAN et al. as modified by Horns et al. does not explicitly disclose identifying a device-level conflict resolution policy configured by a customer associated with the user identifier for the data attribute.
However, Tsofi et al. teaches identifying a device-level conflict resolution policy configured by a customer associated with the user identifier for the data attribute (Paragraph 31 discloses resolver component 310 can process received and/or retrieved data and make a decision concerning how a conflict should be handled. Exemplary input includes the identity of the conflicting objects and the instances of those objects that need to be resolved. Furthermore, the resolver component 310 can acquire rules and RuleSets (described below) from policy component 320)
Therefore, it would have been obvious at the time the invention was made to a person having ordinary skill in the art to modify RAMAN et al. and Horns et al. to with Tsofi et al. to include identifying a device-level conflict resolution policy configured by a customer associated with the user identifier for the data attribute. This would have facilitated accelerated searching. See Horns et al. Paragraph 10-12.
With respect to claim 15, it is rejected on grounds corresponding to above rejected claim 5, because claim 15 is substantially equivalent to claim 5.
With respect to claim 16, it is rejected on grounds corresponding to above rejected claim 6, because claim 16 is substantially equivalent to claim 6.
With respect to claim 17, it is rejected on grounds corresponding to above rejected claim 7, because claim 17 is substantially equivalent to claim 7.
With respect to claim 18, it is rejected on grounds corresponding to above rejected claim 8, because claim 18 is substantially equivalent to claim 8.
With respect to claim 20, RAMAN et al. teaches a machine-storage medium for storing instructions that, when executed by one or more hardware processors, cause the one or more hardware processors to perform operations comprising:
identifying a device-level conflict on a data attribute associated with a user identifier, the device-level conflict indicating that conflicting values were configured via a plurality of devices associated with the user identifier over a period of time (Paragraph 34 discloses identify the conflicting requests 118 and may choose one according to a data version conflict resolution technique (e.g., selecting the earlier request 118 or the later request 118 according to timestamps associated with each request 118, or selecting the first request 118 or the second request 118 according to the sequential order in which the requests 118 arrived at the second server 104), or, alternatively, may choose another resolution that fulfills both requests 118 (e.g., applying an update 120 that sets the value of the second data item 108 to 3));
identifying a device-level conflict resolution policy configured by a customer associated with the user identifier for the data attribute (Paragraph 139 discloses he data version conflict resolution technique 304 may comprise a last-writer-wins policy that prioritizes retaining the most recent value of the data item 108 according to timestamps of the updates 120);
generating a value of the data attribute, the generating of the value including applying the device-level conflict resolution policy to the device-level conflict (Paragraph 34 discloses identify the conflicting requests 118 and may choose one according to a data version conflict resolution technique (e.g., selecting the earlier request 118 or the later request 118 according to timestamps associated with each request 118, or selecting the first request 118 or the second request 118 according to the sequential order in which the requests 118 arrived at the second server 104), or, alternatively, may choose another resolution that fulfills both requests 118 (e.g., applying an update 120 that sets the value of the second data item 108 to 3)). RAMAN et al.
does not explicitly discloses identifying a device-level conflict on a data attribute associated with a user identifier, the device-level conflict indicating that conflicting values were configured via a plurality of devices associated with the user identifier over a period of time.
However, Horns et al. teaches discloses identifying a device-level conflict on a data attribute associated with a user identifier, the device-level conflict indicating that conflicting values were configured via a plurality of devices associated with the user identifier over a period of time (Paragraph 26 discloses identifying a conflict within different versions of the same composite part, the conflict resolution system identifies one or more format-specific rule sets that apply to the composite part and Paragraph 58 discloses an identifier (“id”), name, media type, and tags. Each attribute is assigned one or more values. To demonstrate, the identifier property attribute can serve as a unique identifier of the root node).
Therefore, it would have been obvious at the time the invention was made to a person having ordinary skill in the art to modify RAMAN et al. with Horns et al. to include identifying a device-level conflict on a data attribute associated with a user identifier, the device-level conflict indicating that conflicting values were configured via a plurality of devices associated with the user identifier over a period of time. This would have facilitated accelerated searching. See Horns et al. Paragraph 10-12.
RAMAN et al. as modified by Horns et al. does not explicitly disclose identifying a device-level conflict resolution policy configured by a customer associated with the user identifier for the data attribute.
However, Tsofi et al. teaches identifying a device-level conflict resolution policy configured by a customer associated with the user identifier for the data attribute (Paragraph 31 discloses resolver component 310 can process received and/or retrieved data and make a decision concerning how a conflict should be handled. Exemplary input includes the identity of the conflicting objects and the instances of those objects that need to be resolved. Furthermore, the resolver component 310 can acquire rules and RuleSets (described below) from policy component 320)
Therefore, it would have been obvious at the time the invention was made to a person having ordinary skill in the art to modify RAMAN et al. and Horns et al. to with Tsofi et al. to include identifying a device-level conflict resolution policy configured by a customer associated with the user identifier for the data attribute. This would have facilitated accelerated searching. See Horns et al. Paragraph 10-12.
Claim(s) 2-4, 9, 12-14, and 19 is/are rejected under 35 U.S.C. 103 as being unpatentable over RAMAN et al. (US Pub. Mo. 20190340168) and Horns et al. (US Pub. No. 20200117388) and Tsofi et al. (US Pub. No. 20110004702) in further view of Jonsson et al. (US Patent. No. 11960459).
The Raman et al. reference as modified by Horns et al. and Tsofi et al. teaches all the limitations of claim 1. With respect to claim 2, RAMAN et al. as modified by Horns et al. and Tsofi et al. does not disclose identifying a profile-level conflict on the data attribute associated with the user identifier, the profile-level conflict indicating that conflicting values of the data attribute resulting from merging of a plurality of profiles.
However, Jonsson et al. teaches the method of claim 1, comprising:
identifying a profile-level conflict on the data attribute associated with the user identifier, the profile-level conflict indicating that conflicting values of the data attribute resulting from merging of a plurality of profiles (See Column 2 Lines 9-12 discloses a deduplication process may be implemented to resolve any conflicts between data contained in the multiple profiles selected for merging);
identifying a profile-level conflict resolution policy configured for the data attribute (Column 2 Lines 29-50 discloses If a conflict is identified, a deduplication process may be performed, where values of the conflicted data fields are selected from one profile of the profiles selected for merging. The deduplication process may prioritize values for selection for the merged profile based on a number of factors, such as recency of the last update for that data, source of the data, completeness of other data fields of the profile, and/or attributes of certain data fields in the profiles); and
generating the value of the data attribute, the generating of the value including applying the device-level conflict resolution policy before applying the profile-level conflict resolution policy (Column 2 Lines 29-50 discloses deduplication process may prioritize values for selection for the merged profile based on a number of factors, such as recency of the last update for that data, source of the data, completeness of other data fields of the profile, and/or attributes of certain data fields in the profiles).
Therefore, it would have been obvious at the time the invention was made to a person having ordinary skill in the art to modify RAMAN et al. and Horns et al. and Tsofi et al. with Jonsson et al. to include identifying a profile-level conflict on the data attribute associated with the user identifier, the profile-level conflict indicating that conflicting values of the data attribute resulting from merging of a plurality of profiles. This would have facilitated accelerated searching. See Jonsson et al. Columns 1 Lines 5-25.
The RAMAN et al. reference as modified by Horns et al. and Tsofi et al. and Jonsson et al. teaches all the limitations of claim 2. With respect to claim 3, RAMAN et al. discloses the method of claim 2, wherein the profile-level conflict resolution policy comprises one or more of a merging-in-lists policy, a latest-win policy, a preserving-first-occurrence policy, a preferring-true policy, a preferring-false policy, a leave-in-conflict policy, and a preferring-identified-user-over-anonymous-user policy (Paragraph 139 discloses a data version conflict resolution technique 304 that is associated with the fourth data item 108, and the data version conflict resolution technique 304 produces a data version conflict resolution outcome 306 indicating that the update 120 of the fourth data item 108 is to be kept and applied to the data set 106 (e.g., the update 120 in the tentative update set 1110 may have a later timestamp than the previously applied update 120)).
The RAMAN et al. reference as modified by Horns et al. and Tsofi et al. and Jonsson et al. teaches all the limitations of claim 3. With respect to claim 4, RAMAN et al. discloses the method of claim 3, wherein the merging-in-lists policy comprises a policy that resolves conflicting values of the data attribute by merging conflicting values of the data attribute to form a list of attribute values, wherein the preserving-first-occurrence policy comprises a policy that resolves conflicting values of the data attribute based on a first-provided data value made available by the user identifier, wherein the preferring-true policy comprises a policy that resolves conflicting values of the data attribute by assigning a data value of true to the data attribute, wherein the leave-in-conflict policy comprises a policy that resolves conflicting values of the data attribute by allowing conflicting values of the data attribute to co-exist in a profile associated with the user identifier, and the preferring-identified-user-over-anonymous-user policy comprises a policy that resolves conflicting values of the data attribute based on a value of the data attribute configured via an identified user identifier (Paragraph 139 discloses the second update 120 may have been chronologically preceded by a first update 120 initiated by a different master 116 but received later by the merge master 302, and the merge master 302 may have to resolve the chronological inconsistency using a data version conflict resolution technique).
The Raman et al. reference as modified by Horns et al. and Tsofi et al. teaches all the limitations of claim 1. With respect to claim 9, RAMAN et al. as modified by Horns et al. and Tsofi et al. does not disclose wherein the data attribute corresponds to an element of a user associated with the user identifier or an application associated with the user identifier, and wherein a data value of the data attribute corresponds to one or more input values of the element of the user or the application at a timestamp in the period of time.
However, Jonsson et al. teaches the method of claim 1, wherein the data attribute corresponds to an element of a user associated with the user identifier or an application associated with the user identifier, and wherein a data value of the data attribute corresponds to one or more input values of the element of the user or the application at a timestamp in the period of time (Column 2 Lines 29-50 discloses deduplication process may prioritize values for selection for the merged profile based on a number of factors, such as recency of the last update for that data, source of the data, completeness of other data fields of the profile, and/or attributes of certain data fields in the profiles).
Therefore, it would have been obvious at the time the invention was made to a person having ordinary skill in the art to modify RAMAN et al. and Horns et al. and Tsofi et al. with Jonsson et al. to include wherein the data attribute corresponds to an element of a user associated with the user identifier or an application associated with the user identifier, and wherein a data value of the data attribute corresponds to one or more input values of the element of the user or the application at a timestamp in the period of time. This would have facilitated accelerated searching. See Jonsson et al. Columns 1 Lines 5-25.
With respect to claim 12, it is rejected on grounds corresponding to above rejected claim 2, because claim 12 is substantially equivalent to claim 2.
With respect to claim 13, it is rejected on grounds corresponding to above rejected claim 3, because claim 13 is substantially equivalent to claim 3.
With respect to claim 14, it is rejected on grounds corresponding to above rejected claim 4, because claim 14 is substantially equivalent to claim 4.
With respect to claim 19, it is rejected on grounds corresponding to above rejected claim 9, because claim 19 is substantially equivalent to claim 9.
Relevant Prior Art
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure. The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
US Pub. No. 20140195486 is directed to DATA RECOVERY IN MULTI-LEADER DISTRIBUTED SYSTEMS: [Paragraph 043] region may be selected based on a predefined policy. For example, if the data item is modified by computer systems in "Region A," "Region B," and "Region C," the data item from "Region A" may be selected over data items from "Region B" and "Region C." After the conflict between copies of the data item is resolved, the read-write computer writes the processed data into a data storage unit of the computer system. Such conflict resolution process is executed at all of the read-write computers in the distributed system.
Conclusion
Applicant's amendment necessitated the new ground(s) of rejection presented in this Office action. Accordingly, THIS ACTION IS MADE FINAL. See MPEP § 706.07(a). Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any nonprovisional extension fee (37 CFR 1.17(a)) pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to NICHOLAS E ALLEN whose telephone number is (571)270-3562. The examiner can normally be reached Monday through Thursday 830-630.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Boris Gorney can be reached at (571) 270-5626. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/N.E.A/Examiner, Art Unit 2154
/SYED H HASAN/Primary Examiner, Art Unit 2154