I was mildly surprised to discover that comments and PIs are allowed before
the DOCTYPE declaration.
The DOCTYPE declaration is newly created by the serializer, it is not a copy
of the DOCTYPE declaration in your source document. It will always precede
any nodes that are present in the result tree. There's no way to control
this. I can't imagine any circumstances where you really need to generate
comments and PIs before the DOCTYPE declaration.
Michael Kay
http://www.saxonica.com/
 
-----Original Message-----
From: Trevor Nicholls [mailto:trevor(_at_)castingthevoid(_dot_)com] 
Sent: 20 November 2007 14:46
To: xsl-list(_at_)lists(_dot_)mulberrytech(_dot_)com
Subject: [xsl] order in the xml prolog
I have a modified identity transform which is translating a 
few element names, and it's performing that task admirably. 
However the output XML has also switched the order of 
elements in the xml prolog.
Two questions:
1) Does it really matter?
2) How do I modify the identity template to get the original order?
I am able to use either Saxon or xsltproc (libxml). Both 
transpose the PI and the DTD.
Input xml:
  <?xml version="1.0" encoding="UTF-8"?>
  <?xml-stylesheet href="../../utils/doc2html.xsl" type="text/xsl"?>
  <!DOCTYPE document SYSTEM "../../utils/docs.dtd">
  <document>
    <title id="Lab156">Boxes</title>
    <include srcfile="boxes_intro.xml"/>
    <include srcfile="boxes_items.xml"/>
  </document>
xsl:
  <?xml version="1.0" encoding="UTF-8"?>
  <xsl:stylesheet version="1.0"
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:output doctype-system="../../utils/docs.dtd"
    method="xml" encoding="UTF-8" />
  <xsl:preserve-space elements="*" />
  <!-- identity -->
  <xsl:template match="node()|@*">
    <xsl:copy>
      <xsl:apply-templates select="@*|node()" />
    </xsl:copy>
  </xsl:template>
  <!-- translate various code elements into a standard set -->
  <!-- skipped -->
  </xsl:stylesheet>
Output xml:
  <?xml version="1.0" encoding="UTF-8"?>
  <!DOCTYPE document SYSTEM "../../utils/docs.dtd">
  <?xml-stylesheet href="../../utils/doc2html.xsl" type="text/xsl"?>
  <document>
    <title id="Lab156">Boxes</title>
    <include srcfile="boxes_intro.xml"/>
    <include srcfile="boxes_items.xml"/>
  </document>
Cheers
Trevor Nicholls
--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: 
<mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--
--~------------------------------------------------------------------
XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list
To unsubscribe, go to: http://lists.mulberrytech.com/xsl-list/
or e-mail: <mailto:xsl-list-unsubscribe(_at_)lists(_dot_)mulberrytech(_dot_)com>
--~--