From: Marc Cromme Date: Fri, 16 Jun 2006 12:54:55 +0000 (+0000) Subject: added section on explain, search, scan and on PQN X-Git-Tag: before.bug.529~19 X-Git-Url: http://git.indexdata.com/?p=idzebra-moved-to-github.git;a=commitdiff_plain;h=d2f556b08050918081e72d18c73b817b9f41aaf9 added section on explain, search, scan and on PQN --- diff --git a/doc/querymodel.xml b/doc/querymodel.xml index b067c98..71cca4d 100644 --- a/doc/querymodel.xml +++ b/doc/querymodel.xml @@ -1,5 +1,5 @@ - + Query Model @@ -14,15 +14,20 @@ to the international standards Z39.50 and SRU, - and implement the query model defined there. - Unfortunately, the Z39.50 query model has only defined a binary + and implement the + type-1 Reverse Polish Notation (RPN) query + model defined there. + Unfortunately, this model has only defined a binary encoded representation, which is used as transport packaging in the Z39.50 protocol layer. This representation is not human readable, nor defines any convenient way to specify queries. - - + + Since the type-1 (RPN) + query structure has no direct, useful string + representation, every origin application needs to provide some + form of mapping from a local query notation or representation to it. + @@ -31,50 +36,110 @@ Index Data has defined a textual representaion in the Prefix Query Format, short - PQF, which then has been adopted by other - parties developing Z39.50 software. It is also often referred to as + PQF, which mappes + one-to-one to binary encoded + type-1 RPN query packages. + It has been adopted by other + parties developing Z39.50 software, and is often referred to as Prefix Query Notation, or in short - PQN, and is thoroughly explained in - . + PQN. See + for further explanaitions and + descriptions of Zebra's capabilities. - - Common Query Language (CQL) - - In addition, Zebra can be configured to understand and map the - Common Query Language - (CQL) - to PQF. See an introduction on the mapping to the internal query - representation in + + The query model of the type-1 RPN, + expressed in PQF/PQN is natively supported. + On the other hand, the default SRU + webservices Common Query Language + CQL is not natively supported. + + + Zebra can be configured to understand and map CQL to PQF. See . - - Query types + + Operation types + Zebra supports all of the three different + Z39.50/SRU operations defined in the + standards: explain, search, + and scan. A short description of the + functionality and purpose of each is quite in order here. - - Explain Queries + + Explain Operation + The syntax of Z39.50/SRU queries is + well known to any client, but the specific + semantics - taking into account a + particular servers functionalities and abilities - must be + discovered from case to case. Enters the + explain operation, which provides the means + for learning which + fields (also called + indexes or access points + are provided, which default parameter the server uses, which + retrieve document formats are defined, and which specific parts + of the general query model are supported. + + + The Z39.50 embeddes the explain operation + by perfoming a + search in the magic + IR-Explain-1 database; + see . + + + In SRU, explain is an entirely seperate + operation, which returns an Zeerex + XML record according to the + structure defined by the protocol. + + + In both cases, the information gathered through + explain operations can be used to + auto-configure a client user interface to the servers + capabilities. - - Search Queries + + Search Operation + Search and retrieve interactions are the raison d'être. + They are used to query the remote database and + return search result documents. Search queries span from + simple free text searches to nested complex boolean queries, + targeting specific indexes, and possibly enhanced with many + query semantic specifications. Search interactions are the heart + and soul of Z39.50/SRU servers. - - Scan Queries + + Scan Operation + + The scan operation is a helper functionality, + which operates on one index or access point a time. + + It provides + the means to investigate the content of specific indexes. + Scanning an index returns a handfull of terms actually fond in + the indexes, and in addition the scan + operation returns th enumber of documents indexed by each term. + A search client can use this information to propose proper + spelling of search terms, to auto-fill search boxes, or to + display controlled vocabularies.