dsROCrate provides tools to capture, structure and audit DataSHIELD analyses using the RO-Crate standard. It enables reproducible governance of federated analyses by packaging inputs, outputs, metadata, and audit information into a consistent, portable format.
You can install the released version of dsROCrate from CRAN with:
install.packages("dsROCrate")And the development version from GitHub with:
# install.packages("pak")
pak::pak("FederatedMethods/dsROCrate@dev")
# open connection
con <- opalr::opal.login(
username = "administrator",
password = "password",
url = "https://opal-demo.obiba.org"
)
# generate RO-Crate with Five Safes components
crate <- con |>
# initialise RO-Crate
dsROCrate::init(project = "CNSIM", tables = "CNSIM1", user = "dsuser") |>
# extract Five Safes components
dsROCrate::safe_people() |>
dsROCrate::safe_project() |>
dsROCrate::safe_data() |>
dsROCrate::safe_setting() |>
dsROCrate::safe_output()
# generate report
dsROCrate::report(crate, title = "DataSHIELD Five Safes report")Alternatively, the dsROCrate::audit() function can be used to generate an audit with all the Five Safes components:
proj_audit <- opalr::opal.login(
username = "administrator",
password = "password",
url = "https://opal-demo.obiba.org"
) |>
dsROCrate::audit(project = "CNSIM", tables = "CNSIM1", user = "dsuser")
# generate report
dsROCrate::report(proj_audit, title = "DataSHIELD Safe People - Audit Report")For further details, see the following vignette:
vignette("getting-started", package = "dsROCrate")