yaz_search() prépare une recherche sur le serveur identifié par id. type représente le type de requête : seul RPN est supporté actuellement, et dans ce cas, le troisième argument est un préfixe de notation de requête utilisé par YAZ. Comme pour yaz_connect(), yaz_search() n'est pas bloquante, et ne fait que préparer la recherche pour exécution ultérieure, avec yaz_wait().
Les requêtes RPN sont des représentation textuelles des requêtes de type Type-1, comme définit dans le standard Z39.50. Cependant, dans la représentation textuelle utilisée par YAZ, une notation à préfixage est utilisée, c'est-à-dire que l'opérateur précède l'opérande. La chaîne de requête est une séquence de mots réservés, où les espaces sont ignorés, à moins qu'ils n'aient été mis entre guillemets doubles. Les mots réservés qui commencent par un arobase (@) sont considérés comme des opérateurs et traités comme tels.
Tableau 1. Opérateurs RPN
Syntaxe | Description |
---|---|
@and query1 query2 | intersection des requêtes query1 et query2 |
@or query1 query2 | union des requêtes query1 et query2 |
@;not query1 query2 | requêtes "query1 et non(query2)" |
@set name | nomme le résultat |
@attrset set query | spécifie le jeu d'attributs de la requête. Cette construction n'est autorisée qu'une seule fois, au début d'une requête. |
@attr set type=value query | Applique les attributs à une requête. Le type et la valeur sont des entiers indiquant les types et valeurs des attributs, dans cet ordre. Le jeu, si fourni, spécifie le jeu d'attributs utilisé. |
Vous pouvez trouver plus d'informations sur les requêtes et attributs sur le site de Z39.50 Maintenance Agency.
Note : Si vous préférez une notation plus conviviale, utilisez l'analyseur CCL : yaz_ccl_conf() et yaz_ccl_parse().
Précédent | Sommaire | Suivant |
yaz_schema | Niveau supérieur | yaz_set_option |