Wrapper class. Use this class to access the XPath functions.
Constants
| Name | Description | |
|---|---|---|
| EMPTY_HASH | = {} |
Methods
Class
| Visibility | Signature |
|---|---|
| public | each (element, path=nil, namespaces=nil, variables={}) |
| public | first (element, path=nil, namespaces=nil, variables={}) |
| public | match (element, path=nil, namespaces=nil, variables={}) |
Class Method Detail
each(element, path=nil, namespaces=nil, variables={})
Itterates over nodes that match the given path, calling the supplied block with the match.
| element: | The context element |
| path: | The xpath to search for. If not supplied or nil, defaults to ’*’ |
| namespaces: | If supplied, a Hash which defines a namespace mapping |
XPath.each( node ) { |el| ... }
XPath.each( node, '/*[@attr='v']' ) { |el| ... }
XPath.each( node, 'ancestor::x' ) { |el| ... }
first(element, path=nil, namespaces=nil, variables={})
Finds and returns the first node that matches the supplied xpath.
| element: | The context element |
| path: | The xpath to search for. If not supplied or nil, returns the first node matching ’*’. |
| namespaces: | If supplied, a Hash which defines a namespace mapping. |
XPath.first( node )
XPath.first( doc, "//b"} )
XPath.first( node, "a/x:b", { "x"=>"http://doofus" } )
match(element, path=nil, namespaces=nil, variables={})
Returns an array of nodes matching a given XPath.