Methods and apparatus for querying a relational data store using schema-less queries
First Claim
1. A method for searching a resource description framework (“
- RDF”
) triples data store having a first storage schema, comprising;
inputting a first query specifying one or more RDF triples to be identified in the data store, where the first query reflects any of a second storage schema or no storage schema, where the second storage schema differs from the first storage schema of the RDF triples;
examining the first query for one or more tokens that represent data to be used in generating the second query;
dispatching context-specific grammar events containing the data, represented by the tokens in the examined first query, to be used in generating the second query,extracting data, represented by the tokens and contained within the context-specific grammar events, from the context-specific grammar events to generate a second query that specifies one or more RDF triples to be identified in the data store responsive to the first query and that reflects the first storage schema;
where the second query comprises;
a single SQL SELECT statement with a WHERE clause containing three or more logical conditions limiting triples to be considered for retrieval from the RDF triples data store, where each logical condition specifies one or more RDF triples according to a boolean condition; and
applying the single SQL SELECT statement to the data store for identification of the one or more RDF triples responsive to the first query;
wherein each of the events represents any of a declaration and a constraint specified in the first query, andwherein the constraint specifies RDF triples to be identified.
3 Assignments
0 Petitions
Accused Products
Abstract
The invention provides, in one aspect, a method of searching an RDF triples data store of the type in which the triples are maintained in accord with a first storage schema. The method includes inputting a first query specifying RDF triples that are to be identified in the data store. That first query assumes either (i) that the triples are stored in a schema-less manner (i.e., with no storage schema) or (ii) that the triples are maintained in accord with a second storage schema that differs from the first. The method further includes generating, from the first query, a second query that specifies those same RDF triples, yet, that reflects the first storage schema. That second query can be applied to the RDF triples data store in order to identify and/or retrieve the desired data.
194 Citations
22 Claims
-
1. A method for searching a resource description framework (“
- RDF”
) triples data store having a first storage schema, comprising;inputting a first query specifying one or more RDF triples to be identified in the data store, where the first query reflects any of a second storage schema or no storage schema, where the second storage schema differs from the first storage schema of the RDF triples; examining the first query for one or more tokens that represent data to be used in generating the second query; dispatching context-specific grammar events containing the data, represented by the tokens in the examined first query, to be used in generating the second query, extracting data, represented by the tokens and contained within the context-specific grammar events, from the context-specific grammar events to generate a second query that specifies one or more RDF triples to be identified in the data store responsive to the first query and that reflects the first storage schema; where the second query comprises; a single SQL SELECT statement with a WHERE clause containing three or more logical conditions limiting triples to be considered for retrieval from the RDF triples data store, where each logical condition specifies one or more RDF triples according to a boolean condition; and applying the single SQL SELECT statement to the data store for identification of the one or more RDF triples responsive to the first query; wherein each of the events represents any of a declaration and a constraint specified in the first query, and wherein the constraint specifies RDF triples to be identified. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
- RDF”
-
9. A method for translating a schema-less input query in a first language to an output query in a second language comprising:
-
examining the schema-less input query in the first language for one or more tokens that represent data to be used in generating the output query; dispatching context-specific grammar events containing the data, represented by the tokens in the examined first query, to be used in generating the second query, populating portions of the output query according to the events and data; and extracting data, represented by the tokens and contained within the context-specific grammar events, from the context-specific grammar events to generate the output query in the second language, comprising those populated portions, as a translation of the input query into second language, wherein the output query represents a schema of a relational database storing resource description framework (“
RDF”
) triples and wherein the output query comprisesa single SQL SELECT statement with a WHERE clause containing three or more logical conditions limiting triples to be considered for retrieval from the RDF triples data store, where each logical condition specifies one or more RDF triples according to a boolean condition; wherein each of the events represents any of a declaration and a constraint specified in the first query, and wherein the constraint specifies RDF triples to be identified. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16)
-
-
17. A digital system for searching a resource description framework (“
- RDF”
) triples data store having a storage schema, comprising;a parser component to examine a schema-less, first query specifying one or more RDF triples to be identified, the parser component examines the first query for one or more tokens that represent data to be used in generating a second query and that dispatches context-specific grammar events containing the data, represented by the tokens in the examined first query, to be used in generating the second query, wherein each of the events represents any of a declaration and a constraint specified in the first query and wherein the constraint specifies RDF triples to be identified; an event-processing component coupled to the parser component, the event-processing component to extract statement data, represented by the tokens and contained within the context-specific grammar events, from one or more of the context-specific grammar events; a statement component coupled to the event-processing component, the statement component to generate the second query so as to identify the same RDF triples identified in the schema-less, first query and so as to reflect the storage schema of the RDF triples data store, where the second query comprises; a single SQL SELECT statement with a WHERE clause containing three or more logical conditions limiting triples to be considered for retrieval from the RDF triples data store, where each logical condition specifies one or more RDF triples according to a boolean condition. - View Dependent Claims (18, 19, 20, 21, 22)
- RDF”
Specification