Method and apparatus that evaluate an expression based upon database results
First Claim
Patent Images
1. A method of determining the Boolean truth value of an expression that incorporates an arbitrary reference to an external database, comprising the steps of:
- generating a database query that correlates to the expression;
processing said database query in whole to obtain database result information from the external database; and
resolving said expression into a Boolean truth value by analyzing said database result information.
2 Assignments
0 Petitions
Accused Products
Abstract
One step of a method of evaluating an expression includes generating a database query that is representative of the expression. Another step of the method includes processing the database query to obtain database result information from a database. The method also includes the step of resolving the expression to an expression value by analyzing the database result information. A computer readable medium that configures a processor to evaluate an expression is also disclosed.
48 Citations
20 Claims
-
1. A method of determining the Boolean truth value of an expression that incorporates an arbitrary reference to an external database, comprising the steps of:
-
generating a database query that correlates to the expression;
processing said database query in whole to obtain database result information from the external database; and
resolving said expression into a Boolean truth value by analyzing said database result information. - View Dependent Claims (2, 3, 4, 5, 6)
said expression comprises a Boolean expression.
-
-
3. The method of claim 1, wherein:
-
said database result information comprises a set of database records; and
said resolving step includes the steps of (i) obtaining a record count for said set of database records, and (ii) generating said Boolean truth value based upon said record count.
-
-
4. The method of claim 1, wherein:
-
said database result information comprises a certain number of database records if said expression evaluates to a Boolean truth value of true; and
said resolving step includes the steps of (i) determining whether said database result information includes said certain number of database records, and (ii) in response to determining that said database result information includes said certain number of database records, causing said Boolean truth value to be representative of true.
-
-
5. The method of claim 1, wherein:
-
said database result information comprises a number of database records; and
said resolving step includes the steps of (i) determining that said expression consists of a series of sub-expressions that are linked by a logical OR operator, (ii) obtaining a record count for said database result information, and (iii) in response to determining that said expression consists of said series of sub-expressions, causing said Boolean truth value to be representative of true if said record count is greater than or equal to one.
-
-
6. The method of claim 1, wherein:
-
said database result information comprises a certain number of database records if said expression evaluates to a true value; and
said resolving step includes the steps of (i) determining whether said expression consists of a series of sub-expressions that are linked by a logical AND operator, (ii) in response to determining that said expression consists of said series, determining whether said database result information includes said certain number of database records, and (iii) in response to determining that said database result information includes said certain number of database records, causing said Boolean truth value to be representative of true.
-
-
7. A method of determining the Boolean truth value of a Boolean expression that incorporates an arbitrary reference to an external database and that comprises a first sub-expression, said method comprising the steps of:
-
generating a database query that correlates to the Boolean expression;
processing said database query in whole to obtain a database result table from the external database that includes a first result row if a first database row of a database table satisfies said first sub-expression; and
resolving said Boolean expression into a truth value by analyzing said database result table. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14)
said resolving step includes the steps of (i) determining a row count for said database result table, and (ii) generating said truth value based upon said row count.
-
-
9. The method of claim 7, wherein:
-
said Boolean expression further comprises a second sub-expression and a Boolean operator which joins said first sub-expression and said second sub-expression, and said processing step includes the step of causing said database result table to include a second result row if a second database row of said database table satisfies said second sub-expression.
-
-
10. The method of claim 7, wherein:
-
said Boolean expression further comprises a plurality of additional sub-expressions and a Boolean operator that joins said first sub-expression and said plurality of additional sub-expressions, and said processing step includes the step of causing said database result table to include an additional result row for each database row of said database table that satisfies an additional sub-expression of said plurality of additional sub-expressions.
-
-
11. The method of claim 10, wherein:
-
said Boolean operator is a logical OR operator, and said resolving step includes the steps of (i) obtaining a row count for said database result table, and (ii) causing said truth value to be representative of a true value if said row count is greater than or equal to one.
-
-
12. The method of claim 10, wherein:
said resolving step includes the steps of (i) determining whether said Boolean operator is a logical OR operator, (ii) obtaining a row count for said database result table, and (iii) in response to determining that said Boolean operator is said logical OR operator, causing said truth value to be representative of a true value if said row count is greater than or equal to one.
-
13. The method of claim 10, wherein:
-
said Boolean operator is a logical AND operator, and said resolving step includes the steps of (i) obtaining a row count for said database result table, (ii) determining a sub-expression count for said Boolean expression, and (iii) causing said truth value to be representative of a true value if said row count is equal to said sub-expression count.
-
-
14. The method of claim 10, wherein:
said resolving step includes the steps of (i) determining whether said Boolean operator is a logical AND operator, (ii) obtaining a row count for said database result table, (iii) determining a sub-expression count for said Boolean expression, and (iv) in response to determining that said Boolean operator is said logical AND operator, causing said truth value to be representative of a true value if said row count is equal to said sub-expression count.
-
15. A computer readable medium that configures a processor to determine the truth value of a Boolean expression that incorporate an arbitrary reference to an external database that comprises a first sub-expression, said computer readable medium comprising:
-
a plurality of instructions which when executed by said processor causes said processor to (i) generate a database query that correlates to said Boolean expression, (ii) process said database query in whole to obtain a database result table from the external database that includes a first result row if a first database row of a database table satisfies said first sub-expression, (iii) resolve said Boolean expression into a truth value by analyzing said database result table. - View Dependent Claims (16, 17, 18, 19, 20)
said Boolean expression further comprises a second sub-expression and a Boolean operator which joins said first sub-expression and said second sub-expression, and said plurality of instructions which when executed by said processor further causes said processor to include a second result row in said database result table if a second database row of said database table satisfies said second sub-expression.
-
-
18. The computer readable medium of claim 15, wherein:
-
said Boolean expression further comprises a plurality of additional sub-expressions and a Boolean operator that joins said first sub-expression and said plurality of additional sub-expressions, and said plurality of instructions which when executed by said processor further causes said processor to include an additional result row in said database result table for each database row of said database table that satisfies an additional sub-expression of said plurality of additional sub-expressions.
-
-
19. The computer readable medium of claim 18, wherein:
-
said Boolean operator is a logical OR operator, and said plurality of instructions which when executed by said processor further causes said processor to (i) obtain a row count for said database result table, and (ii) set said truth value such said truth value is representative of a true value if said row count is greater than or equal to one.
-
-
20. The computer readable medium of claim 18, wherein:
-
said Boolean operator is a logical AND operator, and said plurality of instructions which when executed by said processor further causes said processor to (i) obtain a row count for said database result table, (ii) determine a sub-expression count for said Boolean expression, and (iii) set said truth value such that said truth value is representative of a true value if said row count is equal to said sub-expression count.
-
Specification