Next in thread → Next in month →

RE: [xml-dev] preserving prefix names while replacing

From
Dewey, John <>
To
Date
2005-08-25T16:18:52Z
ID
<>
Thread
RE: [xml-dev] preserving prefix names while replacing
Thank you. Your suggestion works on the implementations of xsl that I am
using. If anyone is curious my final template ended up:

  <xsl:template match="soapenv:Body">
    <xsl:copy>
      <xsl:attribute name="id">MsgBody</xsl:attribute>
      <xsl:apply-templates select="@* | node()"/>
    </xsl:copy>
  </xsl:template>  

-Jon


-----Original Message-----
From: Richard Tobin [mailto:] 
Sent: Wednesday, August 24, 2005 5:26 PM
To: 
Subject: Re: [xml-dev] preserving prefix names while replacing

In article
<> you
write:

>Currently I have:
>
><xsl:template match="soapenv:Body">
>  <soapenv:Body Id="MsgBody">
>...
>
>The problem with this is that it doesn't preserve the original
>document's prefix name, which is what I want to do as this is part of
an
>override xsl for an identity transform.

Instead of using a literal result element, copy the original:

 <xsl:template match="soapenv:Body">
   <xsl:copy>
     <xsl:attribute name="id">MsgBody</xsl:attribute>
     ...
   </xsl:copy>
   ...

This isn't guaranteed to preserve the prefix, but will in many XSLT
implementations.

-- Richard


-----------------------------------------------------------------
The xml-dev list is sponsored by XML.org <http://www.xml.org>, an
initiative of OASIS <http://www.oasis-open.org>

The list archives are at http://lists.xml.org/archives/xml-dev/

To subscribe or unsubscribe from this list use the subscription
manager: <http://www.oasis-open.org/mlmanage/index.php>
Next in thread → Next in month →