XPath Syntax Quick Reference

This topic provides a quick reference for XPath expression syntax.

Axes

XPath provides the following axes:

  • ancestor
  • ancestor-or-self
  • attribute
  • child
  • descendant
  • descendant-or-self
  • following
  • following-sibling
  • namespace
  • parent
  • preceding
  • preceding-sibling
  • self

Node Tests

XPath provides the following node tests:

  • * selects all nodes of the specified name. For the attribute axis, attributes are selected. For the namespace axis, namespace nodes are selected. For all other axes, element nodes are selected.
  • comment() selects all comment nodes.
  • element_name selects all element_name nodes.
  • node() selects all nodes.
  • processing-instruction(["some_literal "]) selects all processing instructions. If some_literal is specified, processing-instruction() selects all processing instructions with some_literal as their name.
  • text() selects all text nodes.

Filters

A filter specifies a constraint on a node set with respect to an axis to produce a new node set.

Location Steps

A location step has the following format:

AxisSpecifier
              ::NodeTest
              [Filter
              ][Filter
              ]...
               

            

XPath Expression

An XPath expression has one of the following formats:

LocationStep[/LocationStep]...
               
FunctionCall()[Filter]/LocationStep[/LocationStep]...
               
(Expression)[Filter]/LocationStep[/LocationStep]...
               

            

A function call or an XPath expression in parentheses can appear only at the very beginning of an XPath expression. An expression in parentheses always returns a node set. Any function that appears at the beginning of an XPath location step expression must return a node set.

XHTML Tools

Powerful XHTML Tools for converting HTML to XHTML, validating XHTML, transforming XML to XHTML, editing JSP, creating XML driven Websites and more.

HTML to XML Importer

Convert HTML to XML with the Stylus Studio HTML to XML Importer, a powerful, visual utility for Converting HTML to XML with ease.

Learn Convert to XML

Convert to XML lets you convert .txt, binary, and EDI files to XML documents. Convert to XML works on a single document, or to build reusable converters that let you open flat files as XML documents. Free online demonstration!

XQuery Talk

Join the XQuery Talk mailing list for a practical discussion about XQuery. It's a place to work together to learn a new language, talk about problem solutions, discuss engines and implementations, chat about the latest XQuery news and more.

Stylus Most Wanted

 
Free Stylus Studio XML Training:
W3C Member