Add indexes to support sorting on
[irspy-moved-to-github.git] / zebra / pqf.properties
1 # $Id: pqf.properties,v 1.7 2006-09-18 10:45:43 mike Exp $
2 #
3 # Properties file to drive the YAZ CQL-to-PQF converter for Zebra.
4 # This specifies the interpretation of various CQL indexes, relations,
5 # etc. in terms of Type-1 query attributes.
6
7 # Identifiers for prefixes used in this file. (index.*)
8 set.cql         = info:srw/cql-context-set/1/cql-v1.1
9 set.rec         = info:srw/cql-context-set/2/rec-1.1
10 set.net         = info:srw/cql-context-set/2/net-1.0
11 set.dc          = info:srw/cql-context-set/1/dc-v1.1
12 set.zeerex      = info:srw/cql-context-set/2/zeerex-1.1
13
14 # The default set when an index doesn't specify one: Net
15 set             = info:srw/cql-context-set/2/net-1.0
16
17 # The default index when none is specified by the query
18 index.cql.serverChoice                  = 1=cql:all
19
20 index.cql.anywhere                      = 1=cql:all
21 index.cql.allRecords                    = 1=_ALLRECORDS 2=103
22 index.rec.id                            = 1=rec:id 4=3
23 index.net.protocol                      = 1=net:protocol
24 index.net.version                       = 1=net:version 4=3
25 index.net.method                        = 1=net:method
26 index.net.host                          = 1=net:host 4=3
27 index.net.port                          = 1=net:port 4=3
28 index.net.path                          = 1=net:path
29 index.dc.title                          = 1=dc:title
30 index.dc.creator                        = 1=dc:creator
31
32 # Relation attributes are selected according to the CQL relation by
33 # looking up the "relation.<relation>" property:
34 #
35 relation.<                              = 2=1
36 relation.le                             = 2=2
37 relation.eq                             = 2=3
38 relation.exact                          = 2=3
39 relation.ge                             = 2=4
40 relation.>                              = 2=5
41 relation.<>                             = 2=6
42
43 # BIB-1 doesn't have a server choice relation, so we just make the
44 # choice here, and use equality (which is clearly correct).
45 relation.scr                            = 2=3
46
47 # Relation modifiers.
48 #
49 relationModifier.relevant               = 2=102
50 relationModifier.fuzzy                  = 5=103
51         ### truncation=regExpr-2 (5=102) in Zebra is "fuzzy matching"
52 relationModifier.stem                   = 2=101
53 relationModifier.phonetic               = 2=100
54 relationModifier.regexp                 = 5=102
55
56 # Position attributes may be specified for anchored terms (those
57 # beginning with "^", which is stripped) and unanchored (those not
58 # beginning with "^").  This may change when we get a BIB-1 truncation
59 # attribute that says "do what CQL does".
60 #
61 position.first                          = 3=1 6=1
62         # "first in field"
63 position.any                            = 3=3 6=1
64         # "any position in field"
65 position.last                           = 3=4 6=1
66         # not a standard BIB-1 attribute
67 position.firstAndLast                   = 3=3 6=3
68         # search term is anchored to be complete field
69
70 # Structure attributes may be specified for individual relations; a
71 # default structure attribute my be specified by the pseudo-relation
72 # "*", to be used whenever a relation not listed here occurs.
73 #
74 structure.exact                         = 4=108
75         # string
76 structure.all                           = 4=2
77 structure.any                           = 4=2
78 structure.*                             = 4=1
79         # phrase
80
81 # Truncation attributes used to implement CQL wildcard patterns.  The
82 # simpler forms, left, right- and both-truncation will be used for the
83 # simplest patterns, so that we produce PQF queries that conform more
84 # closely to the Bath Profile.  However, when a more complex pattern
85 # such as "foo*bar" is used, we fall back on Z39.58-style masking.
86 #
87 truncation.right                        = 5=1
88 truncation.left                         = 5=2
89 truncation.both                         = 5=3
90 truncation.none                         = 5=100
91 truncation.regexp                       = 5=102
92 truncation.z3958                        = 5=104
93
94 # Finally, any additional attributes that should always be included
95 # with each term can be specified in the "always" property.
96 #
97 #always                                 = 6=1
98 # 6=1: completeness = incomplete subfield