Поиск с помощью булевых логических операторов.

Поиск с помощью просмотра индексов.

Большинство современных систем позволяют пользователю просматривать части файла инвертированных индексов, организованного в алфавитном порядке. При этом пользователь может видеть слова или фразы, по которым можно проводить поиск, их вариации (присутствующие в неконтролируемых полях), и таким образом найти точную фразу или её форму для ввода при поиске по пофразово проиндексированному полю. Эта функция помогает сократить количество ложно выданных из-за использования усечения или поиска с помощью пословного индексирования документов.

Многие системы при выдаче алфавитного списка индексов для каждого термина дополнительно указывают количество записей, содержащих искомый термин (postings). Это помогает при формировании стратегии поиска. Некоторые системы позволяют перемещение вверх или вниз по списку, другие требуют от пользователя указать пределы выдаваемого списка, а некоторые выводят лишь ограниченное количество терминов сверху и снизу указанного термина.

Поиск по словарной близости (proximity searching).

Он является особенно мощной функцией для пословно проиндексированных полей.

Поиск по словарной близости позволяет пользователю посткоординировать фразы из пословно проиндексированных полей, таких как "название" и "реферат". Эта функция становится возможной из-за наличия информации о позициях при каждом из терминов – "входов" в файле инвертированных индексов. Эта информация представляет собой указание на поле и положение данного термина в этом поле. Пользователь, например, может сделать запрос на слово БИБЛИОТЕЧНАЯ, после которого сразу же идёт слово АВТОМАТИЗАЦИЯ в пословно или смешанно проиндексированном поле. Система в этом случае использует информацию о позициях для воссоздания фразы, даже если каждое слово представляет собой отдельный инвертированный индекс – "вход". Функции поиска по словарной близости в каждой системе могут быть разными.

Одним из способов удовлетворения сложных запросов является использование булевых логических операторов AND, OR и NOT. Они являются эквивалентами пересечения, объединения и исключения. Эти три оператора в той или иной форме можно найти практически во всех информационно-поисковых системах. С помощью оператора AND поиск сужается организацией набора, чьи элементы являются общими для обоих наборов искомых компонентов. Например, выражение МОНИТОР AND ПРИНТЕР будет выполняться с набором документов, содержащим термин МОНИТОР, и другим набором, содержащим термин ПРИНТЕР. В результате будут выданы записи, каждая из которых содержит и термин МОНИТОР, и термин ПРИНТЕР. Записи, содержащие только термин МОНИТОР, выданы не будут, так же как и записи, содержащие только термин ПРИНТЕР.

Напротив, при формулировании выражения МОНИТОР OR ПРИНТЕР будут выданы документы, содержащие хотя бы один из указанных терминов.

В случае, если выражение сформулировано как МОНИТОР NOT ПРИНТЕР, будут выданы документы, содержащие термин МОНИТОР, и притом только те из них, в которых не содержится термин ПРИНТЕР.

Используя логические операторы в сложных сочетаниях, необходимо учитывать, что существует общий порядок предпочтения (организации их выполнения), где сначала выполняется оператор NOT, затем – AND, а потом – OR. Например, в выражении МОНИТОР OR ПРИНТЕР NOT ЛАЗЕРНЫЙ AND CANON сначала будет сформирован набор документов о нелазерных принтерах, затем – набор документов, где говорится о нелазерных принтерах, выпускаемых фирмой CANON, а в результате будут выданы записи о нелазерных принтерах, выпускаемых фирмой CANON и всех дисплеях.

Большинство систем также поддерживают возможность сложного комбинирования булевых операторов, подобно выполнению арифметических операций со скобками. При этом сначала выполняются операции внутри скобок, а затем – между скобками. Таким образом, при обработке выражения (ПРИНТЕР OR МОНИТОР) AND (CANON OR EPSON) сначала будут сформированы: отдельно набор документов, содержащих информацию о принтерах или мониторах, и отдельно набор документов, содержащих информацию о фирмах, а затем с этими двумя наборами документов будет произведена операция AND, т.е. в результате будет выдан набор документов, содержащих информацию только о тех принтерах или дисплеях, которые были выпущены фирмами CANON или EPSON.

Использование стандартных функций с использованием булевых логических операторов, несмотря на многие преимущества, тем не менее, не снимает или порождает некоторые проблемы:

- очень трудно определить, насколько будет варьироваться "глубина" поиска для выдачи большего или меньшего количества информации;

- выдача – это процесс, выражаемый фразой "все или ничего", и частичное соответствие не поддерживается. Невозможно установить критерий выдачи, если говорить об уровне соответствия запроса и документов;

- выдача не может быть представлена в определённом порядке по степени уменьшения соответствия выданных документов запросу.