as_xml {emld}R Documentation

Coerce an emld object into XML (EML's standard format)

Description

Coerce an emld object into XML (EML's standard format)

Usage

as_xml(x, file = NULL, root = "eml", ns = "eml", schemaLocation = TRUE)

Arguments

x

an emld object

file

optional path to write out to file. Otherwise, defaults to NULL and will return an xml_document object.

root

name for the root node; default to 'eml'

ns

namespace abbreviation on root node, default 'eml'

schemaLocation

If not explicitly set on x, automatically set xsi:schemaLocation based upon the root namespace (TRUE, default), do not set a xsi:schemaLocation (FALSE), or set a specific xsi:schemaLocation value ("Your value here..."). See Examples.

Details

Unlike as_json, this function cannot rely on the existing convention of serializing a list to xml, eg, as defined by xml2::as_xml_document() Instead, this relies on a modified version, as_eml_document. In addition further steps must be taken when working with JSON-LD to deal with different possible framings and namespaces from the JSON-LD context element. Thus this as_xml function is particular to EML and emld objects alone.

Value

a xml_document object. Or if a file path is provided, the metadata is written out in XML file and the function returns NULL invisibly.

Examples

f <- system.file("extdata/example.xml", package = "emld")
emld <- as_emld(f)
xml <- as_xml(emld)

## can also write directly to a file:
xml_file <- tempfile()
as_xml(emld, xml_file)

## if you don't want the `xsi:schemaLocation` attribute set
as_xml(emld, schemaLocation = FALSE)

## or if you want to set your own value
as_xml(emld, schemaLocation = "https://eml.ecoinformatics.org/eml-2.2.0
http://example.com/eml-2.2.0/eml.xsd")


[Package emld version 0.5.1 Index]