xml_attr_mod {openxlsx2} | R Documentation |
adds or updates attribute(s) in existing xml node
Description
Needs xml node and named character vector as input. Modifies the arguments of each first child found in the xml node and adds or updates the attribute vector.
Usage
xml_attr_mod(
xml_content,
xml_attributes,
escapes = FALSE,
declaration = FALSE,
remove_empty_attr = TRUE
)
Arguments
xml_content |
some valid xml_node |
xml_attributes |
R vector of named attributes |
escapes |
bool if escapes should be used |
declaration |
bool if declaration should be imported |
remove_empty_attr |
bool remove empty attributes or ignore them |
Details
If a named attribute in xml_attributes
is "" remove the attribute
from the node.
If xml_attributes
contains a named entry found in the xml node, it is
updated else it is added as attribute.
Examples
# add single node
xml_node <- "<a foo=\"bar\">openxlsx2</a><b />"
xml_attr <- c(qux = "quux")
# "<a foo=\"bar\" qux=\"quux\">openxlsx2</a><b qux=\"quux\"/>"
xml_attr_mod(xml_node, xml_attr)
# update node and add node
xml_node <- "<a foo=\"bar\">openxlsx2</a><b />"
xml_attr <- c(foo = "baz", qux = "quux")
# "<a foo=\"baz\" qux=\"quux\">openxlsx2</a><b foo=\"baz\" qux=\"quux\"/>"
xml_attr_mod(xml_node, xml_attr)
# remove node and add node
xml_node <- "<a foo=\"bar\">openxlsx2</a><b />"
xml_attr <- c(foo = "", qux = "quux")
# "<a qux=\"quux\">openxlsx2</a><b qux=\"quux\"/>"
xml_attr_mod(xml_node, xml_attr)
[Package openxlsx2 version 1.8 Index]