[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message]

Re: Questions on the new XSL spec (section 2.7.12)

Subject: Re: Questions on the new XSL spec (section 2.7.12)
From: James Clark <jjc@xxxxxxxxxx>
Date: Tue, 29 Dec 1998 13:01:48 +0700
Re: Questions on the new XSL spec (section 2.7.12)
Steve Dahl wrote:
> 
> In Section 2.7.12, the definition seems pretty clear, but I just wanted
> to confirm that <xsl:copy>, when applied to an attribute node, can only
> copy the attribute, and cannot modify its value.

Right.

> Also, is there any difference between <xsl:element name="{name(.)}"> and
> <xsl:copy>, when the current node is an element? <xsl:copy> talks about
> copying the namespace nodes of the element--if you wanted to exactly
> copy an element using <xsl:element>, how would you read the namespace
> nodes of a source element, and how would you create namespace nodes in
> the destination element?

There's no way to do this currently.  To handle this, you would need a
pattern that matched namespace nodes, and an element that created
namespace nodes, so you could do something like:

<xsl:element name="{name(.)}">
  <xsl:for-each select="namespace()">
    <xsl:namespace name="{name(.)}">
       <xsl:value-of select="."/>
    </xsl:namespace>
  </xsl:for-each>
</xsl:element>

> It sounds like the destination namespace nodes
> could be created using something like:
> 
>     <xsl:attribute name="xmlns:prefix"><xsl:value-of
> select="???"/></xsl:attribute>
> 
> ...but because namespace-declaring attributes are not available in the
> source tree, how can we know what the original namespace URI was? Or the
> original prefix?

Given markup of the form

 <foo xmlns:bar="some uri"/>

you get a foo element node with no attribute nodes and a namespace node
with name "bar" and value "some uri".  xsl:attribute creates attribute
nodes not namespace nodes so it won't help you.

James


 XSL-List info and archive:  http://www.mulberrytech.com/xsl/xsl-list


Current Thread

PURCHASE STYLUS STUDIO ONLINE TODAY!

Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced!

Buy Stylus Studio Now

Download The World's Best XML IDE!

Accelerate XML development with our award-winning XML IDE - Download a free trial today!

Don't miss another message! Subscribe to this list today.
Email
First Name
Last Name
Company
Subscribe in XML format
RSS 2.0
Atom 0.3
Site Map | Privacy Policy | Terms of Use | Trademarks
Free Stylus Studio XML Training:
W3C Member
Stylus Studio® and DataDirect XQuery ™are products from DataDirect Technologies, is a registered trademark of Progress Software Corporation, in the U.S. and other countries. © 2004-2013 All Rights Reserved.