added chaper on alvisxslt recordmodel
[idzebra-moved-to-github.git] / doc / recordmodel-alvisxslt.xml
1  <chapter id="record-model-alvisxslt">
2   <!-- $Id: recordmodel-alvisxslt.xml,v 1.1 2006-02-15 11:07:47 marc Exp $ -->
3   <title>ALVIS XML Record Model and Filter Module</title>
4   
5
6   <para>
7    The record model described in this chapter applies to the fundamental,
8    structured XML
9    record type <literal>alvis</literal>, introduced in
10    <xref linkend="componentmodulesalvis"/>. The ALVIS XML record model
11    is experimental, and it's inner workings might change in future
12    releases of the Zebra Information Server.
13   </para>
14
15   
16
17   
18   
19   <sect1 id="record-model-alvisxslt-filter">
20    <title>ALLVIS Record Filter</title>
21    <para>
22     The experimental, loadable  Alvis XM/XSLT filter module
23    <literal>mod-alvis.so</literal> is packaged in the GNU/Debian package
24     <literal>libidzebra1.4-mod-alvis</literal>.
25    </para>
26
27    <sect2 id="record-model-alvisxslt-internal">
28     <title>ALLVIS Internal Record Representation</title>   
29     <para>FIXME</para>
30    </sect2>
31
32    <sect2 id="record-model-alvisxslt-canonical">
33     <title>ALLVIS Canonical Format</title>   
34     <para>FIXME</para>
35    </sect2>
36
37
38   </sect1>
39
40
41   <sect1 id="record-model-alvisxslt-conf">
42    <title>ALLVIS Record Model Configuration</title>
43    <para>FIXME</para>
44
45
46
47   <sect2 id="record-model-alvisxslt-exchange">
48    <title>ALVIS Exchange Formats</title>
49    <para>FIXME</para>
50   </sect2>
51
52   </sect1>
53
54   
55  </chapter>
56
57
58 <!--
59
60 c)  Main "alvis" XSLT filter config file:
61   cat db/filter_alvis_conf.xml 
62
63   <?xml version="1.0" encoding="UTF8"?>
64   <schemaInfo>
65     <schema name="alvis" stylesheet="db/alvis2alvis.xsl" />
66     <schema name="index" identifier="http://indexdata.dk/zebra/xslt/1"
67             stylesheet="db/alvis2index.xsl" />
68     <schema name="dc" stylesheet="db/alvis2dc.xsl" />
69     <schema name="dc-short" stylesheet="db/alvis2dc_short.xsl" />
70     <schema name="snippet" snippet="25" stylesheet="db/alvis2snippet.xsl" />
71     <schema name="help" stylesheet="db/alvis2help.xsl" />
72     <split level="1"/>
73   </schemaInfo>
74
75   the pathes are relative to the directory where zebra.init is placed
76   and is started up.
77
78   The split level decides where the SAX parser shall split the
79   collections of records into individual records, which then are
80   loaded into DOM, and have the indexing XSLT stylesheet applied.
81
82   The indexing stylesheet is found by it's identifier.
83
84   All the other stylesheets are for presentation after search.
85
86 - in data/ a short sample of harvested carnivorous plants
87   ZEBRA_INDEX_DIRS=data/carnivor_20050118_2200_short-346.xml
88
89 - in root also one single data record - nice for testing the xslt
90   stylesheets,
91   
92   xsltproc db/alvis2index.xsl carni*.xml
93
94   and so on.
95
96 - in db/ a cql2pqf.txt yaz-client config file 
97   which is also used in the yaz-server <ulink url="http://www.loc.gov/standards/sru/cql/">CQL</ulink>-to-PQF process
98
99    see: http://www.indexdata.com/yaz/doc/tools.tkl#tools.cql.map
100
101 - in db/ an indexing XSLT stylesheet. This is a PULL-type XSLT thing,
102   as it constructs the new XML structure by pulling data out of the
103   respective elements/attributes of the old structure.
104
105   Notice the special zebra namespace, and the special elements in this
106   namespace which indicate to the zebra indexer what to do.
107
108   <z:record id="67ht7" rank="675" type="update">
109   indicates that a new record with given id and static rank has to be updated. 
110
111   <z:index name="title" type="w">
112    encloses all the text/XML which shall be indexed in the index named
113    "title" and of index type "w" (see  file default.idx in your zebra
114    installation) 
115
116
117    </para>
118
119    <para>
120 -->
121
122
123
124
125  <!-- Keep this comment at the end of the file
126  Local variables:
127  mode: sgml
128  sgml-omittag:t
129  sgml-shorttag:t
130  sgml-minimize-attributes:nil
131  sgml-always-quote-attributes:t
132  sgml-indent-step:1
133  sgml-indent-data:t
134  sgml-parent-document: "zebra.xml"
135  sgml-local-catalogs: nil
136  sgml-namecase-general:t
137  End:
138  -->