xsl-list
[Top] [All Lists]

DOCTYPE causes appearance of unwanted attributes

2004-04-06 09:39:58
I'm finding that including a DOCTYPE declaration in my source XML
document causes the output to contain unwanted attributes.

Stylesheet identity.xsl is a fairly standard identity transform:

<?xml version="1.0" encoding="UTF-8"?>
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform";>

<xsl:template match="/ | node() | @* | comment() | processing-instruction()">
  <xsl:copy>
    <xsl:copy-of select="@*"/>
    <xsl:apply-templates select="@* | node()"/>
  </xsl:copy>
</xsl:template>

</xsl:stylesheet>


Input file 1:

<?xml version='1.0'?>
<chapter>
<indexterm><primary>abc</primary></indexterm>
<literal>abc</literal>
</chapter>

Result of "xsltproc identity.xsl junk1" is:

<?xml version="1.0"?>
<chapter>
<indexterm><primary>abc</primary></indexterm>
<literal>abc</literal>
</chapter>

Input file 2 (same but with DOCTYPE):

<?xml version='1.0'?>
<!DOCTYPE chapter PUBLIC '-//OASIS//DTD DocBook XML V4.3//EN'
                  "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"; >

<chapter>
<indexterm><primary>abc</primary></indexterm>
<literal>abc</literal>
</chapter>

Result of "xsltproc identity.xsl junk2" is:

<?xml version="1.0"?>
<chapter>
<indexterm significance="normal"><primary>abc</primary></indexterm>
<literal moreinfo="none">abc</literal>
</chapter>

The significance and moreinfo attributes have been added.

1) Why is this?
2) Can I suppress it? :-)


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