Skip to contents

[Stable]

Usage

form_xml(
  parse = TRUE,
  pid = get_default_pid(),
  fid = get_default_fid(),
  version = NULL,
  url = get_default_url(),
  un = get_default_un(),
  pw = get_default_pw(),
  retries = get_retries()
)

Arguments

parse

Whether to parse the XML into a nested list, default: TRUE

pid

The numeric ID of the project, e.g.: 2.

Default: get_default_pid.

Set default pid through ru_setup(pid="...").

See vignette("Setup", package = "ruODK").

fid

The alphanumeric form ID, e.g. "build_Spotlighting-0-8_1559885147".

Default: get_default_fid.

Set default fid through ru_setup(fid="...").

See vignette("Setup", package = "ruODK").

version

(character) The version of the Form version being referenced. Pass ___ for a blank version. If NULL (default), the published Form XML is returned.

url

The ODK Central base URL without trailing slash.

Default: get_default_url.

Set default url through ru_setup(url="...").

See vignette("Setup", package = "ruODK").

un

The ODK Central username (an email address). Default: get_default_un. Set default un through ru_setup(un="..."). See vignette("Setup", package = "ruODK").

pw

The ODK Central password. Default: get_default_pw. Set default pw through ru_setup(pw="..."). See vignette("Setup", package = "ruODK").

retries

The number of attempts to retrieve a web resource.

This parameter is given to RETRY(times = retries).

Default: 3.

Value

The form XML as a nested list.

Details

To get the XML of the Form, add .xml to the end of the request URL. To get the XML of one published Form version, request the version resource with .xml appended. Since the XForms specification allows blank strings as versions, pass the special value ___ (three underscores) as the version to retrieve the blank version.

Examples

if (FALSE) { # \dontrun{
# See vignette("setup") for setup and authentication options
# ruODK::ru_setup(svc = "....svc", un = "me@email.com", pw = "...")

# With explicit pid and fid
fxml_defaults <- form_xml(1, "build_xformsId")

# With defaults
fxml <- form_xml()
listviewer::jsonedit(fxml)

# form_xml returns a nested list
class(fxml)
# > "list"

# The XML of one published Form version
vl <- form_version_list()
fxml_v1 <- form_xml(version = vl$version[[1]], parse = FALSE)
} # }