File APIs for Java Developers
Manipulate DOC, XLS, PPT, PDF and many others from your application.
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
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: 19973

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
jQuery in Action, 3rd edition