Maybe you should explore something like this: <xsl:element name='image'> <xsl:for-each select='@*'> <xsl:attribute name='qname(.)'><xsl:value-of select='.' /></xsl:attribute> </xsl:for-each> </xsl:element> This way, the transformer is at least aware of the tag you are trying to insert into the output. tlj
________________________________ From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] Sent: Wednesday, October 24, 2007 11:58 AM To: Brian Minchau Cc: general@xml.apache.org; [EMAIL PROTECTED]; [EMAIL PROTECTED] Subject: Re: [Announce] Escaping double quotation marks in XSL > Assuming that you are only interested in stream serialization, have you > thought of doing the serialization yourself for particular elements? For > example, something like this: > > <!-- self serialization of image elements with tag for image done in > CDATA, but delegate attributes serialization --> > <xsl:template match="image"> > <![CDATA[ <image]>><xsl:apply-templates select="@*"/> <![CDATA[ >]>> > </xsl:template> I *REALLY* detest that idiom. I've seen many people hurt themselves by trying to hand-generate XML; I consider it a very bad practice. Unless you're forced to do it in order to work with a downstream tool which has not been implemented correctly, I would recommend finding another solution. Any other solution.