Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Provide standard, accessible data import and export #6

Open
florianm opened this issue Apr 20, 2017 · 0 comments
Open

Provide standard, accessible data import and export #6

florianm opened this issue Apr 20, 2017 · 0 comments
Assignees
Projects

Comments

@florianm
Copy link
Collaborator

florianm commented Apr 20, 2017

Source

OIM

Related issues

#43

Requirement

The solution shall provide a standardised, accessible way to import and export all data, like a RESTful or GraphQL API.

Access needs to be following standard protocols and formats, be entirely independent of both the systems it is stored in, as well as independent of the software packages it is analysed with.

Use cases

Other systems, scripts, software interact with data (read/write) in the solution through a RESTful or GraphQL API.

Example: the workbooks accessing NTP track count data or WAMTRAM tagging data access data programmatically without human intervention.

The workbook turtle tracks accesses the data prepared by the above mentioned workbooks through a RESTful API from one central location without human intervention or any manual steps.

Implementation

WAStD has both a RESTful API and an experimental GraphQL API, documented in the API webpages themselves, as well as in the WAStD User Manual chapter on the API.

A dedicated R package, wastdr, provides convenience wrappers around the API endpoints and is used in production to upload, download, parse, summarise and visualise WAStD data. wastdr provides both built-in and online documentation.

A second dedicated R package, ruODK, was written to wrap the API of the electronic data capture clearinghouse server, ODK Central. ruODK has passed peer review and was accepted as part of the prestigious rOpenSci community of software packages.

The entire data ETL, QA and reporting data pipeline is implemented in its own R package, etlTurtleNesting. It has internal documentation only at this point. This package uses ruODK and wastdr, it contains all mapping between the data structures of data capture forms and WAStD, and all skip logic.
The process runs as a single automated build using the R package for workflow automation, drake.

This ecosystem of APIs, documentation, and software packages provides worked examples both for future users and external developers seeking to re-use parts of this system.

@florianm florianm added this to the Overarching requirements milestone Apr 20, 2017
@florianm florianm self-assigned this Apr 20, 2017
@florianm florianm changed the title Standard, accessible data import / export Provide standard, accessible data import and export Jun 10, 2017
@florianm florianm added this to Done in WAStD Apr 10, 2019
@florianm florianm added the Implemented Implementation completed label Mar 30, 2021
@florianm florianm moved this from Done to Implemented in WAStD Mar 30, 2021
@florianm florianm moved this from Implemented to Done in WAStD Mar 31, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
WAStD
  
Done
Development

No branches or pull requests

1 participant