CQL v1.2 functionality except sort.
[yaz-moved-to-github.git] / etc / pqf.properties
1 # $Id: pqf.properties,v 1.14 2008-01-06 13:08:09 adam Exp $
2 #
3 # Propeties file to drive org.z3950.zing.cql.CQLNode's toPQF()
4 # back-end and the YAZ CQL-to-PQF converter.  This specifies the
5 # interpretation of various CQL indexes, relations, etc. in terms
6 # of Type-1 query attributes.
7 #
8 # This configuration file generates queries using BIB-1 attributes.
9 # See http://www.loc.gov/z3950/agency/zing/cql/dc-indexes.html
10 # for the Maintenance Agency's work-in-progress mapping of Dublin Core
11 # indexes to Attribute Architecture (util, XD and BIB-2)
12 # attributes.
13
14 # Identifiers for prefixes used in this file. (index.*)
15 set.cql         = info:srw/cql-context-set/1/cql-v1.2
16 set.rec         = info:srw/cql-context-set/2/rec-1.1
17 set.dc          = info:srw/cql-context-set/1/dc-v1.1
18 set.bath        = http://zing.z3950.org/cql/bath/2.0/
19
20 # The default set when an index doesn't specify one: Dublin Core
21 set             = info:srw/cql-context-set/1/dc-v1.1
22
23 # The default index when none is specified by the query
24 index.cql.serverChoice                  = 1=1016
25         # srw.serverChoice is deprecated in favour of cql.serverChoice
26         # BIB-1 "any"
27 index.cql.allRecords                    = 1=_ALLRECORDS 2=103
28
29 index.rec.id                            = 1=12
30
31 index.dc.title                          = 1=4
32 index.dc.subject                        = 1=21
33 index.dc.creator                        = 1=1003
34 index.dc.author                         = 1=1003
35         ### Unofficial synonym for "creator"
36 index.dc.editor                         = 1=1020
37 index.dc.publisher                      = 1=1018
38 index.dc.description                    = 1=62
39         # "abstract"
40 index.dc.date                           = 1=30
41 index.dc.resourceType                   = 1=1031
42         # guesswork: "Material-type"
43 index.dc.format                         = 1=1034
44         # guesswork: "Content-type"
45 index.dc.resourceIdentifier             = 1=12
46         # "Local number"
47 index.dc.source                         = 1=1019
48         # "Record-source"
49 index.dc.language                       = 1=54
50         # "Code--language"
51 index.dc.relation                       = 1=?
52         ### No idea how to represent this
53 index.dc.coverage                       = 1=?
54         ### No idea how to represent this
55 index.dc.rights                         = 1=?
56         ### No idea how to represent this
57
58 # Relation attributes are selected according to the CQL relation by
59 # looking up the "relation.<relation>" property:
60 #
61 relation.<                              = 2=1
62 relation.le                             = 2=2
63 relation.eq                             = 2=3
64 relation.exact                          = 2=3
65 relation.ge                             = 2=4
66 relation.>                              = 2=5
67 relation.<>                             = 2=6
68
69 # These two are what Zebra uses -- may not work on other servers
70 relation.all                            = 4=6
71 relation.any                            = 4=105
72
73 # BIB-1 doesn't have a server choice relation, so we just make the
74 # choice here, and use equality (which is clearly correct).
75 relation.scr                            = 2=3
76
77 # Relation modifiers.
78 #
79 relationModifier.relevant               = 2=102
80 relationModifier.fuzzy                  = 5=103
81         ### truncation=regExpr-2 (5=103) in Zebra is "fuzzy matching"
82 relationModifier.stem                   = 2=101
83 relationModifier.phonetic               = 2=100
84
85 # Non-standard extensions to provoke Zebra's inline sorting
86 relationModifier.sort                   = 7=1
87 relationModifier.sort-desc              = 7=2
88 relationModifier.numeric                = 4=109
89
90 # Position attributes may be specified for anchored terms (those
91 # beginning with "^", which is stripped) and unanchored (those not
92 # beginning with "^").  This may change when we get a BIB-1 truncation
93 # attribute that says "do what CQL does".
94 #
95 position.first                          = 3=1 6=1
96         # "first in field"
97 position.any                            = 3=3 6=1
98         # "any position in field"
99 position.last                           = 3=4 6=1
100         # not a standard BIB-1 attribute
101 position.firstAndLast                   = 3=3 6=3
102         # search term is anchored to be complete field
103
104 # Structure attributes may be specified for individual relations; a
105 # default structure attribute my be specified by the pseudo-relation
106 # "*", to be used whenever a relation not listed here occurs.
107 #
108 structure.exact                         = 4=108
109         # string
110 structure.all                           = 4=2
111 structure.any                           = 4=2
112 structure.*                             = 4=1
113         # phrase
114
115 # Truncation attributes used to implement CQL wildcard patterns.  The
116 # simpler forms, left, right- and both-truncation will be used for the
117 # simplest patterns, so that we produce PQF queries that conform more
118 # closely to the Bath Profile.  However, when a more complex pattern
119 # such as "foo*bar" is used, we fall back on Z39.58-style masking.
120 #
121 truncation.right                        = 5=1
122 truncation.left                         = 5=2
123 truncation.both                         = 5=3
124 truncation.none                         = 5=100
125 truncation.regexp                       = 5=102
126 truncation.z3958                        = 5=104
127
128 # Finally, any additional attributes that should always be included
129 # with each term can be specified in the "always" property.
130 #
131 always                                  = 6=1
132 # 6=1: completeness = incomplete subfield
133
134
135 # Bath Profile support, added Thu Dec 18 13:06:20 GMT 2003
136 # See the Bath Profile for SRW at
137 #       http://zing.z3950.org/cql/bath.html
138 # including the Bath Context Set defined within that document.
139 #
140 # In this file, we only map index-names to BIB-1 use attributes, doing
141 # so in accordance with the specifications of the Z39.50 Bath Profile,
142 # and leaving the relations, wildcards, etc. to fend for themselves.
143
144 index.bath.keyTitle                     = 1=33
145 index.bath.possessingInstitution        = 1=1044
146 index.bath.name                         = 1=1002
147 index.bath.personalName                 = 1=1
148 index.bath.corporateName                = 1=2
149 index.bath.conferenceName               = 1=3
150 index.bath.uniformTitle                 = 1=6
151 index.bath.isbn                         = 1=7
152 index.bath.issn                         = 1=8
153 index.bath.geographicName               = 1=58
154 index.bath.notes                        = 1=63
155 index.bath.topicalSubject               = 1=1079
156 index.bath.genreForm                    = 1=1075
157