yaz_ccl_conf
(PHP 4 >= 4.0.5, PECL yaz >= 0.9.0)
yaz_ccl_conf — Кофигурирует CCL-парсер
Описание
$id
, array $config
)Эта функция конфигурирует CCL-парсер запросов для сервера с определениями точек доступа (CCL-квалификаторов) и их отображения в RPN.
Для отображения специфичечкого CCL-запроса к RPN вызовите затем функцию yaz_ccl_parse().
Список параметров
-
id
-
Идентификатор ресурса, возвращаемый функцией yaz_connect().
-
config
-
Массив настроек. Каждый ключ массива - это имя CCL-поля и соответствующее значение, содержащее строку, которая определяет отображение в RPN.
Отображение - это последовательность пар аттрибут-тип, аттрибут-значение. Аттрибут-тип и аттрибут-значение разделены знаком равенства (=). Каждая пара отделяется пробелом.
Дополнительную информация можно найти на странице » CCL.
Возвращаемые значения
Эта функция не возвращает значения после выполнения.
Примеры
В примере CCL-парсер настроен для поддержки трех полей CCL: ti, au и isbn. Каждое поле отображается в его BIB-1 эквивалент. Принимается, что переменная $id - это целевой ID.
Пример #1 Найстройка CCL
<?php
$fields = array(
"ti" => "1=4",
"au" => "1=1",
"isbn" => "1=7"
);
yaz_ccl_conf($id, $fields);
?>
Коментарии
The YAZ CCL parser has extensive functionality beyond what is described here. For the full story, as well as a detailed description of the CCL language, please look at
http://www.indexdata.dk/yaz/doc/tools.tkl#CCL
The flexibility of the parser makes it easy, by setting up separate profiles for servers with different characteristics, to produce a client that performs different query mappings for different servers. Also, because you can configure operators, truncation characters, etc., in the CCL parser, it is simple to make it fit into almost any application.