[Home] [By Thread] [By Date] [Recent Entries]
Hi David, Wendell, Michael, Ken, and all,
I am surely missing something here as, assuming that $new is a different node from the current node, that their attributes can vary and be in different namespaces, and that I need to copy only the attributes of the current node that are not also in $new, in a namespace safe way, with XSLT 2, I do not see how I can do like <xsl:copy-of select="@*[not(name() = ($new/@*/name()))]"/> with attribute(), or even in any other way, namespace safe or not. local-name() can be useful but, as we all know, two nodes with the same local-name and different namespaces, are two different things. The good news are that known literal node names can be handled in a namespace safe way in XSLT2 and, for now, for the rest, including a number of usecases where namespace safe processing does not seem quite possible, as when selecting nodes based on variables (nodes or name-strings), including with saxon:evaluate parameters, and with function results (calculated nodes or name-strings), name() is working fine, as long as the parser does not mess things up (as in "...it can use any prefix at all, as determined by the parser") and that the prefixes and uris are maintained properly. This is also why I started dreaming that maybe one day, we could use something like the curly brackets (or a function like QName()) to try to get around ... I am ok with this now and any improvement help is very much appreciated. Thank you. ac For example, how to make
|

Cart



