RE: [xsl] XPath - excluding specified childNodes from result nodeList

Subject: RE: [xsl] XPath - excluding specified childNodes from result nodeList
From: "Scott Trenda" <Scott.Trenda@xxxxxxxx>
Date: Sat, 15 Dec 2007 13:47:22 -0600
So... are you doing this via an XSLT stylesheet or via an XPath query?
If you're using XSLT, then this might be as simple as:
  <xsl:template match="c"/>
Then you can just <apply-templates/> from a, and that template will
ensure that nothing is output when c is iterated.

~ Scott

-----Original Message-----
From: Steven [mailto:gatecrasher1981@xxxxxxxxx]
Sent: Saturday, December 15, 2007 4:49 AM
To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
Subject: Re: [xsl] XPath - excluding specified childNodes from result

> XPath expressions return a set of nodes from the original tree. They
> modify the tree in any way. The <a> node in your document has a <c>
> and there is nothing any XPath expression can do to change that. The
> expression /document/a doesn't actually include either the b or c
> in its result set, but the a that it returns is the original a, with
> children intact.

Thanks for the replies all. I suspected something like this might be
the case based on my research and feable attempts but I was hoping
failure thus far was down to my XPath nievity, thanks for clarifying.

I was hoping to solve the problem just using XPath rather than
performing an operations on the result, maybe there is another

The example I gave represents an HTML document that I've no control
over, each node is a text node and I was hoping to get the entire text
string, minus the text contained in child node 'c'. Is it somehow
possible to iterate all nodes within a specific path and concatenate
their text content? Conditional on the node not being 'c' ? I've read
about a few of the string functions but it's a little beyond me to
figure out at the moment.

Thanks again.


Current Thread