X-Git-Url: http://lists.indexdata.dk/cgi-bin?a=blobdiff_plain;f=doc%2Fpazpar2_protocol.xml;h=f266fd7944bd7f8f9e7dcd1944840766d947479c;hb=75918f1f3466ce4347f7d178ce49a7cb87158f53;hp=7b30ca88e5c4c7714862c334348ba8c2e74b96f7;hpb=253ad845a02effdfaa46aae7c7e39741ec5c1b9c;p=pazpar2-moved-to-github.git
diff --git a/doc/pazpar2_protocol.xml b/doc/pazpar2_protocol.xml
index 7b30ca8..f266fd7 100644
--- a/doc/pazpar2_protocol.xml
+++ b/doc/pazpar2_protocol.xml
@@ -1,6 +1,6 @@
-
%local;
@@ -13,10 +13,12 @@
Pazpar2&version;
+ Index DataPazpar2 protocol7
+ Conventions and miscellaneous
@@ -24,7 +26,8 @@
The webservice protocol of Pazpar2
- DESCRIPTION
+
+ DESCRIPTION
Webservice requests are any that refer to filename "search.pz2". Arguments
are GET-style parameters. Argument 'command' is always required and specifies
@@ -32,16 +35,20 @@
request is forwarded to the HTTP server specified in the configuration
using the proxy setting.
This way, a regular webserver can host the user interface (itself dynamic
- or static HTML), and AJAX-style calls can be used from JS (or any other client-based
- scripting environment) to interact with the search logic in Pazpar2.
+ or static HTML), and Ajax-style calls can be used from JS (or any other
+ client-based scripting environment) to interact with the search logic
+ in Pazpar2.
Each command is described in sub sections to follow.
- init
+
+ init
Initializes a session.
- Returns session ID to be used in subsequent requests.
+ Returns session ID to be used in subsequent requests. If
+ a server ID is given in the Pazpar2 server section, then a
+ period (.) and the server ID is appended to the session ID.
Example:
@@ -59,9 +66,9 @@
]]>
- The init command may take a number of setting parameters, similar to
- the 'settings' command described below. These settings are immediately
- applied to the new session. Other parameters for init are:
+ The init command may take a number of setting parameters, similar to
+ the 'settings' command described below. These settings are immediately
+ applied to the new session. Other parameters for init are:
clear
@@ -73,11 +80,23 @@
+
+
+ service
+
+
+ If this is defined it specifies a service ID. Makes the session use
+ the service with this ID. If this is setting is omitted, the
+ session will use the unnamed service in the Pazpar2 configuration.
+
+
+
- ping
+
+ ping
Keeps a session alive. An idle session will time out after one minute.
The ping command can be used to keep the session alive absent other
@@ -130,7 +149,7 @@
Example:
Response:
OK
]]>
-
-
+
+
- search
+
+ search
Launches a search, parameters:
-
+
session
@@ -166,7 +186,82 @@
filter
- Filtering.
+ Limits the search to a given set of targets specified by the
+ filter. The filter consists a comma separated list of
+ setting+operator+args
+ pairs. The setting is a Pazpar2 setting
+ (such as pz:id).
+ The operator is either
+ = (string match)
+ or ~ (substring match).
+ The args is a list of values separated
+ by | (or , one of the values).
+ The idea is that only targets with a setting matching one of
+ the values given will be included in the search.
+
+
+
+
+ limit
+
+
+ Narrows the search by one or more fields (typically facets).
+ The limit is sequence of one or more
+ name=args pairs separated
+ by comma. The args is a list of values
+ separated by vertical bar (|).
+ The meaning of | is alternative, ie OR .
+ A value that contains a comma (,),
+ a vertical bar (|) or
+ backslash itself must be preceded by backslash (\).
+ The pz:limitmap configuration
+ item defines how the searches are mapped to a database.
+
+
+
+
+ startrecs
+
+
+ Specifies the first record to retrieve from each target.
+ The first record in a result set for a target is numbered 0, next
+ record is numbered 2. By default maxrecs is 0.
+
+
+
+
+ maxrecs
+
+
+ Specifies the maximum number of records to retrieve from each
+ target. The default value is 100. This setting has same meaning
+ as per-target setting pz:maxrecs . If pz:maxrecs is set, it takes
+ precedence over argument maxrecs.
+
+
+
+
+ sort
+
+
+ Specifies sort criteria. The argument is a comma-separated list
+ (no whitespace allowed) of sort fields, with the highest-priority
+ field first. A sort field may be followed by a colon followed by
+ the number '0' (decreasing) or '1' (increasing). Default
+ sort order is decreasing.
+ Sort field names can be any field name designated as a sort field
+ in the pazpar2.cfg file, or the special names 'relevance' and
+ 'position'.
+
+
+ If not specified here or as sort-default"
+ in pazpar2.cfg, Pazpar2 will default to the built-in 'relevance' ranking.
+
+
+ Having sort criteria at search is important for targets that
+ supports native sorting in order to get best results. Pazpar2
+ will trigger a new search if search criteria changes from Pazpar2
+ to target-based sorting or visa-versa.
@@ -240,7 +335,7 @@ search.pz2?session=2044502273&command=stat
Session ID
-
+
@@ -264,8 +359,8 @@ search.pz2?session=2044502273&command=stat
block
- If block is set to 1, the command will hang until there are records ready
- to display. Use this to show first records rapidly without
+ If block is set to 1, the command will hang until there are records
+ ready to display. Use this to show first records rapidly without
requiring rapid polling.
@@ -278,10 +373,25 @@ search.pz2?session=2044502273&command=stat
Specifies sort criteria. The argument is a comma-separated list
(no whitespace allowed) of sort fields, with the highest-priority
field first. A sort field may be followed by a colon followed by
- the number '0' or '1', indicating whether results should be sorted in
- increasing or decreasing order according to that field. 0==Decreasing is
- the default. Sort field names can be any field name designated as a sort field
- in the pazpar2.cfg file, or the special name 'relevance'.
+ the number '0' (decreasing) or '1' (increasing). Default
+ sort order is decreasing.
+ Sort field names can be any field name designated as a sort field
+ in the pazpar2.cfg file, or the special names 'relevance' and
+ 'position'.
+
+ If not specified here or as sort-default"
+ in pazpar2.cfg, pazpar2 will default to the built-in 'relevance' ranking.
+
+ Having sort criteria at search is important for targets that
+ supports native sorting in order to get best results. pazpar2
+ will trigger a new search if search criteria changes from pazpar2
+ to target-based sorting.
+
+
+
+ For targets where If pz:sortmap
+ is defined, a sort operation will be executed (possibly including
+ extending the search).
@@ -325,7 +435,7 @@ search.pz2?session=2044502273&command=show&start=0&num=2&sort=title:1
Retrieves a detailed record. Unlike the
show command, this command
returns metadata records before merging takes place. Parameters:
-
+
session
@@ -351,15 +461,16 @@ search.pz2?session=2044502273&command=show&start=0&num=2&sort=title:1
This optional parameter is an integer which, when given, makes
- Pazpar2 return the raw record for a target. The raw record
- from first target is numbered 0, second numbered 1, etc.
- When a raw record is returned Pazpar2 will XSLT transform the
- record but an XML version is returned. All ISO2709 records are
- returned as MARCXML. OPAC records are returned as YAZ'
- OPAC with an MARCXML sibling.
+ Pazpar2 return the original record for a specific target.
+ The record set from first target is numbered 0,
+ second record set is numbered 1, etc.
+ The nativesyntax setting, as usual, is used to determine how to
+ create XML from the original record - unless parameter
+ binary is given in which the record is
+ fetched as "raw" from ZOOM C (raw, original record).
- When offset is not given the Pazpar2 metadata for the record
+ When offset/checksum is not given, the Pazpar2 metadata for the record
is returned and with metadata for each targets' data specified
in a 'location' list.
@@ -367,6 +478,40 @@ search.pz2?session=2044502273&command=show&start=0&num=2&sort=title:1
+ checksum
+
+
+ This optional parameter is a string which, when given, makes
+ Pazpar2 return the original record for a specific target. The
+ checksum is returned as attribtue 'checksum' in element
+ 'location' for show command and record command (when checksum
+ and offset is NOT given).
+ The nativesyntax setting, as usual, is used to determine how to
+ create XML from the original record - unless parameter
+ binary is given in which the record is
+ fetched as "raw" from ZOOM C (raw, original record).
+
+
+ When offset/checksum is not given, the Pazpar2 metadata for the record
+ is returned and with metadata for each targets' data specified
+ in a 'location' list.
+
+
+
+
+
+
+ nativesyntax
+
+
+ This optional parameter can be used to override pz:nativesyntax
+ as given for the target. This allow an alternative nativesyntax
+ to be used for original records (see parameteroffset above).
+
+
+
+
+ syntax
@@ -394,9 +539,9 @@ search.pz2?session=2044502273&command=show&start=0&num=2&sort=title:1
This optional parameter enables "binary" response for retrieval
- of a raw record (i.e. when offset is specified). For binary
- responses the record is not converted to
- XML and the HTTP content type is application/octet-stream.
+ of a original record (i.e. when offset is specified). For binary
+ response the record by default is fetched from ZOOM C using
+ the "raw" option or by parameter nativesyntax if given.
@@ -442,7 +587,16 @@ search.pz2?session=605047297&command=record&id=3
name
- comma-separated list of termlist names (default "subject")
+ comma-separated list of termlist names. If omitted,
+ all termlists are returned.
+
+
+
+
+ num
+
+
+ maximum number of entries to return - default is 15.
@@ -453,7 +607,7 @@ search.pz2?session=605047297&command=record&id=3
-Output:
+ Output:
3
@@ -475,8 +629,8 @@ Output:
]]>
-
-
+
+
For the special termlist name "xtargets", results
are returned about the targets which have returned the most hits.
@@ -495,9 +649,9 @@ Output:
0 -- Z39.50 diagnostic codes
]]>
-
+
-
+
bytarget
@@ -520,7 +674,7 @@ Output:
-
+
Example output:
- SEE ALSO
+
+ SEE ALSO
Pazpar2:
@@ -565,15 +720,7 @@ search.pz2?session=605047297&command=bytarget&id=3