Claims Analysis
Total Claims: 55
Claim 1
Independent Claim
95 words
An apparatus for querying a database comprising records, the apparatus comprising a digital computer having a processor operably connected to a memory device storing modules executable on the processor and data structures containing data associated with the modules, the modules and data structures comprising: arbitrarily structured records stored in the memory device; a query structure stored in the memory device and representing a selection criterion; and a query engine module stored in the memory device to be executable by the processor to build the query structure and to retrieve indicia of records satisfying the query.
Claim 2
Independent Claim
95 words
An apparatus for querying a database comprising records, the apparatus comprising a digital computer having a processor operably connected to a memory device storing modules executable on the processor and data structures containing data associated with the modules, the modules and data structures comprising: arbitrarily structured records stored in the memory device; a query structure stored in the memory device and representing a selection criterion; and a query engine module stored in the memory device to be executable by the processor to build the query structure and to retrieve indicia of records satisfying the query.
Claim 3
Dependent Claim
13 words
The apparatus of claim 1, wherein the query structure defines a hybrid query.
Claim 4
Dependent Claim
25 words
The apparatus of claim 2, wherein the hybrid query corresponds to a hybrid query structure having a full-text selection criterion and a non-full-text selection criterion.
Claim 5
Dependent Claim
19 words
The apparatus of claim 1, wherein the query engine is programmed to satisfy the query by using an index.
Claim 6
Dependent Claim
12 words
The apparatus of claim 4, wherein the index is an alternate-key index.
Claim 7
Dependent Claim
14 words
The apparatus of claim 5, wherein the alternate-key index is a compound alternate-key index.
Claim 8
Dependent Claim
14 words
The apparatus of claim 5, wherein the alternate-key index is a simple alternate-key index.
Claim 9
Dependent Claim
15 words
The apparatus of claim 5, wherein the alternate-key index is a simple alternate-key filtered index.
Claim 10
Dependent Claim
15 words
The apparatus of claim 5, wherein the alternate-key index is a compound alternate-key filtered index.
Claim 11
Dependent Claim
12 words
The apparatus of claim 4, wherein the index is a filtered index.
Claim 12
Dependent Claim
31 words
The apparatus of claim 1, wherein the query engine is programmed to join at least two heterogeneous sets of arbitrarily structured records to form another heterogeneous set of arbitrarily structured records.
Claim 13
Dependent Claim
32 words
The apparatus of claim 1, wherein the query engine is programmed to evaluate an operator having a multi-valued operand, having one or more values corresponding thereto and arising from a single record.
Claim 14
Dependent Claim
31 words
The apparatus of claim 12, wherein the operator is selected from the group consisting of logical operators, comparison operators, quantifier operators, aggregator operators, selector operators, field existence operators, and arithmetic operators.
Claim 15
Dependent Claim
20 words
The apparatus of claim 12 wherein the operator is selected from the group consisting of unary operators and binary operators.
Claim 16
Dependent Claim
21 words
The apparatus of claim 1, wherein the query engine is programmed to evaluate an operator having an operand of unknown value.
Claim 17
Dependent Claim
31 words
The apparatus of claim 15, wherein the operator is selected from the group consisting of logical operators, comparison operators, quantifier operators, aggregator operators, selector operators, field existence operators, and arithmetic operators.
Claim 18
Dependent Claim
40 words
The apparatus of claim 1, wherein the query engine is programmed to evaluate an operator effective to distill a multi-value operand, having one or more values corresponding thereto and a rising from a single record, into a single result value.
Claim 19
Dependent Claim
12 words
The apparatus of claim 17, wherein the operator is an aggregrator operator.
Claim 20
Dependent Claim
14 words
The apparatus of claim 18, wherein the aggregator operator is a universal quantifier operator.
Claim 21
Dependent Claim
14 words
The apparatus of claim 18, wherein the aggregator operator is an existential quantifier operator.
Claim 22
Dependent Claim
12 words
The apparatus of claim 17, wherein the operator is a selector operator.
Claim 23
Dependent Claim
13 words
The apparatus of claim 21, wherein the selector operator is a FIRST operator.
Claim 24
Dependent Claim
13 words
The apparatus of claim 21, wherein the selector operator is a LAST operator.
Claim 25
Dependent Claim
14 words
The apparatus of claim 21, wherein the selector operator is an NTH occurrence operator.
Claim 26
Dependent Claim
13 words
The apparatus of claim 17, wherein the operator is a field existence operator.
Claim 27
Dependent Claim
17 words
The apparatus of claim 25, wherein the field existence operator is explicitly stated in the selection criterion.
Claim 28
Dependent Claim
16 words
The apparatus of claim 25, wherein the field existence operator is implied by the selection criterion.
Claim 29
Independent Claim
108 words
A method of querying arbitrarily structured records in a database, the method being implemented in a query engine, the query engine being executable by a processor operably connected to a memory device, and the method comprising the following steps executed in an order and repetition determined by the query engine: building, in a memory device, a query structure containing a selection criterion and information defining a query; retrieving indicia of records from the database in accordance with the query structure; evaluating each of the indicia according to the selection criterion to determine whether the indicia satisfy the selection criterion; and returning selected indicia that satisfy the selection criterion.
Claim 30
Independent Claim
108 words
A method of querying arbitrarily structured records in a database, the method being implemented in a query engine, the query engine being executable by a processor operably connected to a memory device, and the method comprising the following steps executed in an order and repetition determined by the query engine: building, in a memory device, a query structure containing a selection criterion and information defining a query; retrieving indicia of records from the database in accordance with the query structure; evaluating each of the indicia according to the selection criterion to determine whether the indicia satisfy the selection criterion; and returning selected indicia that satisfy the selection criterion.
Claim 31
Dependent Claim
13 words
The method of claim 28, wherein the query structure represents a hybrid query.
Claim 32
Dependent Claim
25 words
The method of claim 29, wherein the hybrid query corresponds to a hybrid query structure having a full-text selection criterion and a non-full-text selection criterion.
Claim 33
Dependent Claim
18 words
The method of claim 28, wherein retrieving further comprises using an index to find the indicia of records.
Claim 34
Dependent Claim
40 words
The method of claim 31, wherein the index is selected from the group consisting of: an alternate-key index; a compound alternate-key index; a simple alternate-key index; a simple alternate-key filtered index; a compound alternate-key filtered index; and a filtered index.
Claim 35
Dependent Claim
59 words
The method of claim 28, further comprising, in an order and repetition determined by the query engine, joining indicia corresponding to at least two arbitrarily structured records to form composite indicia of a composite arbitrarily structured record, and wherein: the evaluating step evaluates the composite indicia; and the returning step returns selected composite indicia that satisfy the selection criterion.
Claim 36
Dependent Claim
31 words
The method of claim 28, wherein the evaluating step further comprises evaluating an operator having a multi-valued operand, having one or more values corresponding thereto and arising from a single record.
Claim 37
Dependent Claim
31 words
The method of claim 34, wherein the operator is selected from the group consisting of logical operators, comparison operators, quantifier operators, aggregator operators, selector operators, field existence operators, and arithmetic operators.
Claim 38
Dependent Claim
20 words
The method of claim 34 wherein the operator is selected from the group consisting of unary operators and binary operators.
Claim 39
Dependent Claim
20 words
The method of claim 28, wherein the evaluating step further comprises evaluating an operator having an operand of unknown value.
Claim 40
Dependent Claim
31 words
The method of claim 37, wherein the operator is selected from the group consisting of logical operators, comparison operators, quantifier operators, aggregator operators, selector operators, field existence operators, and arithmetic operators.
Claim 41
Dependent Claim
38 words
The method of claim 28, wherein the evaluating step further comprises evaluating an operator effective to distill a multi-value operand, having one or more values corresponding thereto and arising from a single record, into a single result value.
Claim 42
Dependent Claim
12 words
The method of claim 39, wherein the operator is an aggregrator operator.
Claim 43
Dependent Claim
21 words
The method of claim 40, wherein the aggregator operator is selected from a universal quantifier operator and an existential quantifier operator.
Claim 44
Dependent Claim
12 words
The method of claim 39, wherein the operator is a selector operator.
Claim 45
Dependent Claim
27 words
The method of claim 42, wherein the selector operator is selected from the group consisting of a FIRST operator, a LAST operator, and an NTH occurrence operator.
Claim 46
Dependent Claim
13 words
The method of claim 39, wherein the operator is a field existence operator.
Claim 47
Dependent Claim
17 words
The method of claim 44, wherein the field existence operator is explicitly stated in the selection criterion.
Claim 48
Dependent Claim
16 words
The method of claim 44, wherein the field existence operator is implied by the selection criterion.
Claim 49
Dependent Claim
84 words
A memory device storing data structures containing executables, and data associated therewith, the executables being effective to be executed by a processor operably connected to the memory device, the data structures comprising: arbitrarily structured records stored in the memory device; a query structure stored in the memory device and representing a selection criterion; and a query engine data structure stored in the memory device to be executable by the processor to build the query structure and to retrieve indicia of records satisfying the query.
Claim 50
Dependent Claim
84 words
A memory device storing data structures containing executables, and data associated therewith, the executables being effective to be executed by a processor operably connected to the memory device, the data structures comprising: arbitrarily structured records stored in the memory device; a query structure stored in the memory device and representing a selection criterion; and a query engine data structure stored in the memory device to be executable by the processor to build the query structure and to retrieve indicia of records satisfying the query.
Claim 51
Dependent Claim
27 words
The memory device of claim 47, wherein the query structure further comprises a hybrid query data structure containing a full-text selection criterion and a non-full-text selection criterion.
Claim 52
Dependent Claim
58 words
The memory device of claim 47 further comprising an index effective to be used by the query engine data structure during execution thereof to satisfy the query, the index being selected from the group consisting of: a compound alternate-key index; a simple alternate-key index; a simple alternate-key filtered index; a compound alternate-key filtered index; and a filtered index.
Claim 53
Dependent Claim
48 words
The memory device of claim 47 further comprising operator data structures corresponding to operators selected from the group consisting of: logical operators; comparison operators; quantifier operators; aggregator operators; selector operators; field existence operators; arithmetic operators; unary operators; binary operators; existential quantifier operators; universal quantifier operators; and distilling operators.
Claim 54
Independent Claim
124 words
An apparatus for querying arbitrarily structured records in a database, the apparatus comprising: a processor for executing a query engine; a memory device, operably connected to the processor, the memory device containing the query engine, a query structure associated therewith, a selection criterion, and information defining a query corresponding to the selection criterion; a storage device operably connected to the memory device and containing arbitrarily structured records in a heterogeneous database; the memory device containing indicia corresponding to the arbitrarily structured records in the heterogeneous database; the processor, wherein the query engine is effective to evaluate each of the indicia according to the selection criterion to determine whether the indicia satisfy the selection criterion; and to return selected indicia that satisfy the selection criterion.
Claim 55
Independent Claim
124 words
An apparatus for querying arbitrarily structured records in a database, the apparatus comprising: a processor for executing a query engine; a memory device, operably connected to the processor, the memory device containing the query engine, a query structure associated therewith, a selection criterion, and information defining a query corresponding to the selection criterion; a storage device operably connected to the memory device and containing arbitrarily structured records in a heterogeneous database; the memory device containing indicia corresponding to the arbitrarily structured records in the heterogeneous database; the processor, wherein the query engine is effective to evaluate each of the indicia according to the selection criterion to determine whether the indicia satisfy the selection criterion; and to return selected indicia that satisfy the selection criterion.