Scoping queries in a search engine
First Claim
1. A computer program product for use in a system including a data store and a property store, wherein the data store is indexed by a content index that is built using terms gathered from objects contained in the data store, and wherein the property store contains items that identify various properties of the data objects including folder locations of the data objects in the data store, the computer program product comprising one or more computer-readable media having computer-executable instructions for implementing a method for scoping a search of the data store in order to identify and return a desired subset of objects contained within one or more folders in the data store, and doing so without accessing the property store, wherein the search includes one or more terms, the method comprising:
- an act of indexing one or more unique folder identifiers in the content index that correspond to one or more folders located in the data store whenever the content index is built and altered, so that the one or more folder identifiers is implicitly included in a search of the content index;
an act of receiving a search request from a user for documents that include the one or more search terms, the search request also including at least one of the folder identifiers;
an act of identifying a first list of the content index that contains document identifiers, to facilitate scoping, by using the one or more search terms;
an act of identifying a second list of the content index that contains document identifiers by using the one or more folder identifiers from the content index; and
an act of comparing the second list of document identifiers against the first list of document identifiers to identify a subset of document identifiers that appear in both the first and second lists, such that the subset of document identifiers can be returned without having to access to the property store to determine the location of the documents in the data store.
2 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods for scoping a search. When a content index for electronic data is built, one or more scope restrictions are included in the content index. The scope restriction may be, for example, a root folder identifier, a mailbox identifier, or a URL. Because the scope restriction is included in the content index random access of the property store to determine the scope is avoided. Rather, the scope restriction is implicitly added to a search that uses the content index. By including a scope restriction in the search query, the search results identified from the content index are limited to results that match the scope restriction. Advantageously, the effect of including the scope restriction in the search is ignored if the search results are relatively small or when including the scope restriction provides little benefit.
24 Citations
32 Claims
-
1. A computer program product for use in a system including a data store and a property store, wherein the data store is indexed by a content index that is built using terms gathered from objects contained in the data store, and wherein the property store contains items that identify various properties of the data objects including folder locations of the data objects in the data store, the computer program product comprising one or more computer-readable media having computer-executable instructions for implementing a method for scoping a search of the data store in order to identify and return a desired subset of objects contained within one or more folders in the data store, and doing so without accessing the property store, wherein the search includes one or more terms, the method comprising:
-
an act of indexing one or more unique folder identifiers in the content index that correspond to one or more folders located in the data store whenever the content index is built and altered, so that the one or more folder identifiers is implicitly included in a search of the content index; an act of receiving a search request from a user for documents that include the one or more search terms, the search request also including at least one of the folder identifiers; an act of identifying a first list of the content index that contains document identifiers, to facilitate scoping, by using the one or more search terms; an act of identifying a second list of the content index that contains document identifiers by using the one or more folder identifiers from the content index; and an act of comparing the second list of document identifiers against the first list of document identifiers to identify a subset of document identifiers that appear in both the first and second lists, such that the subset of document identifiers can be returned without having to access to the property store to determine the location of the documents in the data store. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. In a system including a data store and a property store, wherein the data store is indexed by a content index that is built using terms gathered from objects contained in the data store, and wherein the property store contains items that identify various properties of the data objects including folder locations of the data objects in the data store, a method for scoping a search of the data store in order to identify and return a desired subset of objects contained within one or more folders in the data store, and doing so without accessing the property store, wherein the search includes one or more terms, the method comprising:
-
an act of indexing one or more scope restrictions in the content index; an act of receiving a search request that includes one or more search terms from a user for documents that include the one or more search terms, wherein the one or more search terms provided in the search request are different than the one or more scope restrictions in the content index; an act of identifying a first list of the content index that contains document identifiers, to facilitate scoping, by using the one or more search terms, and such that the first list is a list of document identifiers that include the one or more search terms; an act of identifying a second list of the content index that contains document identifiers by using the at least one of the scope restrictions from the content index, and such that the second list is a list of document identifiers that include the at least one scope restriction, the at least one scope restriction being different than the one or more search terms; upon determining that the list of document identifiers of the first list is large in comparison to the list of document identifiers associated with the second list, identifying a subset of document identifiers that appear in both the first and second lists by comparing the second list of document identifiers against the first list of document identifiers; and upon determining that the list of document identifiers of the first list is small in comparison to the list of document identifiers associated with the second list, refraining from identifying the subset of document identifiers that appear in both the first and second lists. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A computer program product for use in a system including a data store and a property store, wherein the data store is indexed by a content index that is built using terms gathered from objects contained in the data store, and wherein the property store contains items that identify various properties of the data objects including folder locations of the data objects in the data store, the computer program product comprising one or more computer-readable media having computer-executable instructions for implementing a method for scoping a search of the data store in order to identify and return a desired subset of objects contained within one or more folders in the data store, and doing so without accessing the property store, wherein the search includes one or more terms, the method comprising:
-
an act of indexing one or more scope restrictions in the content index; an act of receiving a search request that includes one or more search terms from a user for documents that include the one or more search terms, wherein the one or more search terms provided in the search request are different than the one or more scope restrictions in the content index; an act of identifying a first list of the content index that contains document identifiers, to facilitate scoping, by using the one or more search terms, and such that the first list is a list of document identifiers that include the one or more search terms; an act of identifying a second list of the content index that contains document identifiers by using the at least one of the scope restrictions from the content index, and such that the second list is a list of document identifiers that include the at least one scope restriction, the at least one scope restriction being different than the one or more search terms; upon determining that the list of document identifiers of the first list is large in comparison to the list of document identifiers associated with the second list, identifying a subset of document identifiers that appear in both the first and second lists by comparing the second list of document identifiers against the first list of document identifiers; and upon determining that the list of document identifiers of the first list is small in comparison to the list of document identifiers associated with the second list, refraining from identifying the subset of document identifiers that appear in both the first and second lists. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32)
-
Specification