RE: [xsl] Losing a namespace declaration while merging two elements

Subject: RE: [xsl] Losing a namespace declaration while merging two elements
From: "Costello, Roger L." <costello@xxxxxxxxx>
Date: Fri, 22 Jul 2011 11:16:08 -0400
That is a fantastic function David. Wow!

However, when I run it I get this error message at the copy-of element:

  XTDE0430: Cannot create two namespace nodes with the same prefix mapped to
different URIs
  (prefix="", URI=http://www.w3.org/1999/xlink,
URI=http://www.w3.org/2001/XMLSchema)

Any thoughts?

/Roger

-----Original Message-----
From: David Carlisle [mailto:davidc@xxxxxxxxx]
Sent: Friday, July 22, 2011 11:05 AM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Cc: Costello, Roger L.
Subject: Re: [xsl] Losing a namespace declaration while merging two elements


<xsl:function name="f:merge">
  <xsl:param name="ref-item" />
  <xsl:param name="refed-item" />
  <xsl:for-each select="$ref-item">
   <xsl:copy>
    <xsl:copy-of
      select="@* except @ref,$refed-item/(namespace::*,@*,*)"/>
   </xsl:copy>
  </xsl:for-each>
</xsl:function>


produces


  saxon9 atts.xml atts.xsl
<attribute xmlns="http://www.w3.org/2001/XMLSchema";
xmlns:xsd="http://www.w3.org/2001/XMLSchema"; name="href" type="xsd:anyURI"/>


David

--
google plus: https:/profiles.google.com/d.p.carlisle

________________________________________________________________________
The Numerical Algorithms Group Ltd is a company registered in England
and Wales with company number 1249803. The registered office is:
Wilkinson House, Jordan Hill Road, Oxford OX2 8DR, United Kingdom.

This e-mail has been scanned for all viruses by Star. The service is
powered by MessageLabs.
________________________________________________________________________

Current Thread