Method and device for real-time knowledge processing based on an ontology with temporal extensions
First Claim
1. A computer-implemented method for storing data in a knowledge base, comprising:
- receiving a plurality of assertions wherein an assertion comprises a subject, a property and an object and wherein an assertion can have a functional property such that for a given subject and a given property the object has a single value at any time, and if a new assertion is received with the given subject and the given property and a different object value then the newly received assertion is valid and any previously received assertions are no longer valid;
maintaining a knowledge base that includes (1) a history table that stores previously received assertions, and (2) a snapshot table that stores currently valid assertions;
maintaining a snapshot cache in memory that stores a subset of the assertions in the snapshot table;
initiating a processing cycle, which is a period of time during which the received plurality of assertions is processed;
selecting an assertion for processing;
generating an assertion tuple that corresponds to the selected assertion, wherein the assertion tuple includes the subject, property and object of the selected assertion, a transaction time, which is the starting time of the cycle, and a certainty value set to true, indicating that the selected assertion is true as of the transaction time;
determining that the property of the selected assertion is functional;
writing a retraction tuple to the history table that indicates that a previous assertion with the same subject and property as the selected assertion is retracted, wherein the certainty value of the retraction tuple is set to false;
writing the assertion tuple to the snapshot table; and
writing the assertion tuple to the history table.
1 Assignment
0 Petitions
Accused Products
Abstract
Embodiments are directed towards a method and a computer server for receiving assertions, wherein an assertion can have a functional property such that for a given subject and a given property the object has a single value at any time, maintaining a knowledge base that includes (1) a history table that stores previously received assertions, and (2) a snapshot table that stores currently valid assertions, maintaining a snapshot cache in memory that stores a subset of the assertions in the snapshot table, initiating a processing cycle, selecting an assertion for processing, generating an assertion tuple that corresponds to the selected assertion, determining that the property of the selected assertion is functional, writing a retraction tuple to the history table, writing the assertion tuple to the snapshot table; and writing the assertion tuple to the history table.
-
Citations
20 Claims
-
1. A computer-implemented method for storing data in a knowledge base, comprising:
-
receiving a plurality of assertions wherein an assertion comprises a subject, a property and an object and wherein an assertion can have a functional property such that for a given subject and a given property the object has a single value at any time, and if a new assertion is received with the given subject and the given property and a different object value then the newly received assertion is valid and any previously received assertions are no longer valid; maintaining a knowledge base that includes (1) a history table that stores previously received assertions, and (2) a snapshot table that stores currently valid assertions; maintaining a snapshot cache in memory that stores a subset of the assertions in the snapshot table; initiating a processing cycle, which is a period of time during which the received plurality of assertions is processed; selecting an assertion for processing; generating an assertion tuple that corresponds to the selected assertion, wherein the assertion tuple includes the subject, property and object of the selected assertion, a transaction time, which is the starting time of the cycle, and a certainty value set to true, indicating that the selected assertion is true as of the transaction time; determining that the property of the selected assertion is functional; writing a retraction tuple to the history table that indicates that a previous assertion with the same subject and property as the selected assertion is retracted, wherein the certainty value of the retraction tuple is set to false; writing the assertion tuple to the snapshot table; and writing the assertion tuple to the history table. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A server computer, comprising:
-
a processor; a network interface in communication with the processor; a knowledge base that stores (1) a history table that includes previously received assertions, and (2) a snapshot table that stores currently valid assertions, wherein an assertion comprises a subject, a property and an object and wherein an assertion can have a functional property such that for a given subject and a given property the object has a single value at any time, and if a new assertion is received with the given subject and the given property and a different object value then the newly received assertion is valid and any previously received assertions are no longer valid a memory in communication with the processor for storing instructions, which when executed by the processor, cause the server; to receive a plurality of assertions; to maintain a snapshot cache in memory that stores a subset of the assertions in the snapshot table; to initiate a processing cycle, which is a period of time during which the received plurality of assertions is processed; to select an assertion for processing; to generate an assertion tuple that corresponds to the selected assertion, wherein the assertion tuple includes the subject, property and object of the selected assertion, a transaction time, which is the starting time of the cycle, and a certainty value set to true, indicating that the selected assertion is true as of the transaction time; to determine that the property of the selected assertion is functional; to write a retraction tuple to the history table that indicates that a previous assertion with the same subject and property as the selected assertion is retracted, wherein the certainty value of the retraction tuple is set to false; to write the assertion tuple to the snapshot table; and to write the assertion tuple to the history table. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
Specification