10127252

History and Scenario Data Tracking

PublishedNovember 13, 2018
Assigneenot available in USPTO data we have
Technical Abstract

Patent Claims
20 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A non-transitory computer storage medium storing computer-executable instructions that when executed by at least a processor of a computer cause the computer to: receive, by at least the processor, input scenario data comprising modifications to records in project data, wherein the modifications are associated with a scenario; in response to receiving the input scenario data, (i) generate, by at least the processor, modified records based on the modifications and the records in the project data, and (ii) record, by at least the processor, the modified records in an overlay table, wherein the modified records are generated and recorded in the overlay table without modifying the records in the project data; receive, by at least the processor, a request for the project data as modified by the scenario; and in response to receiving the request, generate, by at least the processor, a scenario result based upon a combination of one or more records in the project data with the modified records in the overlay table, wherein the scenario result includes the modified records in the overlay table and does not include the records in the project data for which the input scenario data provided for modifying.

2

2. The non-transitory computer storage medium of claim 1 , where the instructions cause the computer to: record, for each modified record in the overlay table, a classification of i) insert, ii) update, or iii) delete based on an operation performed on a corresponding record to produce the modified record; and in response to the request: identify modified records in the overlay table classified as either an insert or an update; and combine the identified modified records with the unmodified records to produce the scenario result, such that modified records classified as delete are not included in the scenario result.

3

3. The non-transitory computer storage medium of claim 1 , where the instructions cause the computer to: record, in overlay metadata for the scenario, a scenario time that specifies an effective time for the scenario; and in response to the request, generate the scenario result by: identifying a version of at least one record, in the project data, that was valid at the scenario time; and combining the identified version of the at least one record with the modified records.

4

4. The non-transitory computer storage medium of claim 3 , where the generating the scenario result comprises: maintaining a history table that stores, for each record in the project data that has been modified, at least one corresponding historical record that includes i) a version of the record prior to modification and ii) a valid time range that defines a time during which the version of the record was valid; maintaining a transaction table that stores, for each record in the project data that has been modified, a corresponding transaction record that includes a historical time range that defines a time during which a historical record for the record is valid; and executing an overlay view on the history table, the transaction table, and a base table that stores base records corresponding to a current version of the records in the project data, where the overlay view is configured to: select historical records in the history table that i) have a valid time range that includes the scenario time and ii) do not have a corresponding modified record in the overlay table; select base records from the base table that i) do not have a corresponding transaction record with a history valid time that includes the scenario time and ii) do not have a corresponding modified record in the overlay table; and combine the modified records, the selected historical records, and the selected base records to generate the scenario result.

5

5. The non-transitory computer storage medium of claim 1 , where the instructions cause the computer to revise the overlay table by: detecting an operation on a record associated with the scenario result; determining if the record is a modified record in the overlay table, and when the record is not a modified record in the overlay table, inserting the record as a modified record in the overlay table; when the record is a modified record in the overlay table, replacing the modified record with a record that results from execution of the operation.

6

6. The non-transitory computer storage medium of claim 5 , where the instructions cause the computer to: determine a classification of the operation; select an instead-of trigger mapped to the classification, where the instead-of trigger comprises instructions that, when executed, update the overlay view; and execute the selected trigger to modify the overlay table.

7

7. The non-transitory computer storage medium of claim 1 , where the instructions cause the computer to: record a second scenario comprising a second set of modified records in the overlay table; and in response to a request for the project data as modified by the second scenario, combine records in the project data with the second set of modified records in the overlay table to create a second scenario result.

8

8. A computing system, comprising: computer readable storage media configured to store project data and an overlay table; and scenario logic configured to: receive input scenario data comprising modifications to records in project data, wherein the modifications are associated with a scenario; in response to receiving the input scenario data, (i) generate modified records based on the modifications and the records in the project data, and (ii) record the modified records in an overlay table, wherein the modified records are generated and recorded in the overlay table without modifying the records in the project data; receive a request for the project data as modified by the scenario; and in response to receiving the request, generate a scenario result based upon a combination of one or more records in the project data with the modified records in the overlay table, wherein the scenario result includes the modified records in the overlay table and does not include the records in the project data for which the input scenario data provided for modifying.

9

9. The computing system of claim 8 , where the scenario logic is further configured to: record, for each modified record in the overlay table, a classification of i) insert, ii) update, or iii) delete based on the operation performed on a corresponding record to produce the modified record; and in response to the request: identify modified records in the overlay table classified as either an insert or an update; and combine the identified modified records with the unmodified records to produce the scenario result, such that modified records classified as delete are not included in the scenario result.

10

10. The computing system of claim 8 , where the scenario logic is further configured to: record, in overlay metadata, a scenario time that specifies an effective time for the scenario; and in response to the request, generate the scenario result by: identifying a version of at least one record, in the project data, that was valid at the scenario time; and combining the identified version of the at least one record with the modified records.

11

11. The computing system of claim 10 , further comprising: history logic configured to maintain: a history table that stores, for each record in the project data that has been modified, at least one corresponding historical record that includes i) a version of the record prior to modification and ii) a valid time range that defines a time during which the version of the record was valid; and a transaction table that stores, for each record in the project data that has been modified, a corresponding transaction record that includes a historical time range that defines a time during which a historical record for the record is valid; and where the scenario logic is further configured to create the scenario result by: executing an overlay view on the history table, the transaction table, and a base table that stores base records corresponding to a current version of the records in the project data, where the overlay view is configured to: select historical records in the history table that i) have a valid time range that includes the scenario time and ii) do not have a corresponding modified record in the overlay table; select base records from the base table that i) do not have a corresponding transaction record with a history valid time that includes the scenario time and ii) do not have a corresponding modified record in the overlay table; and combine the modified records, the selected historical records, and the selected base records to generate the scenario result.

12

12. The computing system of claim 8 , where the scenario logic is further configured to revise the overlay table by: detecting an operation on a record associated with the scenario result; determining if the record is a modified record in the overlay table, and when the record is not a modified record in the overlay table, inserting the record as a modified record in the overlay table; when the record is a modified record in the overlay table, replacing the modified record with a record that results from execution of the operation.

13

13. The computing system of claim 12 , where the scenario logic is further configured to: determine a classification of the operation; select an instead-of trigger mapped to the classification, where the instead-of trigger comprises instructions that, when executed, update the overlay view; and execute the selected trigger to modify the overlay table.

14

14. A computer-implemented method comprising, with a processor: receiving input scenario data comprising modifications to records in project data, wherein the modifications are associated with a scenario; in response to receiving the input scenario data, (i) generating modified records based on the modifications and the records in the project data, and (ii) recording the modified records in an overlay table, wherein the modified records are generated and recorded in the overlay table without modifying the records in the project data; receiving a request for the project data as modified by the scenario; and in response to receiving the request, generating a scenario result based upon a combination of one or more records in the project data with the modified records in the overlay table, wherein the scenario result includes the modified records in the overlay table and does not include the records in the project data for which the input scenario data provided for modifying.

15

15. The computer-implemented method of claim 14 , further comprising, with a processor: recording, for each modified record in the overlay table, a classification of i) insert, ii) update, or iii) delete based on the operation performed on a corresponding record to produce the modified record; and in response to the request: identifying modified records in the overlay table classified as either an insert or an update; and combining the identified modified records with the unmodified records to produce the scenario result, such that modified records classified as delete are not included in the scenario result.

16

16. The computer-implemented method of claim 14 , further comprising, with a processor: recording, in overlay metadata, a scenario time that specifies an effective time for the scenario; and in response to the request, generating the scenario result by: identifying a version of at least one record, in the project data, that was valid at the scenario time; and combining the identified version of the at least one record with the modified records.

17

17. The computer-implemented method of claim 16 , further comprising, with a processor, creating the scenario result by: maintaining a history table that stores, for each record in the project data that has been modified, at least one corresponding historical record that includes i) a version of the record prior to modification and ii) a valid time range that defines a time during which the version of the record was valid; maintaining a transaction table that stores, for each record in the project data that has been modified, a corresponding transaction record that includes a historical time range that defines a time during which a historical record for the record is valid; and executing an overlay view on the history table, the transaction table, and a base table that stores base records corresponding to a current version of the records in the project data, where the overlay view is configured to: select historical records in the history table that i) have a valid time range that includes the scenario time and ii) do not have a corresponding modified record in the overlay table; select base records from the base table that i) do not have a corresponding transaction record with a history valid time that includes the scenario time and ii) do not have a corresponding modified record in the overlay table; and combine the modified records, the selected historical records, and the selected base records to generate the scenario result.

18

18. The computer-implemented method of claim 14 , further comprising, with a processor, revising the overlay table by: detecting an operation on a record associated with the scenario result; determining if the record is a modified record in the overlay table, and when the record is not a modified record in the overlay table, inserting the record as a modified record in the overlay table; when the record is a modified record in the overlay table, replacing the modified record with a record that results from execution of the operation.

19

19. The computer-implemented method of claim 18 , where the method further comprises, with a processor: determining a classification of the operation; selecting an instead-of trigger mapped to the classification, where the instead-of trigger comprises instructions that, when executed, update the overlay view; and executing the selected trigger to modify the overlay table.

20

20. The computer-implemented method of claim 14 , further comprising, with a processor: recording a second scenario comprising a second set of modified records in the overlay table; and in response to a request for the project data as modified by the second scenario, combining records in the project data with the second set of modified records in the overlay table to create a second scenario result.

Patent Metadata

Filing Date

Unknown

Publication Date

November 13, 2018

Inventors

Brian Kelly DIEHL

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “HISTORY AND SCENARIO DATA TRACKING” (10127252). https://patentable.app/patents/10127252

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.

HISTORY AND SCENARIO DATA TRACKING — Brian Kelly DIEHL | Patentable