R: Coerce xml nodes to a list.

as_list {xml2} | R Documentation

## Coerce xml nodes to a list.

### Description

This turns an XML document (or node or nodeset) into the equivalent R list. Note that this is `as_list()`, not `as.list()`: `lapply()` automatically calls `as.list()` on its inputs, so we can't override the default.

### Usage

    as_list(x, ns = character(), ...)

### Arguments

`x` | A document, node, or node set.
`ns` | Optionally, a named vector giving prefix-url pairs, as produced by `xml_ns()`. If provided, all names will be explicitly qualified with the ns prefix, i.e. if the element `bar` is defined in namespace `foo`, it will be called `foo:bar`. (And similarly for attributes). Default namespaces must be given an explicit name. The ns is ignored when using `xml_name<-()` and `xml_set_name()`.
`...` | Needed for compatibility with generic. Unused.

### Details

`as_list` currently only handles the four most common types of children that an element might have:

- Other elements, converted to lists.

- Attributes, stored as R attributes. Attributes that have special meanings in R (`class()`, `comment()`, `dim()`, `dimnames()`, `names()`, `row.names()` and `tsp()`) are escaped with '.'

- Text, stored as a character vector.

### Examples

    as_list(read_xml("<foo> a <b /><c><![CDATA[<d></d>]]></c></foo>"))
    as_list(read_xml("<foo> <bar><baz /></bar> </foo>"))
    as_list(read_xml("<foo id = 'a'></foo>"))
    as_list(read_xml("<foo><bar id='a'/><bar id='b'/></foo>"))

[Package xml2 version 1.3.0 Index]