Learn R Programming

safedata (version 1.1.3)

validate_record_ids: Validates dataset record ids from user input

Description

This takes a vector of user supplied record identifiers and validates them against the index. Typically the identifiers are provided as integers, but the function will also handle Zenodo URLs and DOIs.

Usage

validate_record_ids(record_set)

# S3 method for safe_record_set print(x, ...)

# S3 method for safe_record_set &(x, y)

# S3 method for safe_record_set |(x, y)

Value

An object of class safe_record_set (see Details)

Arguments

record_set

A vector of values containing Zenodo concept or record ids.

x, y

Objects of class safe_record_set

...

Further arguments to print methods, unused.

Methods (by generic)

  • print: Print a brief summary of "safe_record_set" objects.

  • &: Combine two record sets, retaining only records that are present in both.

  • |: Combine two record sets, including the records that are present in either.

Details

The function returns a data frame with class safe_record_set, containing the columns concept, record, available and, finally, mra containing the most recent available record (if any). The function can be run on an existing safe_record_set to update this information.

Note that record will be NA when a value represents a concept id. Inputs that do not match a record or concept ids are returned in the attribute mismatches of the record set.

This function is largely used internally to validate user inputs and to provide a common output for the search functions but is exported to allow users to check record ids and display summary information using the print method.

Examples

Run this code
   set_example_safe_dir()
   validate_record_ids(c(3247631, 3266827, 3266821, -1000))
   validate_record_ids(c("https://doi.org/10.5281/zenodo.3247631",
                         "10.5281/zenodo.3266827",
                         "https://zenodo.org/record/3266821",
                         "not_this_one/3266821"))
   unset_example_safe_dir()

Run the code above in your browser using DataLab