xsl-list
[Top] [All Lists]

[xsl] Getting epub: namespace into root html element

2014-06-24 03:30:07
I'm trying to convert EPUB2 files to EPUB3.  In the course of that, I need to 
include some epub:type attributes. I also want to include a <!DOCTYPE html> 
declaration, although I have seen it argued that the declaration is not 
necessary.

I have managed to get the DOCTYPE declaration to work by a method that has been 
described before in a number of places, and I have the epub:type attributes 
appearing on the relevant elements.  However, the epub namespace is declared on 
every element, and I haven't been able to get it into the root element.  How 
can I do this?

My stylesheet starts like this:

<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
    xmlns:xs="http://www.w3.org/2001/XMLSchema";
    xmlns:xh="http://www.w3.org/1999/xhtml";
    xmlns:epub="http://www.idpf.org/2007/ops";
    exclude-result-prefixes="xs xh"
    version="2.0">

    <xsl:strip-space elements="*"/>
    <xsl:output method="xhtml" />
    <xsl:template match="/">
        <xsl:text disable-output-escaping="yes">&lt;!DOCTYPE html></xsl:text>
        <xsl:apply-templates/>
    </xsl:template>
    
    <xsl:template match="@*|node()">
        <xsl:copy>
            <xsl:apply-templates select="@*|node()"/>
        </xsl:copy>
    </xsl:template>
    



Peter West

"...he who eats my flesh and drinks my blood has eternal life, and I will raise 
him up at the last day."
--~----------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
EasyUnsubscribe: http://lists.mulberrytech.com/unsub/xsl-list/1167547
or by email: xsl-list-unsub(_at_)lists(_dot_)mulberrytech(_dot_)com
--~--

<Prev in Thread] Current Thread [Next in Thread>