Re: [xsl] Re: Re: Change of Attribute Value

Subject: Re: [xsl] Re: Re: Change of Attribute Value
From: "G. Ken Holman" <gkholman@xxxxxxxxxxxxxxxxxxxx>
Date: Fri, 04 Nov 2005 17:45:56 -0500
At 2005-11-04 22:10 +0000, David Carlisle wrote:
> Bottom line is that XPath 1.0 gives no way to select all attributes
> *except* a given one other than the resort to the name test.

> XPath 2.0 can select "@* except attribute(xyz)", which is very nice.

which means in xpath 1 you can select

@*[count(.|../@xyz)=2] which is even nicer?

I went to the trouble of writing up the above in a post before leaving for an afternoon appointment, and then purposely trashed it before sending because I realized that you have to know @xyz exists ... if it doesn't exist, then none of the attributes get copied.


That left me with:

@*[not(../@xyz) or count(.|../@xyz)=2]

... which is probably how I'd want to go if the attribute was namespace qualified to avoid using name() and namespace-uri().

But not elegant (cough!) enough to actually *recommend* to someone.

. . . . . . . . Ken


-- World-wide on-site corporate, govt. & user group XML/XSL training. G. Ken Holman mailto:gkholman@xxxxxxxxxxxxxxxxxxxx Crane Softwrights Ltd. http://www.CraneSoftwrights.com/s/ Box 266, Kars, Ontario CANADA K0A-2E0 +1(613)489-0999 (F:-0995) Male Cancer Awareness Aug'05 http://www.CraneSoftwrights.com/s/bc Legal business disclaimers: http://www.CraneSoftwrights.com/legal

Current Thread