<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:html="http://www.w3.org/1999/xhtml" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns="http://openebook.org/namespaces/oeb-package/1.0/" version="2.0" exclude-result-prefixes="html xs">
<xsl:template match="/html:html">
<metadata>
<xsl:apply-templates select="html:head"/>
</metadata>
</xsl:template>
<xsl:template match="/html:html/html:head">
<dc-metadata xmlns:oebpackage="http://openebook.org/namespaces/oeb-package/1.0/">
<xsl:namespace name="dc">http://purl.org/dc/elements/1.1/</xsl:namespace>
<dc:Title>
<xsl:value-of select="html:title"/>
</dc:Title>
<dc:Publisher>
<xsl:value-of select="html:meta[@name='dc:publisher']/@content"/>
</dc:Publisher>
<dc:Date>
<xsl:value-of select="substring(html:meta[@name='dc:date']/@content,1,10)"/>
</dc:Date>
<dc:Language>
<xsl:value-of select="html:meta[@name='dc:language']/@content"/>
</dc:Language>
<xsl:apply-templates mode="dc-metadata" select="*/@name"/>
</dc-metadata>
<x-metadata>
<xsl:apply-templates mode="x-metadata" select="*/@name"/>
</x-metadata>
</xsl:template>
<xsl:template mode="dc-metadata x-metadata" match="@name"/>
<xsl:template mode="dc-metadata" match="@name[.='dc:creator']">
<dc:Creator><xsl:value-of select="../@content"/></dc:Creator>
</xsl:template>
<xsl:template mode="dc-metadata" match="@name[.='dc:subject']">
<dc:Subject><xsl:value-of select="../@content"/></dc:Subject>
</xsl:template>
<xsl:template mode="dc-metadata" match="@name[.='dc:contributor']">
<dc:Contributor><xsl:value-of select="../@content"/></dc:Contributor>
</xsl:template>
<xsl:template mode="dc-metadata" match="@name[.='dc:source']">
<dc:Source><xsl:value-of select="../@content"/></dc:Source>
</xsl:template>
<xsl:template mode="dc-metadata" match="@name[.='dc:coverage']">
<dc:Coverage><xsl:value-of select="../@content"/></dc:Coverage>
</xsl:template>
<xsl:template mode="dc-metadata" match="@name[.='dc:description']">
<dc:Description><xsl:value-of select="../@content"/></dc:Description>
</xsl:template>
<xsl:template mode="dc-metadata" match="@name[.='dc:type']">
<dc:Type><xsl:value-of select="../@content"/></dc:Type>
</xsl:template>
<xsl:template mode="dc-metadata" match="@name[.='dc:relation']">
<dc:Relation><xsl:value-of select="../@content"/></dc:Relation>
</xsl:template>
<xsl:template mode="dc-metadata" match="@name[.='dc:rights']">
<dc:Rights><xsl:value-of select="../@content"/></dc:Rights>
</xsl:template>
<xsl:template mode="x-metadata" match="@name[.='ncc:sourceDate']">
<meta name="dtb:sourceDate" content="{../@content}"/>
</xsl:template>
<xsl:template mode="x-metadata" match="@name[.='ncc:sourceEdition']">
<meta name="dtb:sourceEdition" content="{../@content}"/>
</xsl:template>
<xsl:template mode="x-metadata" match="@name[.='ncc:sourcePublisher']">
<meta name="dtb:sourcePublisher" content="{../@content}"/>
</xsl:template>
<xsl:template mode="x-metadata" match="@name[.='ncc:sourceRights']">
<meta name="dtb:sourceRights" content="{../@content}"/>
</xsl:template>
<xsl:template mode="x-metadata" match="@name[.='ncc:sourceTitle']">
<meta name="dtb:sourceTitle" content="{../@content}"/>
</xsl:template>
<xsl:template mode="x-metadata" match="@name[.='ncc:producer']">
<meta name="dtb:producer" content="{../@content}"/>
</xsl:template>
<xsl:template mode="x-metadata" match="@name[.='ncc:narrator']">
<meta name="dtb:narrator" content="{../@content}"/>
</xsl:template>
<xsl:template mode="x-metadata" match="@name[.='ncc:producedDate']">
<meta name="dtb:producedDate" content="{../@content}"/>
</xsl:template>
<xsl:template mode="x-metadata" match="@name[.='ncc:revision']">
<meta name="dtb:revision" content="{../@content}"/>
</xsl:template>
<xsl:template mode="x-metadata" match="@name[.='ncc:revisionDate']">
<meta name="dtb:revisionDate" content="{../@content}"/>
</xsl:template>
</xsl:stylesheet>