Subject: Re: [xsl] better way to say "all attrs except"? From: Wendell Piez <wapiez@xxxxxxxxxxxxxxxx> Date: Mon, 06 Feb 2012 12:29:55 -0500 |
On Sun, Feb 05, 2012 at 10:30:15PM -0500, Syd Bauman scripsit:For years I've used expressoins like @*[not(name(.)='xml:id' or name(.)='rend')] to ask for all of the attributes *except* xml:id= or rend=. And some time ago Jeni recommended essentially the same approach.[1] But I'm wondering if that isn't an XPath 1-ish way to do things, and if there isn't a nicer way to get the same set when using XSLT 2 (and thus can make use of XPath 2).
@* except (@xml:id,@rend)
is how that goes in XSLT 2.
(or @*[name(.) != ('xml:id','rend')] if you're preferential toward the predicate, but the except is the way to go, since that's an actual node test and keeps you out of the stringy land of names.)
The only tricky thing I've so far noticed about 'except' is that it doesn't always affect the implicit context of position() just how you would expect without the write-stuff-down-and-stare-at-it step.
attribute::type union attribute::rend @type|@rend
Cheers, Wendell
====================================================================== Wendell Piez mailto:wapiez@xxxxxxxxxxxxxxxx Mulberry Technologies, Inc. http://www.mulberrytech.com 17 West Jefferson Street Direct Phone: 301/315-9635 Suite 207 Phone: 301/315-9631 Rockville, MD 20850 Fax: 301/315-8285 ---------------------------------------------------------------------- Mulberry Technologies: A Consultancy Specializing in SGML and XML ======================================================================
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
Re: [xsl] better way to say "all at, Graydon | Thread | [xsl] Possible to create XSLT with , TW |
Re: [xsl] collecting a fileset with, Wendell Piez | Date | Re: [xsl] Entities, Wendell Piez |
Month |