1 <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
2 xmlns:z="http://indexdata.com/zebra-2.0"
3 xmlns:dc="http://purl.org/dc/elements/1.1/"
4 xmlns:oai="http://www.openarchives.org/OAI/2.0/"
5 xmlns:oai_dc="http://www.openarchives.org/OAI/2.0/oai_dc/"
6 exclude-result-prefixes="oai oai_dc dc"
9 <!-- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" -->
12 <xsl:output indent="yes" method="xml" version="1.0" encoding="UTF-8"/>
14 <!-- disable all default text node output -->
15 <xsl:template match="text()"/>
17 <!-- match on oai xml record -->
18 <xsl:template match="/">
19 <z:record z:id="{normalize-space(oai:record/oai:header/oai:identifier)}">
21 <xsl:apply-templates/>
25 <!-- OAI indexing templates -->
26 <xsl:template match="oai:record/oai:header/oai:identifier">
27 <z:index name="oai_identifier:0">
28 <xsl:value-of select="."/>
32 <xsl:template match="oai:record/oai:header/oai:datestamp">
33 <z:index name="oai_datestamp:0">
34 <xsl:value-of select="."/>
38 <xsl:template match="oai:record/oai:header/oai:setSpec">
39 <z:index name="oai_setspec:0">
40 <xsl:value-of select="."/>
44 <!-- DC specific indexing templates -->
45 <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:title
46 | oai:record/oai:metadata/oai_dc:dc/oai_dc:title">
47 <z:index name="any:w title:w title:p">
48 <xsl:value-of select="."/>
52 <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:creator
53 | oai:record/oai:metadata/oai_dc:dc/oai_dc:creator">
54 <z:index name="any:w author:w author:p">
55 <xsl:value-of select="."/>
59 <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:subject
60 | oai:record/oai:metadata/oai_dc:dc/oai_dc:subject">
61 <z:index name="any:w subject-heading:w subject-heading:p">
62 <xsl:value-of select="."/>
66 <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:description
67 | oai:record/oai:metadata/oai_dc:dc/oai_dc:description">
68 <z:index name="any:w description:w">
69 <xsl:value-of select="."/>
73 <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:contributor
74 | oai:record/oai:metadata/oai_dc:dc/oai_dc:contributor">
75 <z:index name="any:w contributor:w contributor:p">
76 <xsl:value-of select="."/>
80 <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:publisher
81 | oai:record/oai:metadata/oai_dc:dc/oai_dc:publisher">
82 <z:index name="publisher:p publisher:w">
83 <xsl:value-of select="."/>
87 <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:date
88 | oai:record/oai:metadata/oai_dc:dc/oai_dc:date">
89 <z:index name="date:0">
90 <xsl:value-of select="."/>
94 <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:format
95 | oai:record/oai:metadata/oai_dc:dc/oai_dc:format">
96 <z:index name="format:0">
97 <xsl:value-of select="."/>
101 <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:identifier
102 | oai:record/oai:metadata/oai_dc:dc/oai_dc:identifier">
103 <z:index name="identifier:0">
104 <xsl:value-of select="."/>
108 <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:source
109 | oai:record/oai:metadata/oai_dc:dc/oai_dc:source">
110 <z:index name="source:0">
111 <xsl:value-of select="."/>
115 <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:language
116 | oai:record/oai:metadata/oai_dc:dc/oai_dc:language">
117 <z:index name="language:w">
118 <xsl:value-of select="."/>
122 <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:relation
123 | oai:record/oai:metadata/oai_dc:dc/oai_dc:relation">
124 <z:index name="relation:0">
125 <xsl:value-of select="."/>
129 <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:rights
130 | oai:record/oai:metadata/oai_dc:dc/oai_dc:rights">
131 <z:index name="rights:p rights:w">
132 <xsl:value-of select="."/>