Given a collection of Metadata from differenct sources, combined them to create the most complete and detailed accounting of metadata.


Uses the DOI formatted citation service to generate citation text for a given DOI. This works for DOI's issued by: CrossRef, DataCite, and mEDRA.


generate([repo/s], url/id, [shortname]; show_failures=false)

Generates a DataDeps code block. The only required parameter is the url/id.

  • url/id The identifier for the dataset
    • a URL for a landing page is normally best
    • Other IDs like a DOIs also work.
  • repo/s either a single repository/API or a list of such
    • this takes on of the DataRepo types exported by this package.
      • E.g CKAN(), or Figshare().
    • If not provided, this defaults to checking all of them.
    • If only one repo is provided, and it fails, the error will be thrown.
    • If multiple repos are provided, them the metadata from all of them is combined.
  • shortname, the name to use in the generated DataDep
    • if not provided will use the dataset's title, but these are often very long.
  • show_failures, weather or not to list all the repos that fail and why.
    • You generally do not want to turn this on, unless you are debugging.
    • It is fine and expected for most repos to fail (after all the data is probably only on one of them)
    • If all repos fail, then the failure list will be shown, regardless of if this is set or not.
getfirst(dict, keys...)

Returns the element coresponding to the first key that is found. Returns missing if no key is found.


Extracts just the unformatted text (no attributes etc), from a HTML document or fragment(/s)