Iterators for Applying Term Occurrence-Level Constraints in Natural Language Searching
First Claim
1. At least one computer-readable storage medium having computer-executable instructions stored thereon which, when executed by a computer system, cause the computer system to perform a method comprising:
- receiving at least one natural language input query;
defining at least one term occurrence-level constraint applicable to the input query;
identifying at least one fact requested in the input query;
instantiating at least one iterator to traverse at least one fact index to identify at least one candidate fact that is responsive to the input query;
traversing the iterator through at least a portion of the fact index;
receiving at least one candidate fact from the iterator, wherein the candidate fact includes at least one term occurrence;
applying the term occurrence-level constraint to the term occurrence; and
selecting the candidate fact for inclusion in search results for the input query, based at least in part on applying the term occurrence-level constraint to the term occurrence.
3 Assignments
0 Petitions
Accused Products
Abstract
Tools and techniques are described that relate to iterators for applying term occurrence-level constraints in natural language searching. These tools may receive a natural language input query, and define term occurrence-level constraints applicable to the input query. The methods may also identify facts requested in the input query, and may instantiate an iterator to traverse a fact index to identify candidate facts responsive to the input query. This iterator may traverse through at least a portion of the fact index. The methods may receive candidate facts from this iterator, with these candidate facts including terms, referred to as term-level occurrences. The methods may apply the term occurrence-level constraints to the term-level occurrences. The methods may select the candidate fact for inclusion in search results for the input query, based at least in part on applying the term occurrence-level constraint.
-
Citations
20 Claims
-
1. At least one computer-readable storage medium having computer-executable instructions stored thereon which, when executed by a computer system, cause the computer system to perform a method comprising:
-
receiving at least one natural language input query; defining at least one term occurrence-level constraint applicable to the input query; identifying at least one fact requested in the input query; instantiating at least one iterator to traverse at least one fact index to identify at least one candidate fact that is responsive to the input query; traversing the iterator through at least a portion of the fact index; receiving at least one candidate fact from the iterator, wherein the candidate fact includes at least one term occurrence; applying the term occurrence-level constraint to the term occurrence; and selecting the candidate fact for inclusion in search results for the input query, based at least in part on applying the term occurrence-level constraint to the term occurrence. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. At least one computer-readable storage medium having computer-executable instructions stored thereon which, when executed by a computer system, cause the computer system to perform a method comprising:
-
receiving at least one natural language input query; defining a plurality of term occurrence-level constraints applicable to the input query; decomposing the input query into a plurality of sub-queries, wherein a first sub-query relates to a first fact requested in the input query, and wherein at least a second sub-query relates to a second fact requested in the input query; instantiating a first iterator to identify at least a first candidate fact that is responsive to the input query and that relates to the first fact; instantiating at least a second iterator to identify at least a first candidate fact that is responsive to the input query and that relates to the second fact; traversing the first and second iterators through at least a portion of a fact index; receiving the first candidate fact from the first iterator, wherein the first candidate fact includes at least a first term occurrence; receiving the second candidate fact from the second iterator, wherein the second candidate fact includes at least a second term occurrence; performing at least one fact-level operation on at least the first and second candidate facts; and selecting search results for the input query, based at least in part on performing the fact-level operation on the candidate facts. - View Dependent Claims (13, 14, 15, 16, 17)
-
-
18. At least one computer-readable storage medium having computer-executable instructions stored thereon which, when executed by a computer system, cause the computer system to perform a method comprising:
-
receiving at least one natural language input query; defining a plurality of term occurrence-level constraints applicable to the input query; decomposing the input query into a plurality of sub-queries, wherein a first sub-query relates to a first fact requested in the input query, and wherein at least a second sub-query relates to a second fact requested in the input query; instantiating a first iterator to identify at least a first candidate fact that is responsive to the input query and that relates to the first fact; instantiating at least a second iterator to identify at least a first candidate fact that is responsive to the input query and that relates to the second fact; traversing the first and second iterators through at least a portion of a fact index; receiving the first candidate fact from the first iterator, wherein the first candidate fact includes at least a first term occurrence; receiving the second candidate fact from the second iterator, wherein the second candidate fact includes at least a second term occurrence; applying the term occurrence-level constraints to the first and second term occurrences; and selecting search results for the input query, based at least in part on applying the term occurrence-level constraints to the term occurrences. - View Dependent Claims (19, 20)
-
Specification