[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: Copy the Document Type Definition of XML file

Subject: Re: Copy the Document Type Definition of XML file
From: Andrew Welch <andrew.j.welch@xxxxxxxxx>
Date: Tue, 15 Dec 2009 09:42:13 +0000
Re:  Copy the Document Type Definition of XML file
2009/12/15 Rossen Kovachev <kovachev@xxxxxxxx>:
> Hi!
> I'm trying to copy resp. to modify an XML document via XSL. Here I use
> the usual identity template:
> <xsl:template match="@*|node()">
>  <xsl:copy>
>    <xsl:apply-templates select="@*|node()"/>
>  </xsl:copy>
> </xsl:template>
> Unfortunately the DTD definition of the source document is not copied at
> this way.
> Does anybody know how can I accomplish this?

I would say that unless you absolutely have to, don't bother.  If you
need the XML validated again at a subsequent step then do it in that
step, rather than each and every time the XML is parsed...

If you do really have to :) then you could use LexEv
(http://andrewjwelch.com/lexev/) which will add the values as
processing instructions to the input, for example:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

will become:

<?doctype-public -//W3C//DTD XHTML 1.0 Transitional//EN?>
<?doctype-system http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd?>

which you can then use like this:


LexEv is also part of Kernow, so to try this out just enable it in the

Andrew Welch
Kernow: http://kernowforsaxon.sf.net/

Current Thread


Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
First Name
Last Name
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.