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.
yaz_ccl_conf
(PHP 4 >= 4.0.5, PECL yaz >= 0.9.0)
yaz_ccl_conf — CCL パーサを設定する
説明
void yaz_ccl_conf
( resource $id
, array $config
)
この関数は、アクセスポイント(CCL限定辞)が定義するサーバに関して CCL クエリパーサと RPN へのマッピングを設定します。
特定の CCL クエリを後で RPN にマップするには、 yaz_ccl_parse() 関数をコールしてください。
パラメータ
- id
-
yaz_connect() が返す接続リソース。
- config
-
設定の配列。配列の各キーが CCL フィールドの名前で、対応する値は RPN へのマッピングを指定する文字列です。
マッピングは、属性型と属性値の組が並んだものです。 属性型と属性値は、等号(=)で区切られ、 組と組の間は空白で区切られます。
詳細な情報は » CCL のページを 参照ください。
返り値
値を返しません。
例
以下の例では、CCL パーサは ti、 au、isbn という 3 つの CCL フィールドをサポートするように設定されます。各フィールドは、等価な BIB-1 へマップされます。 この例では、$id が接続 ID であることを仮定しています。
例1 CCL 設定
<?php
$fields = array(
"ti" => "1=4",
"au" => "1=1",
"isbn" => "1=7"
);
yaz_ccl_conf($id, $fields);
?>
yaz_ccl_conf
quinn at indexdata dot com
06-Mar-2005 03:09
06-Mar-2005 03:09
