This week's giveaway is in the Spring forum.
We're giving away four copies of REST with Spring (video course) and have Eugen Paraschiv on-line!
See this thread for details.
The moose likes XML and Related Technologies and the fly likes Extracting Node using Xpath Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of REST with Spring (video course) this week in the Spring forum!
JavaRanch » Java Forums » Engineering » XML and Related Technologies
Bookmark "Extracting Node using Xpath" Watch "Extracting Node using Xpath" New topic

Extracting Node using Xpath

ronnir paterl

Joined: Oct 18, 2007
Posts: 11

I am newbie in XML working with XPath. I am using Xpath to parse a code that looks like this

I am interested in extracting the node td, (or alternatively the node that has a total of 4 text nodes). I tried using //tr//text(), but it returns all (8) text nodes instead of 4.

Is there any way to specify a node by the number of children it has?

Any help is appreciated.

Paul Clapham

Joined: Oct 14, 2005
Posts: 19860

Well, sure. Whenever you are trying to select nodes which satisfy a particular condition, you would put that condition into an XPath predicate. And I believe XPath has a count() function: you could look that up.

However both the "td" elements in your example have five descendants which are text. Not four, there's a whitespace text node in both cases. So comparing the number of text descendants wouldn't help in this caswe.
I agree. Here's the link:
subject: Extracting Node using Xpath
It's not a secret anymore!