Subject: Re: [xsl] Generating an internal subset? From: David Carlisle <davidc@xxxxxxxxx> Date: Wed, 30 Jun 2010 22:06:09 +0100 |
I need to create the following in the XML output:
<!DOCTYPE dmodule [ <!ENTITY % ISOEntities PUBLIC "ISO 8879-1986//ENTITIES ISO Character Entities 20030531//EN//XML" "http://www.s1000d.org/S1000D_3-0/ent/xml/ISOEntities"> %ISOEntities; ]>
The solution I found was this:
<xsl:text disable-output-escaping="yes"> <![CDATA[ <!DOCTYPE dmodule [ <!ENTITY % ISOEntities PUBLIC "ISO 8879-1986//ENTITIES ISO Character Entities 20030531//EN//XML" "http://www.s1000d.org/S1000D_3-0/ent/xml/ISOEntities"> %ISOEntities; ]> ]]> </xsl:text>
Just wondering if there is a better way to do this.
That's best you can do if you really need an internal subset. (using pure xslt, saxon has an extension to do this I believe) Better perhaps is use <!DOCTYPE dmodule SYSTEM "local.dtd">
Also I had some interesting results while using StylusStudio. without this statement things would run in a flash, with it, it would take like a minute to run. Seems like it was trying to go retrieve this external entity. When running directly with Saxon I saw no difference in processing time.
..dan
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] Generating an internal subset, dvint | Thread | Re: [xsl] Generating an internal su, dvint |
Re: [xsl] debugging document() call, Michael Kay | Date | Re: [xsl] Generating an internal su, dvint |
Month |