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
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.
(PHP 4 >= 4.0.5, PECL yaz >= 0.9.0)
yaz_ccl_conf — Configure CCL parser
This function configures the CCL query parser for a server with definitions of access points (CCL qualifiers) and their mapping to RPN.
To map a specific CCL query to RPN afterwards call the yaz_ccl_parse() function.
The connection resource returned by yaz_connect().
An array of configuration. Each key of the array is the name of a CCL field and the corresponding value holds a string that specifies a mapping to RPN.
The mapping is a sequence of attribute-type, attribute-value pairs. Attribute-type and attribute-value is separated by an equal sign (=). Each pair is separated by white space.
Additional information can be found on the » CCL page.
No value is returned.
In the example below, the CCL parser is configured to support three CCL fields: ti, au and isbn. Each field is mapped to their BIB-1 equivalent. It is assumed that variable $id is the connection ID.
Example #1 CCL configuration
$fields = array(
"ti" => "1=4",
"au" => "1=1",
"isbn" => "1=7"
- yaz_ccl_parse() - Invoke CCL Parser