Name
id( ) — returns a single node matching a document-unique ID
Synopsis
| Defined in: XPath 1.0 |
Parameters: object obj (required) |
| Return type: node-set |
Normally, this function is used to return the single node with an ID that matches the string value passed in as a parameter. When a space-separated list or a node-set is passed in, it will return the union of all nodes that individually match the IDs. This function normally appears on the left-hand side of a path expression.
Note
Determining what is a ‘unique’ ID is harder than it looks.
The XPath 1.0 Recommendation states that “If a
document does not have a DTD, then no element in the document will
have a unique ID.” In XForms, a DTD will never be
associated with instance data. An XML Schema, however, has a
datatype called
xs:ID, which can be associated with an instance
data node to provide an indication that the node contains a unique
id. Thus, it is still possible for the id( )
function to be useful in XForms, though it takes a little extra work.
This example selects the element with the unique ID
“taxtable” (if any) and returns a
node-set of all the rate element children:
id("taxtable")/rateBecome an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access