yaz_search
(PHP 4 >= 4.0.1, PECL yaz >= 0.9.0)
yaz_search — Подготовка поиска
Описание
$id
, string $type
, string $query
) : boolyaz_search() подготавливает поиск на заданном соединении.
Также как и yaz_connect() эта функция неблокирующая и только подготавливает условия поиска, который будет выполнен функцией yaz_wait().
Список параметров
-
id -
Дескриптор соединения, возвращаемый функцией yaz_connect().
-
type -
Данный параметр представляет собой тип запроса. Поддерживается только тип
"rpn". В этом случае третий аргумент определяет запрос Type-1 в префиксной нотации запросов. -
query -
Запрос RPN является текстовым представлением запроса Type-1, как указано в стандарте Z39.50. Тем не менее в текстовом представлении, используемом в YAZ, применяется префиксная нотация, т.е. оператор предшествует операнду. Строка запроса представляет собой последовательность лексем(токенов), в которой игнорируются пробельные символы, кроме тех, что находятся между двойными кавычками. Лексемы, которые начинаются с символа
@являются операторами, иначе они воспринимаются как поисковый термин.Операторы RPN Конструкция Описание @andquery1 query2пересечение query1 и query2 @orquery1 query2объединение query1 и query2 @notquery1 query2query1 и не query2 @setnameссылка на набор возвращаемых значений @attrsetset queryопределяет набор атрибутов setдля запросаquery. Эта конструкция доступна только один раз - в самом начале запроса.@attr[set] type=value queryустанавливает атрибуты запроса. Значения typeиvalue- целочисленные и определяют тип атрибута и тип значения соответственно. Значениеset, если оно задано, определяет настройку атрибутов.Всю информацию о доступных атрибутах вы можете найти на сайте » Z39.50 Maintenance Agency
Замечание:
Если вы хотите использовать более дружественную нотацию, используйте CCL парсер - функции yaz_ccl_conf() и yaz_ccl_parse().
Возвращаемые значения
Возвращает true в случае успешного завершения или false в случае возникновения ошибки.
Примеры
Пример #1 Примеры запросов
Вы можете использовать простые термы, например:
computer
запрос
"knuth donald"
Запрос содержит два атрибута для одной фразы.
запрос
@and @or a b @not @or c d e
(a или b) и ((c или d) и не
e).
ещё один более сложный запрос:
@attrset gils @and @attr 1=4 art @attr 1=2000 company
art встречается в заглавии (GILS,BIB-1)
и company в поставщиках.