OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   preserving prefix names while replacing

[ Lists Home | Date Index | Thread Index ]
  • To: <xml-dev@lists.xml.org>
  • Subject: preserving prefix names while replacing
  • From: "Dewey, John" <jdewey@rsasecurity.com>
  • Date: Wed, 24 Aug 2005 16:52:02 -0700
  • Thread-index: AcWo2MwPFp2ODMTVR225VUWcX+w92AAKYQlQ
  • Thread-topic: preserving prefix names while replacing

I am looking for a way to remember prefix names themselves. 
The following is psudo code for what I'd like to do in xsl:

var $prefix = findPrefixFor("http://schemas.xmlsoap.org/soap/envelope/";)
<xsl:template match=$prefix":Body">
  <$prefix:Body Id="MsgBody">


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.
The following if the full xsl file that I have:


<xsl:stylesheet version="1.0"
                xmlns:xsl="http://www.w3.org/1999/XSL/Transform";
 
xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";>

  <!-- copy the xml -->
  <xsl:import href="copy.xsl"/>

  <!-- add the Id tag to the message body -->
  <xsl:template match="soapenv:Body">
    <soapenv:Body Id="MsgBody">
      <xsl:apply-templates select="@* | node()"/>
    </soapenv:Body>
  </xsl:template>
</xsl:stylesheet>

copy.xsl is simply an identity transform.

-Jon




 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS