xmlClone: Create a copy of an internal XML document or node

Description

These methods allow the caller to create a copy of
an XML internal node. This is useful, for example, if we want to use
the node or document in an additional context, e.g.
put the node into another document while leaving it in the
existing document. Similarly, if we want to remove nodes to simplify
processing, we probably want to copy it so that the changes are not
reflected in the original document.

At present, the newly created object is not garbage collected.

Usage

1

Arguments

node

the object to be cloned

recursive

a logical value indicating whether the
entire object and all its descendants should be duplicated/cloned (TRUE)
or just the top-level object (FALSE)

addFinalizer

typically a logical value indicating whether to bring this
new object under R's regular garbage collection.
This can also be a reference to a C routine which is to be used as
the finalizer. See getNativeSymbolInfo.

...

additional parameters for methods

Value

A new R object representing the object.

Author(s)

Duncan Temple Lang

References

libxml2

See Also

Examples

1
2
3
4
5
6
7
8
9
10

doc =xmlParse('<doc><author id="dtl"><firstname>Duncan</firstname><surname>Temple Lang</surname></author></doc>')
au =xmlRoot(doc)[[1]]# make a copy
other =xmlClone(au)# change it slightlyxmlAttrs(other)=c(id ="dtl2")# add it to the childrenaddChildren(xmlRoot(doc), other)