remove stale $Id$
[irspy-moved-to-github.git] / zebra / README
1
2 What's what in this directory:
3
4 README -- This file
5
6 yazserver.xml -- The primary configuration file that controls how
7         Zebra runs (as a YAZ GFS application) in order to serve the
8         ZeeRex database.  This specifies where to find this database's
9         own ZeeRex record (zeerex.xml), the configuration for
10         translating CQL queries into Z39.50 Type-1 (pqf.properties),
11         and the Zebra-specific configuration (zebra.cfg).
12
13 zeerex.xml -- The static ZeeRex record for this database of ZeeRex
14         records.  It describes what a ZeeRex database looks like, and
15         how it behaves.  (Life would be better if Zebra could at least
16         partially work this out for itself, but for now we have to go
17         the long way round.)
18
19 zeerex-2.0.xsd -- The XML Schema describing ZeeRex records, as
20         downloaded from the official ZeeRex site at:
21                 http://explain.z3950.org/dtd/zeerex-2.0.xsd
22         Originally, this was used to validate both our own static
23         ZeeRex record and the records created by IRSpy, using:
24                 xmllint --noout --schema zeerex-2.0.xsd zeerex.xml
25         However, it can no longer be used for this purpose, as the
26         records now carry IRSpy-specific extensions that the schema
27         does not understand.  Eventually a new schema (most likely in
28         Relax NG Compact format) will be created for validation of the
29         extendd records.
30
31 pqf.properties -- The specification for how CQL queries are translated
32         into 39.50 Type-1 queries.  This file is identical to the one
33         supplied in the YAZ distribution: we'd just use that if there
34         was a reliable way to discover where it is.
35
36 ezeerex2pqfproperties.pl -- An in-progress script to automatically
37         generate the pqf.properties file from an extended ZeeRex
38         record.  Not yet in use.  A Makefile controls the use of this
39         script to generate "terse.properties", which may be, but is
40         not, used in place of "pqf.properties".
41
42 zebra.cfg -- Zebra-specific configuration, including the location of
43         the register files, the location of the XSLT filter
44         configuration (filterconf.xml), etc.
45
46 htpasswd -- Password file for the "admin" user who has permission to
47         update the database remotely.
48
49 filterconf.xml -- Configuration of Zebra's XSLT filter, which uses
50         XSLT stylesheets to identify the indexable data in incoming
51         files and to transform records for presentation.
52
53 zeerex2index.xsl -- The indexing stylesheet for ZeeRex records.  It's
54         possible to check what indexer will see as follows:
55                 xsltproc zeerex2index.xsl zeerex.xml
56
57 zeerex2zeerex.xsl -- The "no-op" stylesheet for presenting ZeeRex
58         records.
59
60 zeerex2dc.xsl -- A stylesheet for presenting Dublin Core records.
61
62 zeerex2id.xsl -- A trivial stylesheet that just yields the record
63         identifier (not as an XML document).
64
65 profile -- Notes on the indexes in the ZeeRex profile, with
66         indications of whether they are yet supported by the Zebra
67         configuration in this directory.
68
69 records-2007-05-01 or similar
70 records-2007-05-01.tar.gz or similar
71      -- A subdirectory containing ZeeRex records to be added to the
72         database, and the tarball from which they were unpacked.
73         The first version was harvested from Index Data's old
74         target-test database using
75                 scp -r bagel.indexdata.dk:/home/perhans/targettest/xml records
76         processed to add the missing namespace.  Subsequent versions
77         have been dumped from the evolving database on
78         irspy.indexdata.com.
79
80 db -- A subdirectory containing the actual database: register files,
81         dictionaries and suchlike.
82
83 form.html -- A simple HTML search form that submits SRU queries to a
84         server running on local port 8018.
85
86 init-script -- A startup/shutdown script for controlling the zebra
87         server according to "System V init" rules.  Instructions can
88         be found in the script itself.
89
90 crontab -- An example file that can be used to automate periodic
91         running of a test or tests.  This can be installed using:
92                 sudo crontab crontab
93         But you probably want to edit it first.
94
95 --
96
97 The database can be interrogated with SRU URLs such as:
98         http://localhost:8018/IR-Explain---1?version=1.1&operation=searchRetrieve&maximumRecords=10&recordSchema=zeerex&query=net.protocol=sru
99
100 To create the database:
101
102 $ make newdb
103
104 or:
105
106 tar xzf records-2007-04-18.tar.gz
107 zebraidx-2.0 init
108 zebraidx-2.0 update zeerex.xml
109 zebraidx-2.0 update records-2010-04-06
110 zebraidx-2.0 commit
111
112 zebrasrv-2.0 -f yazserver.xml