XPath is a W3C
standard (http://www.w3.org/TR/xpath) for locating
portions of an XML document that match a set of criteria. Use XPath
to find the names of all the people in your XML address book who live
New York, all URLs for articles written on
PHP in a Meerkat RSS feed, or the most recent
entry into your XML-based content management system.
Think of XPath as SQL for XML documents. You can do all kinds of advanced queries using XPath, such as finding items with a certain parent, attribute, or location in the tree. XPath uses the same syntax as XSLT, so you might be familiar with parts of it, even if you’re not an XPath expert.
There are two parts to an XPath query: the portion of the XML
document you wish to retrieve and the restrictions you want to place
upon your query. This is analogous to SQL
For example, you can search the XML address book in Example A-1 for all the email addresses:
Levels in an XML document are separated by
/, similar to the separators for folders in a
directory path. When the query begins with a slash, it tells XPath to
start looking at the top-level element. Therefore,
/address-book/person/email means gather all the
element under an
This is like a SQL
SELECT without a
WHERE. However, if you’re
planning a trip to Manhattan and just want to find all your friends
who live in New York, NY, use this:
/address-book/person[city = "New York" and state ...