Updated the files to handle oai_dc namespaces for the record meta-data.
[idzebra-moved-to-github.git] / examples / oai-pmh / conf / oai2dc.xsl
1 <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
2   xmlns:dc="http://purl.org/dc/elements/1.1/"
3   xmlns:oai="http://www.openarchives.org/OAI/2.0/" 
4   xmlns:oai_dc="http://www.openarchives.org/OAI/2.0/oai_dc/" 
5   exclude-result-prefixes="oai oai_dc"
6   version="1.0">
7
8   <xsl:output indent="yes" method="xml" version="1.0" encoding="UTF-8"/>
9   
10   <!-- disable all default text node output -->
11   <xsl:template match="text()"/>
12   
13   <!-- match on oai xml record -->
14   <xsl:template match="/">
15     <dc:metadata>
16        <xsl:apply-templates/>
17     </dc:metadata>
18   </xsl:template>
19
20   <!--
21   <xsl:template match="oai:record/oai:metadata/oai_dc:dc/node()">
22       <xsl:copy-of select="."/>
23   </xsl:template>
24   -->
25
26   <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:date
27   | oai:record/oai:metadata/oai_dc:dc/oai_dc:date">
28       <dc:date><xsl:value-of select="."/></dc:date>
29   </xsl:template>
30
31   <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:description
32   | oai:record/oai:metadata/oai_dc:dc/oai_dc:description">
33       <dc:description><xsl:value-of select="."/></dc:description>
34   </xsl:template>
35
36   <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:format
37   | oai:record/oai:metadata/oai_dc:dc/oai_dc:format">
38       <format><xsl:value-of select="."/></format>
39   </xsl:template>
40
41   <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:identifier
42   | oai:record/oai:metadata/oai_dc:dc/oai_dc:identifier">
43       <dc:identifier><xsl:value-of select="."/></dc:identifier>
44   </xsl:template>
45
46   <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:publisher
47   | oai:record/oai:metadata/oai_dc:dc/oai_dc:publisher">
48       <dc:publisher><xsl:value-of select="."/></dc:publisher>
49   </xsl:template>
50
51   <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:relation
52   | oai:record/oai:metadata/oai_dc:dc/oai_dc:relation">
53       <dc:relation><xsl:value-of select="."/></dc:relation>
54   </xsl:template>
55
56   <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:subject
57   | oai:record/oai:metadata/oai_dc:dc/oai_dc:subject">
58       <subject><xsl:value-of select="."/></subject>
59   </xsl:template>
60
61   <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:title
62   | oai:record/oai:metadata/oai_dc:dc/oai_dc:title">
63       <dc:title><xsl:value-of select="."/></dc:title>
64   </xsl:template>
65
66   <xsl:template match="oai:record/oai:metadata/oai_dc:dc/dc:type
67   | oai:record/oai:metadata/oai_dc:dc/oai_dc:type">
68       <dc:type><xsl:value-of select="."/></dc:type>
69   </xsl:template>
70
71 </xsl:stylesheet>