Method and apparatus for operating a database
First Claim
Patent Images
1. A method of processing a database service query, comprising:
- receiving a service query,obtaining a sum of terms associated with the service query by expanding at least one nested term into one or more un-nested terms,evaluating the sum of terms as a plurality of SQL instructions, wherein the sum of terms comprises one or more positive terms and one or more negative terms,determining a plurality of results associated with the sum of terms by executing, using a processor, the SQL instructions,collecting, into a first list, any of the results associated with the one or more negative terms,collecting, into a second list, any of the results associated with the one or more positive terms while omitting from the second list any of the results that are in the first list, andproviding one or more of the results from the second list to a user.
3 Assignments
0 Petitions
Accused Products
Abstract
A method of processing a database service query is provided. In one embodiment, the method includes receiving a service query, applying principles of logic to the service query to obtain a sum of terms, evaluating each term as one or more separate SQL instructions, and executing each separate SQL instruction. Preferably, the sum of terms is additionally expanded to remove NOT operators, using for example Boolean logic.
62 Citations
19 Claims
-
1. A method of processing a database service query, comprising:
-
receiving a service query, obtaining a sum of terms associated with the service query by expanding at least one nested term into one or more un-nested terms, evaluating the sum of terms as a plurality of SQL instructions, wherein the sum of terms comprises one or more positive terms and one or more negative terms, determining a plurality of results associated with the sum of terms by executing, using a processor, the SQL instructions, collecting, into a first list, any of the results associated with the one or more negative terms, collecting, into a second list, any of the results associated with the one or more positive terms while omitting from the second list any of the results that are in the first list, and providing one or more of the results from the second list to a user. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A system for processing a directory service query, comprising:
-
a database operable to store arbitrary data; and a processor that is communicatively coupled to the database and that processes a service query by; obtaining a sum of terms by expanding at least one nested term into one or more un-nested terms, evaluating the sum of terms as a plurality of SQL instructions, wherein the sum of terms comprises one or more positive terms and one or more negative terms, determining a plurality of results associated with the sum of terms by executing the SQL instructions, collecting, into a first list, any of the results associated with the one or more negative terms, collecting, into a second list, any of the results associated with the one or more positive terms while omitting from the second list any of the results that are in the first list, and providing one or more of the results from the second list to a user. - View Dependent Claims (11)
-
-
12. A method of processing a directory service query, comprising:
-
receiving a directory service query, obtaining a sum of terms by expanding at least one nested term into one or more un-nested terms, mapping the sum of terms to a plurality of SQL instructions, wherein the sum of terms comprises one or more positive terms and one or more negative terms, determining a plurality of results associated with the sum of terms by executing, using a processor, the SQL instructions, collecting, into a first list, any of the results associated with the one or more negative terms, collecting, into a second list, any of the results associated with the one or more positive terms while omitting from the second list any of the results that are in the first list, and providing one or more of the results from the second list to a user. - View Dependent Claims (13, 14, 15, 16)
-
-
17. A system for processing a directory service query, comprising:
-
a database that is operable to store arbitrary data; and a processor that is communicatively coupled to the database and that processes a directory service query by; obtaining a sum of terms by expanding at least one nested term into one or more un-nested terms, mapping the sum of terms to a plurality of SQL instructions, wherein the sum of terms comprises one or more positive terms and one or more negative terms, determining a plurality of results associated with the sum of terms by executing the SQL statements, collecting, into a first list, any of the results associated with the one or more negative terms, and collecting, into a second list, any of the results associated with the one or more positive terms while omitting from the second list any of the results that are in the first list, and providing only the results from the second list to a user. - View Dependent Claims (18)
-
-
19. A method of processing a database service query, comprising:
-
receiving a service query; obtaining a sum of terms associated with the service query by; expanding at least one nested term into one or more un-nested terms; expanding at least one term associated with at least one NOT operator into at least one negative term and at least one positive term; and if the service query comprises a term having at least two NOT operators, deleting from the sum of terms a third-order term corresponding to the term having at least two NOT operators; evaluating the sum of terms as a plurality of SQL instructions; obtaining a plurality of results by executing, using a processor, the SQL instructions, wherein each term of the sum of terms is associated with one or more of the results; generating a first list comprising one or more of the results associated with the at least one negative term; generating a second list comprising one or more of the results associated with the at least one positive term, wherein the first list and the second list are generated by the processor; removing or omitting from the second list at least one of the results associated with the at least one negative term; and providing one or more of the results from the second list to a user.
-
Specification