X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=doc%2Ftools.xml;h=f995950450b1dfce108091299eb67f7ecc1b17fd;hb=bd7e251dac1b07c54884d26295f66b90cfb23131;hp=33de66ecc40d465f336f4caf19a6d8e45f32007b;hpb=fe4182bf1ca7bebcb3172cde916d4467c2154e7b;p=yaz-moved-to-github.git diff --git a/doc/tools.xml b/doc/tools.xml index 33de66e..f995950 100644 --- a/doc/tools.xml +++ b/doc/tools.xml @@ -1,13 +1,13 @@ - - Supporting Tools + + Supporting Tools In support of the service API - primarily the ASN module, which - provides the programmatic interface to the Z39.50 APDUs, &yaz; contains + provides the pro-grammatic interface to the Z39.50 APDUs, &yaz; contains a collection of tools that support the development of applications. - Query Syntax Parsers + Query Syntax Parsers Since the type-1 (RPN) query structure has no direct, useful string @@ -83,7 +83,7 @@ int p_query_attset (const char *arg); AttributeType ::= integer. - AttributeValue ::= integer. + AttributeValue ::= integer || string. Complex ::= Operator QueryStruct QueryStruct. @@ -156,14 +156,15 @@ int p_query_attset (const char *arg); - The EUROPAGATE research project working under the Libraries programme + The EUROPAGATE + research project working under the Libraries programme of the European Commission's DG XIII has, amongst other useful tools, implemented a general-purpose CCL parser which produces an output structure that can be trivially converted to the internal RPN - representation of YAZ (The Z_RPNQuery structure). + representation of &yaz; (The Z_RPNQuery structure). Since the CCL utility - along with the rest of the software - produced by EUROPAGATE - is made freely available on a liberal license, it - is included as a supplement to YAZ. + produced by EUROPAGATE - is made freely available on a liberal + license, it is included as a supplement to &yaz;. CCL Syntax @@ -253,7 +254,7 @@ int p_query_attset (const char *arg); index, such as title (ti) and author indexes (au). The CCL standard itself doesn't specify a particular set of qualifiers, but it does suggest a few short-hand notations. You can customize the CCL parser - to support a particular set of qualifiers to relect the current target + to support a particular set of qualifiers to reflect the current target profile. Traditionally, a qualifier would map to a particular use-attribute within the BIB-1 attribute set. However, you could also define qualifiers that would set, for example, the @@ -348,14 +349,14 @@ struct ccl_rpn_node *ccl_find_str (CCL_bibset bibset, const char *str, which takes the CCL profile (bibset) and query (str) as input. Upon successful completion the RPN - tree is returned. If an error eccur, such as a syntax error, the integer + tree is returned. If an error occur, such as a syntax error, the integer pointed to by error holds the error code and pos holds the offset inside query string in which the parsing failed. - An english representation of the error may be obtained by calling + An English representation of the error may be obtained by calling the ccl_err_msg function. The error codes are listed in ccl.h. @@ -386,7 +387,7 @@ struct ccl_rpn_node *ccl_find_str (CCL_bibset bibset, const char *str, - Object Identifiers + Object Identifiers The basic YAZ representation of an OID is an array of integers, @@ -632,7 +633,7 @@ typedef struct oident - Nibble Memory + Nibble Memory Sometimes when you need to allocate and construct a large, @@ -660,6 +661,7 @@ typedef struct oident void nmem_reset(NMEM n); int nmem_total(NMEM n); void nmem_init(void); + void nmem_exit(void); @@ -675,15 +677,18 @@ typedef struct oident allocated on the handle. - - - The nibble memory pool is shared amonst threads. POSIX - mutex'es and WIN32 Critical sections are introduced to keep the - module thread safe. On WIN32 function nmem_init() - initialises the Critical Section handle and should be called once - before any other nmem function is used. - - + + The nibble memory pool is shared amongst threads. POSIX + mutex'es and WIN32 Critical sections are introduced to keep the + module thread safe. Function nmem_init() + initializes the nibble memory library and it is called automatically + the first time the YAZ.DLL is loaded. &yaz; uses + function DllMain to achieve this. You should + not call nmem_init or + nmem_exit unless you're absolute sure what + you're doing. Note that in previous &yaz; versions you'd have to call + nmem_init yourself. + @@ -698,7 +703,7 @@ typedef struct oident sgml-indent-step:1 sgml-indent-data:t sgml-parent-document: "yaz.xml" - sgml-local-catalogs: "../../docbook/docbook.cat" + sgml-local-catalogs: nil sgml-namecase-general:t End: -->