XPath

Manipulator

The node takes the XML Documents of the selected column and performs XPath queries on them. The node supports XPath 1.0.

XPath Syntax

Selection Nodes

Expression Description
nodename Selects all nodes with the name "nodename"
/ Selects from the root node.
// Selects nodes in the document from the current node that match the selection no matter where they are
. Selects the current node
.. Selects the parent of the current node
@ Selects attributes

Predicates

Path Expression Result
/bookstore/book[1] Selects the first book element that is the child of the bookstore element.
/bookstore/book[last()] Selects the last book element that is the child of the bookstore element
/bookstore/book[last()-1] Selects the last but one book element that is the child of the bookstore element
/bookstore/book[position()<3] Selects the first two book elements that are children of the bookstore element
//title[@lang] Selects all the title elements that have an attribute named lang
//title[@lang='en'] Selects all the title elements that have a "lang" attribute with a value of "en"
/bookstore/book[price>35.00] Selects all the book elements of the bookstore element that have a price element with a value greater than 35.00
/bookstore/book[price>35.00]/title Selects all the title elements of the book elements of the bookstore element that have a price element with a value greater than 35.00

Syntax description from w3cschools.com.

Hint for streaming: Node can only be executed in real streamed fashion if every single XPath query is configured as follow (see XPath Query Settings):
The column names are fixed (i.e. select 'new column name') and either 'Single Cell', 'Collection Cell', or 'Multiple Rows' are selected as 'Multiple tag option'.

Input Ports

  1. Type: Data
    Input table containing at least one XML column.

Output Ports

  1. Type: Data
    The input table with additional columns containing the result of the XPath queries.

Extension

This node is part of the extension

KNIME XML-Processing

v4.0.0

Short Link

Drag node into KNIME Analytics Platform