Finds all XML elements in an XML document that lie on a certain path. The path of the found elements must match exactly the search path.
fxml_findPathFull(xmlflat.df, path, attr.only = NULL, attr.not = NULL)
A flat XML dataframe created with
A character vector representing the path to be searched. Each element of the vector is a hierarchy level in the XML document. Example:
A list of named vectors representing attribute/value combinations the XML elements on the search path must match.
The name of an element in the list is the XML elment name to which the attribute belongs. The list element itself is a named vector.
The vector's elements represent different attributes (= the names of the vector elements) and their values (= vector elements).
A list of vectors representing attribute/value combinations the XML elements on the search path must not match to be included in the results. See argument
The IDs (
xmlflat.df$elemid.) of the XML elements that are located on the provided path. Sub-elements of the elements on the search path are not returned as they have a different search path.
NULL, if no elements where found.
fxml_findPathRoot(), the search always starts at the root node of the XML document. Only if an element has exactly the same path as the search path, it is returned as a result.
If, for example,
path = c("tag1", "tag2") then the element with full XML path
<tag1><tag2><tag3> would not be found, only if search path were
c("tag1", "tag2", "tag3").
fxml_findPath...() functions allow for different search modes:
fxml_findPath: Search for path anywhere in the XML document (not necessarily starting at the root node). Sub-elements are returned, too.
fxml_findPathRoot: Search for path from the root node of the XML document downwards. Sub-elements are returned, too.
fxml_findPathBottom: Search for path from the bottom of the element hierarchy in the XML document.
# Load example file with population data from United Nations Statistics Division # and create flat dataframe example <- system.file("worldpopulation.xml", package="flatxml") xml.dataframe <- fxml_importXMLFlat(example) # Find all XML elements that have the exact path <root><data><record> path <- c("root", "data", "record") fxml_findPathFull(xml.dataframe, path)#> NULL