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 <z:index name="any:w dc_title:w dc_title:p">
47 <xsl:value-of select="."/>
51 <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:creator">
52 <z:index name="any:w dc_creator:w dc_creator:p">
53 <xsl:value-of select="."/>
57 <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:subject">
58 <z:index name="any:w dc_subject:w dc_subject:p">
59 <xsl:value-of select="."/>
63 <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:description">
64 <z:index name="any:w dc_description:w">
65 <xsl:value-of select="."/>
69 <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:contributor">
70 <z:index name="any:w dc_contributor:w dc_contributor:p">
71 <xsl:value-of select="."/>
75 <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:publisher">
76 <z:index name="dc_publisher:p dc_publisher:w">
77 <xsl:value-of select="."/>
81 <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:date">
82 <z:index name="dc_date:0">
83 <xsl:value-of select="."/>
87 <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:format">
88 <z:index name="dc_format:0">
89 <xsl:value-of select="."/>
93 <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:identifier">
94 <z:index name="dc_identifier:0">
95 <xsl:value-of select="."/>
99 <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:source">
100 <z:index name="dc_source:0">
101 <xsl:value-of select="."/>
105 <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:language">
106 <z:index name="dc_language:w">
107 <xsl:value-of select="."/>
111 <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:relation">
112 <z:index name="dc_relation:0">
113 <xsl:value-of select="."/>
117 <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:rights">
118 <z:index name="dc_rights:p dc_rights:w">
119 <xsl:value-of select="."/>