Index Server includes full proximity data, indicating the location of one word in relation to another. Some indexing systems do not store proximity data. Removing proximity data can result in smaller indexes; however, a user can't look for phrases because the index doesn't know where one word appeared relative to another. As part of the result-set ranking scheme, the closer the searched-for words are to each other, the higher the rank that they are given, until the point that they are adjacent, becoming a phrase and raising the rank higher still.
Using a Database Connector
Index Server interfaces with IIS in a manner very similar to the way that SQL Server™ does. Rather than using the ODBC connector, Index Server uses its own connector model, which offers several advantages while remaining familiar to administrators. The database returns the results, and the database connector converts them into a Web page which is delivered to the user.
Index Server uses an identical model to resolve its queries using a program that converts queries from search forms into a format that's compatible with Index Server indexes. The system executes the query and the results are converted into a Web page and returned to the user.
The database connector uses helper files, called IDC files, to assist in the query conversion from the Web form. It also uses a helper file, called an HTX file, that specifies how the results should be formatted and displayed to the user. Index Server extends this model. Instead of using IDC files, it uses IDQ files, which have a very similar structure and format. Index Server also uses advanced HTX files to format results. These advanced HTX files include a few extensions to provide for features of Index Server query results that have no parallel in database results.
The Index Server query process is shown in Figure 5.
Figure 5 - Query Process
In the first step of querying, the browser connects to the server, which returns a search form. The user fills in the search form and then presses the Submit, Go, or Execute Query button, which sends the query back to the server.
One of the elements of the search form is a reference to an IDQ file. The IIS server looks at the reference to the IDQ file and forwards the request to the Index Server.
Index Server looks at the contents of the IDQ file and the search form that the user filled in. All of this data is then converted into a proper query that it can execute against the indexes.
In the third panel of Figure 5, the Index Server takes the query results which come back from the indexes. One of the lines in the IDQ file specifies an HTX file, which is used to format the output.
Then, using the query results and the contents of the HTX file, Index Server builds a results page in HTML. This is then sent back to the IIS server, which in turn forwards it to the browser.
Taking a Closer Look at HTML, IDQ and HTX
This section briefly discusses HTML forms, IDQ files and HTX files. It is not intended to provide complete specifications for HTML, IDQ or HTX files and syntax, but rather to give a better understanding of how Index Server interacts with IIS.