This tutorial assumes that you have an internet connection and can access OBiBa’s Opal demo server: https://opal-demo.obiba.org
Alternatively, if you want to test a local deployment, please check out the following vignette first:
ⓘ Here we are using an administrator account, as this one is available by default on the demo server; however, we recommend you create a dedicated auditing account with the
Audit systempermission level. See the vignette:
vignette('audit-permissions', package = 'dsROCrate')for further details.
Here we will use OBiBa’s Opal demo server: https://opal-demo.obiba.org/ which can be accessed with the following login credentials:
# define global variables
## Opal server access
USERNAME <- "administrator"
USERPASS <- "password"
SERVER <- "https://opal-demo.obiba.org"
## Credentials for `dsuser`
### NOTE: this is only used to simulate an analysis and generate logs
DSUSERPASS <- "P@ssw0rd"Next, define global variables used in generating the RO-Crate, such as project name, asset (e.g., tables, resources, etc.) references (within the project) and user identifiers.
Once the credentials and Five Safes variables are configured, we can start a new session on the Opal server with the following command:
To create a basic RO-Crate, we will use the {rocrateR}
package. This package can be installed with the following command:
# install.packages("pak")
pak::pak("rocrateR")
# for development version use
pak::pak("ResearchObject/ro-crate-r@dev")Then, a basic RO-Crate can be created with the following command:
Note that this RO-Crate uses the 5s-crate profile.
print(basic_rocrate)
#> {
#> "@context": "https://w3id.org/ro/crate/1.2/context",
#> "@graph": [
#> {
#> "@id": "ro-crate-metadata.json",
#> "@type": "CreativeWork",
#> "about": {
#> "@id": "./"
#> },
#> "conformsTo": {
#> "@id": "https://w3id.org/ro/crate/1.2"
#> }
#> },
#> {
#> "@id": "./",
#> "@type": "Dataset",
#> "name": "",
#> "description": "",
#> "datePublished": "2026-09-24",
#> "license": {
#> "@id": "http://spdx.org/licenses/CC-BY-4.0"
#> },
#> "conformsTo": {
#> "@id": "https://w3id.org/5s-crate/0.4"
#> }
#> },
#> {
#> "@id": "https://w3id.org/5s-crate/0.4",
#> "@type": ["CreativeWork", "Profile"],
#> "name": "Five Safes RO-Crate profile"
#> }
#> ]
#> }To add details for Safe Data, use the function
dsROCrate::safe_data().
basic_rocrate <- o |>
dsROCrate::safe_data(rocrate = basic_rocrate,
project = PROJECT,
tables = TABLES)
print(basic_rocrate) # note that the output will be truncated
...
#> {
#> "@id": "#perm:4d2673da68a58c3bce23a61d97b6df51-dict-summary-read",
#> "@type": "ReadAction",
#> "agent": {
#> "@id": "#person:cb809df1c2fb30b154f60b843e62b3d0"
#> },
#> "object": {
#> "@id": "#asset:fad6faf661584d53e58f9730b14c5aae"
#> },
#> "actionStatus": "PotentialActionStatus",
#> "description": "User may view table dictionary and summary statistics only; access to individual values is restricted."
#> },
#> {
#> "@id": "#perm:9bf7f75b6c5b07d02830b95652cd39a0-dict-summary-read",
#> "@type": "ReadAction",
#> "agent": {
#> "@id": "#person:a0af2a94926db1b49ad7a812eef509d2"
#> },
#> "object": {
#> "@id": "#asset:fad6faf661584d53e58f9730b14c5aae"
#> },
#> "actionStatus": "PotentialActionStatus",
#> "description": "User may view table dictionary and summary statistics only; access to individual values is restricted."
#> },
#> {
#> "@id": "#perm:1f09051d217d17c3e9b5ed92819ded26-admin-table",
#> "@type": "ControlAction",
#> "agent": {
#> "@id": "#person:a3bc19cc9c1269320cf2847c63a66a92"
#> },
#> "object": {
#> "@id": "#asset:fad6faf661584d53e58f9730b14c5aae"
#> },
#> "actionStatus": "PotentialActionStatus",
#> "description": "User has full administrative rights: view/edit dictionary and view/edit individual values."
#> },
#> {
#> "@id": "#asset:fad6faf661584d53e58f9730b14c5aae",
#> "@type": "Dataset",
#> "name": "CNSIM1",
#> "description": "table CNSIM1",
#> "url": "/datasource/CNSIM/table/CNSIM1",
#> "dateCreated": "2026-09-24T00:00:00Z",
#> "dateModified": "2026-09-24T00:00:00Z",
#> "isPartOf": {
#> "@id": "#project:7ba189863f9f641196596cb28e04aa14"
#> }
#> }
#> ]
#> }To add details for Safe Project, use the function
dsROCrate::safe_project().
basic_rocrate <- o |>
dsROCrate::safe_project(rocrate = basic_rocrate,
project = PROJECT)
print(basic_rocrate) # note that the output will be truncated
...
#> ]
#> },
#> {
#> "@id": "#project:7ba189863f9f641196596cb28e04aa14",
#> "@type": "Project",
#> "name": "CNSIM",
#> "dateCreated": "2026-09-24T04:30:02.202Z",
#> "dateModified": "2026-09-24T04:30:07.206Z",
#> "hasPart": [
#> {
#> "@id": "#asset:fad6faf661584d53e58f9730b14c5aae"
#> }
#> ]
#> }
#> ]
#> }To add details for Safe People, use the function
dsROCrate::safe_people().
To add details for Safe Setting, use the function
dsROCrate::safe_setting().
ⓘ️ NOTE: The dsROCrate::safe_setting
function requires administrator or auditor privileges, so here, we will
have to log in with administrator credentials (if you used a
non-administrator/auditor account previously).
# close previous connection
opalr::opal.logout(o)
# open new connection as administrator
o <- opalr::opal.login(
username = "administrator",
password = "password",
url = SERVER
)Then, we can proceed as per usual:
basic_rocrate <- o |>
dsROCrate::safe_setting(rocrate = basic_rocrate)
print(basic_rocrate) # note that the output will be truncated
...
#> {
#> "@id": "#disc:27d8c1d2233ecb654a24b635fd4dbd78",
#> "@type": "PropertyValue",
#> "name": "datashield.privacyLevel",
#> "value": "5"
#> },
#> {
#> "@id": "#disc:46b65707a6b998f3b1364bc10e6d9b4b",
#> "@type": "PropertyValue",
#> "name": "default.datashield.privacyControlLevel",
#> "value": "banana"
#> },
#> {
#> "@id": "#disc:7769282e7b0a1cb8887f60886c7b56ae",
#> "@type": "PropertyValue",
#> "name": "default.nfilter.glm",
#> "value": "0.33"
#> },
#> {
#> "@id": "#disc:49d822f52075aafbec1d1b2545aa46b7",
#> "@type": "PropertyValue",
#> "name": "default.nfilter.kNN",
#> "value": "3"
#> },
#> {
#> "@id": "#disc:9a59210a743557bbd61cb21c3f1e0a79",
#> "@type": "PropertyValue",
#> "name": "default.nfilter.levels.density",
#> "value": "0.33"
#> },
#> {
#> "@id": "#disc:a00b1e31a448142ee66bbb013f990e1f",
#> "@type": "PropertyValue",
#> "name": "default.nfilter.levels.max",
#> "value": "40"
#> },
#> {
#> "@id": "#disc:29dd5e27a9f1c66d81a7037c236e7dd5",
#> "@type": "PropertyValue",
#> "name": "default.nfilter.noise",
#> "value": "0.25"
#> },
#> {
#> "@id": "#disc:1c12e549b91e2cc0856f56657988ce54",
#> "@type": "PropertyValue",
#> "name": "default.nfilter.string",
#> "value": "80"
#> },
#> {
#> "@id": "#disc:786bc0ffcdd3054925e431240caecea5",
#> "@type": "PropertyValue",
#> "name": "default.nfilter.stringShort",
#> "value": "20"
#> },
#> {
#> "@id": "#disc:fd9bea5ef311d5f14b28d237ecb6e985",
#> "@type": "PropertyValue",
#> "name": "default.nfilter.subset",
#> "value": "3"
#> },
#> {
#> "@id": "#disc:4e93a50cbd8cfea8f0a6adc50ee7aac0",
#> "@type": "PropertyValue",
#> "name": "default.nfilter.tab",
#> "value": "3"
#> },
#> {
#> "@id": "#env:disclosure_settings:7d746edc2fb36ee671241a333742b3a8",
#> "@type": "CreativeWork",
#> "name": "Disclosure Control Environment",
#> "description": "Disclosure control settings extract from the OBiBa Opal server connection provided, using the profile: 'default'.",
#> "hasPart": [
#> {
#> "@id": "#disc:27d8c1d2233ecb654a24b635fd4dbd78"
#> },
#> {
#> "@id": "#disc:46b65707a6b998f3b1364bc10e6d9b4b"
#> },
#> {
#> "@id": "#disc:7769282e7b0a1cb8887f60886c7b56ae"
#> },
#> {
#> "@id": "#disc:49d822f52075aafbec1d1b2545aa46b7"
#> },
#> {
#> "@id": "#disc:9a59210a743557bbd61cb21c3f1e0a79"
#> },
#> {
#> "@id": "#disc:a00b1e31a448142ee66bbb013f990e1f"
#> },
#> {
#> "@id": "#disc:29dd5e27a9f1c66d81a7037c236e7dd5"
#> },
#> {
#> "@id": "#disc:1c12e549b91e2cc0856f56657988ce54"
#> },
#> {
#> "@id": "#disc:786bc0ffcdd3054925e431240caecea5"
#> },
#> {
#> "@id": "#disc:fd9bea5ef311d5f14b28d237ecb6e985"
#> },
#> {
#> "@id": "#disc:4e93a50cbd8cfea8f0a6adc50ee7aac0"
#> }
#> ]
#> },
#> {
#> "@id": "#software:f8784d80bad08f840fba23fa9c41ec27",
#> "@type": "SoftwareApplication",
#> "name": "dsBase",
#> "version": "6.3.5",
#> "description": "Base 'DataSHIELD' functions for the server side. 'DataSHIELD' is a software package which allows you to do non-disclosive federated analysis on sensitive data. 'DataSHIELD' analytic functions have been designed to only share non disclosive summary statistics, with built in automated output checking based on statistical disclosure control. With data sites setting the threshold values for the automated output checks. For more details, see 'citation(\"dsBase\")'."
#> },
#> {
#> "@id": "#software:9c282917cfea3f37d5c5777c9aa6668d",
#> "@type": "SoftwareApplication",
#> "name": "dsTidyverse",
#> "version": "1.2.1",
#> "description": "Implementation of selected 'Tidyverse' functions within 'DataSHIELD', an open-source federated analysis solution in R. Currently, DataSHIELD contains very limited tools for data manipulation, so the aim of this package is to improve the researcher experience by implementing essential functions for data manipulation, including subsetting, filtering, grouping, and renaming variables. This is the server-side package which should be installed on the server holding the data, and is used in conjunction with the client-side package 'dsTidyverseClient' which is installed in the local R environment of the analyst. For more information, see <https://tidyverse.org/> and <https://datashield.org/>."
#> },
#> {
#> "@id": "#software:73f9cc9367c85ea883898394daf3821a",
#> "@type": "SoftwareApplication",
#> "name": "resourcer",
#> "version": "1.5.1",
#> "description": "A resource represents some data or a computation unit. It is described by a URL and credentials. This package proposes a Resource model with \"resolver\" and \"client\" classes to facilitate the access and the usage of the resources."
#> },
#> {
#> "@id": "#software:b69f67875993aae42c45df19402b6b75",
#> "@type": "SoftwareApplication",
#> "name": "Opal",
#> "version": "6.0.0",
#> "description": "Opal is OBiBa's (https://www.obiba.org/) core database application for epidemiological studies. Participant data, collected by questionnaires, medical instruments, sensors, administrative databases etc. can be integrated and stored in a central data repository under a uniform model."
#> },
#> {
#> "@id": "#env:software_stack:eddba6d9e46e327a425f63e1f048c616",
#> "@type": "CreativeWork",
#> "name": "Approved Analytical Software Environment",
#> "description": "Software packages installed in the controlled Opal/DataSHIELD environment used for federated analysis.",
#> "hasPart": [
#> {
#> "@id": "#software:f8784d80bad08f840fba23fa9c41ec27"
#> },
#> {
#> "@id": "#software:9c282917cfea3f37d5c5777c9aa6668d"
#> },
#> {
#> "@id": "#software:73f9cc9367c85ea883898394daf3821a"
#> },
#> {
#> "@id": "#software:b69f67875993aae42c45df19402b6b75"
#> }
#> ]
#> },
#> {
#> "@id": "#control:output-checking",
#> "@type": "CreativeWork",
#> "name": "Statistical Disclosure Output Checking",
#> "description": "Automated disclosure control prevents release of small-cell counts and disclosive statistics."
#> },
#> {
#> "@id": "#control:server-side-analysis",
#> "@type": "CreativeWork",
#> "name": "Server-Side Analysis Enforcement",
#> "description": "Raw data never leaves the secure server; analysis occurs via vetted aggregate functions."
#> },
#> {
#> "@id": "#control:session-logging",
#> "@type": "CreativeWork",
#> "name": "Comprehensive Session Logging",
#> "description": "All analytical actions are logged and auditable."
#> },
#> {
#> "@id": "#control:secure-facility",
#> "@type": "CreativeWork",
#> "name": "Secure Data Facility",
#> "description": "Access restricted to approved secure premises."
#> },
#> {
#> "@id": "#control:access-governance",
#> "@type": "CreativeWork",
#> "name": "Access Governance Process",
#> "description": "Data access committee review and approval required."
#> },
#> {
#> "@id": "#safesetting:8489860e7540c5dfb95b5d8ddab232c5",
#> "@type": "CreativeWork",
#> "name": "Safe Setting Controls (Opal)",
#> "description": "Technical, physical and organisational safeguards applied to minimise disclosure risk.",
#> "hasPart": [
#> {
#> "@id": "#env:disclosure_settings:7d746edc2fb36ee671241a333742b3a8"
#> },
#> {
#> "@id": "#env:software_stack:eddba6d9e46e327a425f63e1f048c616"
#> },
#> {
#> "@id": "#control:output-checking"
#> },
#> {
#> "@id": "#control:server-side-analysis"
#> },
#> {
#> "@id": "#control:session-logging"
#> },
#> {
#> "@id": "#control:secure-facility"
#> },
#> {
#> "@id": "#control:access-governance"
#> }
#> ]
#> },
#> {
#> "@id": "#link:b16fbdedcc33e826878020dcd5fad3d3",
#> "@type": "CreativeWork",
#> "name": "Safe Settings x Safe Project Link",
#> "about": {
#> "@id": "#safesetting:8489860e7540c5dfb95b5d8ddab232c5"
#> },
#> "isPartOf": {
#> "@id": "#project:7ba189863f9f641196596cb28e04aa14"
#> }
#> }
#> ]
#> }To add details for Safe Outputs, use the function
dsROCrate::safe_output(). Currently, only log files from
the operations executed by the user within a specific period. Set the
period using logs_from and logs_to.
Additionally, a list of functions executed by the user are extracted in
a separate file/entity.
ⓘ NOTE: Similar to
dsROCrate::safe_setting, the
dsROCrate::safe_output function requires of administrator
or auditor privileges, so here, we will have to log in with
administrator/auditor credentials:
# close previous connection
opalr::opal.logout(o)
# open new connection as administrator
o <- opalr::opal.login(
username = "administrator",
password = "password",
url = SERVER
)ⓘ NOTE: Before extracting logs, ensure there is recent activity on the server for testing purposes. This can be done using the following commands:
You will need the following packages:
# run some test commands with dsBaseClient
## needed to defined the OpalDriver class in the current environment
DSOpal::Opal()
#> An object of class "OpalDriver"
#> <S4 Type Object>
## create new login object, note that here we use the `dsuser`
builder <- DSI::newDSLoginBuilder()
builder$append(server = "study1",
url = SERVER,
user = "dsuser",
password = DSUSERPASS,
driver = "OpalDriver")
logindata <- builder$build()
conns <- DSI::datashield.login(logins = logindata)
#>
#> Logging into the collaborating servers## assign data
DSI::datashield.assign.table(conns["study1"],
symbol = "dsROCrate_test",
table = paste0(PROJECT, ".", TABLES[1]),
errors.print = TRUE)
dsBaseClient::ds.ls(datasources = conns["study1"])
#> $study1
#> $study1$environment.searched
#> [1] "R_GlobalEnv"
#>
#> $study1$objects.found
#> [1] "dsROCrate_test"
dsBaseClient::ds.summary("dsROCrate_test")
#> $study1
#> $study1$class
#> [1] "data.frame"
#>
#> $study1$`number of rows`
#> [1] 2163
#>
#> $study1$`number of columns`
#> [1] 11
#>
#> $study1$`variables held`
#> [1] "LAB_TSC" "LAB_TRIG" "LAB_HDL"
#> [4] "LAB_GLUC_ADJUSTED" "PM_BMI_CONTINUOUS" "DIS_CVA"
#> [7] "MEDI_LPD" "DIS_DIAB" "DIS_AMI"
#> [10] "GENDER" "PM_BMI_CATEGORICAL"Then, we can proceed as per usual:
basic_rocrate <- o |>
dsROCrate::safe_output(rocrate = basic_rocrate,
logs_from = Sys.time() - 8.64E4, # capture the last 24 hours
logs_to = Sys.time())
#> opening file input connection.
#> Found 258 records... Imported 258 records. Simplifying...
#> closing file input connection.
#> Warning: A `path` wasn't provided! The logs will be included in the RO-Crate
#> object, under the `content` tag!print(basic_rocrate) # note that the output will be truncated
...
#> {
#> "@id": "20260924T165622-dslogs-dsuser.log",
#> "@type": "File",
#> "dateModified": "2026-09-24 16:56:22",
#> "name": "20260924T165622-dslogs-dsuser.log",
#> "description": "This file contains the raw logs for the user: `dsuser` , between: 2026-09-23 16:56:21 and 2026-09-24 16:56:21",
#> "encodingFormat": "text/plain",
#> "content": [
#> ["[INFO][2026-09-24T09:56:59][OPEN] created a datashield session 70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549", "[INFO][2026-09-24T09:56:59][PARSE] parsed 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T09:57:00][AGGREGATE] evaluated 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T09:57:00][RESOLVE] resolved table 'CNSIM.CNSIM1'", "[INFO][2026-09-24T09:57:02][ASSIGN] created symbol 'D' from: 'D <- opal[CNSIM.CNSIM1]'", "[INFO][2026-09-24T09:57:02][PARSE] parsed 'base::as.numeric(D$GENDER)'", "[INFO][2026-09-24T09:57:02][ASSIGN] evaluated 'base::as.numeric(D$GENDER)'", "[INFO][2026-09-24T09:57:02][PARSE] parsed 'D$PM_BMI_CONTINUOUS'", "[INFO][2026-09-24T09:57:02][ASSIGN] evaluated 'D$PM_BMI_CONTINUOUS'", "[INFO][2026-09-24T09:57:02][PARSE] parsed 'base::exists(\"D\")'", "[INFO][2026-09-24T09:57:02][AGGREGATE] evaluated 'base::exists(\"D\")'", "[INFO][2026-09-24T09:57:02][PARSE] parsed 'dsBase::classDS(\"D\")'", "[INFO][2026-09-24T09:57:02][AGGREGATE] evaluated 'dsBase::classDS(\"D\")'", "[INFO][2026-09-24T09:57:02][PARSE] parsed 'dsBase::isValidDS(D)'", "[INFO][2026-09-24T09:57:02][AGGREGATE] evaluated 'dsBase::isValidDS(D)'", "[INFO][2026-09-24T09:57:03][PARSE] parsed 'dsBase::dimDS(\"D\")'", "[INFO][2026-09-24T09:57:03][AGGREGATE] evaluated 'dsBase::dimDS(\"D\")'", "[INFO][2026-09-24T09:57:03][PARSE] parsed 'dsBase::colnamesDS(\"D\")'", "[INFO][2026-09-24T09:57:03][AGGREGATE] evaluated 'dsBase::colnamesDS(\"D\")'", "[INFO][2026-09-24T09:57:03][PARSE] parsed 'base::exists(\"G\")'", "[INFO][2026-09-24T09:57:03][AGGREGATE] evaluated 'base::exists(\"G\")'", "[INFO][2026-09-24T09:57:03][PARSE] parsed 'dsBase::classDS(\"G\")'", "[INFO][2026-09-24T09:57:03][AGGREGATE] evaluated 'dsBase::classDS(\"G\")'", "[INFO][2026-09-24T09:57:03][PARSE] parsed 'dsBase::isValidDS(G)'", "[INFO][2026-09-24T09:57:03][AGGREGATE] evaluated 'dsBase::isValidDS(G)'", "[INFO][2026-09-24T09:57:03][PARSE] parsed 'dsBase::lengthDS(\"G\")'", "[INFO][2026-09-24T09:57:03][AGGREGATE] evaluated 'dsBase::lengthDS(\"G\")'", "[INFO][2026-09-24T09:57:03][PARSE] parsed 'dsBase::quantileMeanDS(G)'", "[INFO][2026-09-24T09:57:04][AGGREGATE] evaluated 'dsBase::quantileMeanDS(G)'", "[INFO][2026-09-24T09:57:04][PARSE] parsed 'base::exists(\"BMI\")'", "[INFO][2026-09-24T09:57:04][AGGREGATE] evaluated 'base::exists(\"BMI\")'", "[INFO][2026-09-24T09:57:04][PARSE] parsed 'dsBase::classDS(\"BMI\")'", "[INFO][2026-09-24T09:57:04][AGGREGATE] evaluated 'dsBase::classDS(\"BMI\")'", "[INFO][2026-09-24T09:57:04][PARSE] parsed 'dsBase::isValidDS(BMI)'", "[INFO][2026-09-24T09:57:04][AGGREGATE] evaluated 'dsBase::isValidDS(BMI)'", "[INFO][2026-09-24T09:57:04][PARSE] parsed 'dsBase::lengthDS(\"BMI\")'", "[INFO][2026-09-24T09:57:04][AGGREGATE] evaluated 'dsBase::lengthDS(\"BMI\")'", "[INFO][2026-09-24T09:57:04][PARSE] parsed 'dsBase::quantileMeanDS(BMI)'", "[INFO][2026-09-24T09:57:04][AGGREGATE] evaluated 'dsBase::quantileMeanDS(BMI)'", "[INFO][2026-09-24T09:57:05][RESOLVE] resolved table 'CNSIM.CNSIM2'", "[INFO][2026-09-24T09:57:06][ASSIGN] created symbol 'E' from: 'E <- opal[CNSIM.CNSIM2]'", "[INFO][2026-09-24T09:57:06][PARSE] parsed 'base::exists(\"E\")'", "[INFO][2026-09-24T09:57:06][AGGREGATE] evaluated 'base::exists(\"E\")'", "[INFO][2026-09-24T09:57:06][PARSE] parsed 'dsBase::classDS(\"E\")'", "[INFO][2026-09-24T09:57:06][AGGREGATE] evaluated 'dsBase::classDS(\"E\")'", "[INFO][2026-09-24T09:57:06][PARSE] parsed 'dsBase::isValidDS(E)'", "[INFO][2026-09-24T09:57:06][AGGREGATE] evaluated 'dsBase::isValidDS(E)'", "[INFO][2026-09-24T09:57:07][PARSE] parsed 'dsBase::dimDS(\"E\")'", "[INFO][2026-09-24T09:57:07][AGGREGATE] evaluated 'dsBase::dimDS(\"E\")'", "[INFO][2026-09-24T09:57:07][PARSE] parsed 'dsBase::colnamesDS(\"E\")'", "[INFO][2026-09-24T09:57:07][AGGREGATE] evaluated 'dsBase::colnamesDS(\"E\")'", "[INFO][2026-09-24T09:57:07][PARSE] parsed 'base::exists(\"D\")'", "[INFO][2026-09-24T09:57:07][AGGREGATE] evaluated 'base::exists(\"D\")'", "[INFO][2026-09-24T09:57:07][PARSE] parsed 'dsBase::classDS(\"D\")'", "[INFO][2026-09-24T09:57:07][AGGREGATE] evaluated 'dsBase::classDS(\"D\")'", "[INFO][2026-09-24T09:57:07][PARSE] parsed 'base::exists(\"E\")'", "[INFO][2026-09-24T09:57:07][AGGREGATE] evaluated 'base::exists(\"E\")'", "[INFO][2026-09-24T09:57:08][PARSE] parsed 'dsBase::classDS(\"E\")'", "[INFO][2026-09-24T09:57:08][AGGREGATE] evaluated 'dsBase::classDS(\"E\")'", "[INFO][2026-09-24T09:57:08][PARSE] parsed 'base::as.numeric(E$GENDER)'", "[INFO][2026-09-24T09:57:08][ASSIGN] evaluated 'base::as.numeric(E$GENDER)'", "[INFO][2026-09-24T09:57:08][PARSE] parsed 'base::exists(\"E_GENDER\")'", "[INFO][2026-09-24T09:57:08][AGGREGATE] evaluated 'base::exists(\"E_GENDER\")'", "[INFO][2026-09-24T09:57:08][PARSE] parsed 'dsBase::classDS(\"E_GENDER\")'", "[INFO][2026-09-24T09:57:08][AGGREGATE] evaluated 'dsBase::classDS(\"E_GENDER\")'", "[INFO][2026-09-24T09:57:08][PARSE] parsed 'dsBase::isValidDS(E_GENDER)'", "[INFO][2026-09-24T09:57:08][AGGREGATE] evaluated 'dsBase::isValidDS(E_GENDER)'", "[INFO][2026-09-24T09:57:08][PARSE] parsed 'dsBase::lengthDS(\"E_GENDER\")'", "[INFO][2026-09-24T09:57:08][AGGREGATE] evaluated 'dsBase::lengthDS(\"E_GENDER\")'", "[INFO][2026-09-24T09:57:08][PARSE] parsed 'dsBase::quantileMeanDS(E_GENDER)'", "[INFO][2026-09-24T09:57:09][AGGREGATE] evaluated 'dsBase::quantileMeanDS(E_GENDER)'", "[INFO][2026-09-24T09:57:09][RESOLVE] resolved table 'CNSIM.CNSIM3'", "[INFO][2026-09-24T09:57:10][ASSIGN] created symbol 'F' from: 'F <- opal[CNSIM.CNSIM3]'", "[INFO][2026-09-24T09:57:10][PARSE] parsed 'base::exists(\"F\")'", "[INFO][2026-09-24T09:57:10][AGGREGATE] evaluated 'base::exists(\"F\")'", "[INFO][2026-09-24T09:57:10][PARSE] parsed 'dsBase::classDS(\"F\")'", "[INFO][2026-09-24T09:57:10][AGGREGATE] evaluated 'dsBase::classDS(\"F\")'", "[INFO][2026-09-24T09:57:10][PARSE] parsed 'dsBase::isValidDS(F)'", "[INFO][2026-09-24T09:57:10][AGGREGATE] evaluated 'dsBase::isValidDS(F)'", "[INFO][2026-09-24T09:57:10][PARSE] parsed 'dsBase::dimDS(\"F\")'", "[INFO][2026-09-24T09:57:10][AGGREGATE] evaluated 'dsBase::dimDS(\"F\")'", "[INFO][2026-09-24T09:57:11][PARSE] parsed 'dsBase::colnamesDS(\"F\")'", "[INFO][2026-09-24T09:57:11][AGGREGATE] evaluated 'dsBase::colnamesDS(\"F\")'", "[INFO][2026-09-24T09:57:11][PARSE] parsed 'base::exists(\"F\")'", "[INFO][2026-09-24T09:57:11][AGGREGATE] evaluated 'base::exists(\"F\")'", "[INFO][2026-09-24T09:57:11][PARSE] parsed 'dsBase::classDS(\"F\")'", "[INFO][2026-09-24T09:57:11][AGGREGATE] evaluated 'dsBase::classDS(\"F\")'", "[INFO][2026-09-24T09:57:11][PARSE] parsed 'base::exists(\"LAB_GLUC_ADJUSTED\", D)'", "[INFO][2026-09-24T09:57:11][AGGREGATE] evaluated 'base::exists(\"LAB_GLUC_ADJUSTED\", D)'", "[INFO][2026-09-24T09:57:11][PARSE] parsed 'dsBase::classDS(\"D$LAB_GLUC_ADJUSTED\")'", "[INFO][2026-09-24T09:57:11][AGGREGATE] evaluated 'dsBase::classDS(\"D$LAB_GLUC_ADJUSTED\")'", "[INFO][2026-09-24T09:57:11][PARSE] parsed 'base::exists(\"LAB_GLUC_ADJUSTED\", E)'", "[INFO][2026-09-24T09:57:11][AGGREGATE] evaluated 'base::exists(\"LAB_GLUC_ADJUSTED\", E)'", "[INFO][2026-09-24T09:57:12][PARSE] parsed 'dsBase::classDS(\"E$LAB_GLUC_ADJUSTED\")'", "[INFO][2026-09-24T09:57:12][AGGREGATE] evaluated 'dsBase::classDS(\"E$LAB_GLUC_ADJUSTED\")'", "[INFO][2026-09-24T09:57:12][PARSE] parsed 'dsBase::corDS(\"D$LAB_GLUC_ADJUSTED\", \"E$LAB_GLUC_ADJUSTED\")'", "[INFO][2026-09-24T09:57:12][AGGREGATE] evaluated 'dsBase::corDS(\"D$LAB_GLUC_ADJUSTED\", \"E$LAB_GLUC_ADJUSTED\")'", "[INFO][2026-09-24T09:57:12][PARSE] parsed 'base::exists(\"BMI\")'", "[INFO][2026-09-24T09:57:12][AGGREGATE] evaluated 'base::exists(\"BMI\")'", "[INFO][2026-09-24T09:57:12][PARSE] parsed 'dsBase::classDS(\"BMI\")'", "[INFO][2026-09-24T09:57:12][AGGREGATE] evaluated 'dsBase::classDS(\"BMI\")'", "[INFO][2026-09-24T09:57:12][PARSE] parsed 'base::exists(\"E_GENDER\")'", "[INFO][2026-09-24T09:57:12][AGGREGATE] evaluated 'base::exists(\"E_GENDER\")'", "[INFO][2026-09-24T09:57:12][PARSE] parsed 'dsBase::classDS(\"E_GENDER\")'", "[INFO][2026-09-24T09:57:12][AGGREGATE] evaluated 'dsBase::classDS(\"E_GENDER\")'", "[INFO][2026-09-24T09:57:12][PARSE] parsed 'dsBase::corDS(\"BMI\", \"E_GENDER\")'", "[INFO][2026-09-24T09:57:12][AGGREGATE] evaluated 'dsBase::corDS(\"BMI\", \"E_GENDER\")'", "[INFO][2026-09-24T09:57:13][PARSE] parsed 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T09:57:13][AGGREGATE] evaluated 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T09:57:13][PARSE] parsed 'base::exists(\"GENDER\", D)'", "[INFO][2026-09-24T09:57:13][AGGREGATE] evaluated 'base::exists(\"GENDER\", D)'", "[INFO][2026-09-24T09:57:13][PARSE] parsed 'dsBase::asFactorDS1(\"D$GENDER\")'", "[INFO][2026-09-24T09:57:13][AGGREGATE] evaluated 'dsBase::asFactorDS1(\"D$GENDER\")'", "[INFO][2026-09-24T09:57:13][PARSE] parsed 'dsBase::tableDS(rvar.transmit = \"D$GENDER\", cvar.transmit = NULL, stvar.transmit = NULL, rvar.all.unique.levels.transmit = \"0,1\", cvar.all.unique.levels.transmit = NULL, stvar.all.unique.levels.transmit = NULL, exclude.transmit = NULL, useNA.transmit = \"always\", force.nfilter.transmit = NULL)'", "[INFO][2026-09-24T09:57:13][AGGREGATE] evaluated 'dsBase::tableDS(rvar.transmit = \"D$GENDER\", cvar.transmit = NULL, stvar.transmit = NULL, rvar.all.unique.levels.transmit = \"0,1\", cvar.all.unique.levels.transmit = NULL, stvar.all.unique.levels.transmit = NULL, exclude.transmit = NULL, useNA.transmit = \"always\", force.nfilter.transmit = NULL)'", "[INFO][2026-09-24T09:57:14][CLOSE] closed datashield session 70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549", "[INFO][2026-09-24T12:45:22][OPEN] created a datashield session a8fd1b34-d548-4713-b3d9-42468c87c3b5", "[INFO][2026-09-24T12:45:22][RESOLVE] resolved table 'CNSIM.CNSIM1'", "[INFO][2026-09-24T12:45:24][ASSIGN] created symbol 'dsROCrate_test' from: 'dsROCrate_test <- opal[CNSIM.CNSIM1]'", "[INFO][2026-09-24T12:45:24][PARSE] parsed 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T12:45:25][AGGREGATE] evaluated 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T12:51:53][OPEN] created a datashield session cd56d928-4c30-4bbc-9b21-1eed94ec8491", "[INFO][2026-09-24T12:51:53][RESOLVE] resolved table 'CNSIM.CNSIM1'", "[INFO][2026-09-24T12:51:54][ASSIGN] created symbol 'dsROCrate_test' from: 'dsROCrate_test <- opal[CNSIM.CNSIM1]'", "[INFO][2026-09-24T12:51:54][PARSE] parsed 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T12:51:55][AGGREGATE] evaluated 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T12:59:10][OPEN] created a datashield session 6fe55736-ff65-4e84-ae7d-80b573d2949a", "[INFO][2026-09-24T12:59:10][RESOLVE] resolved table 'CNSIM.CNSIM1'", "[INFO][2026-09-24T12:59:11][ASSIGN] created symbol 'dsROCrate_test' from: 'dsROCrate_test <- opal[CNSIM.CNSIM1]'", "[INFO][2026-09-24T12:59:11][PARSE] parsed 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T12:59:12][AGGREGATE] evaluated 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T13:05:12][OPEN] created a datashield session 97818d27-1c21-4a82-9e28-f4e8cdb6b7d5", "[INFO][2026-09-24T13:05:13][RESOLVE] resolved table 'CNSIM.CNSIM1'", "[INFO][2026-09-24T13:05:13][ASSIGN] created symbol 'dsROCrate_test' from: 'dsROCrate_test <- opal[CNSIM.CNSIM1]'", "[INFO][2026-09-24T13:05:13][PARSE] parsed 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T13:05:14][AGGREGATE] evaluated 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T13:45:34][OPEN] created a datashield session 1b82e557-eb04-43ff-8789-7dd31ef18c58", "[INFO][2026-09-24T13:45:35][RESOLVE] resolved table 'CNSIM.CNSIM1'", "[INFO][2026-09-24T13:45:35][ASSIGN] created symbol 'dsROCrate_test' from: 'dsROCrate_test <- opal[CNSIM.CNSIM1]'", "[INFO][2026-09-24T13:45:35][PARSE] parsed 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T13:45:36][AGGREGATE] evaluated 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T14:17:43][OPEN] created a datashield session 87d9d223-a25c-4411-8f39-0263568e0d51", "[INFO][2026-09-24T14:17:43][RESOLVE] resolved table 'CNSIM.CNSIM1'", "[INFO][2026-09-24T14:17:43][ASSIGN] created symbol 'dsROCrate_test' from: 'dsROCrate_test <- opal[CNSIM.CNSIM1]'", "[INFO][2026-09-24T14:17:43][PARSE] parsed 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T14:17:44][AGGREGATE] evaluated 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T14:27:55][OPEN] created a datashield session 07e2c2ac-4f17-458e-b606-c4f7ad461f09", "[INFO][2026-09-24T14:27:55][RESOLVE] resolved table 'CNSIM.CNSIM1'", "[INFO][2026-09-24T14:27:56][ASSIGN] created symbol 'dsROCrate_test' from: 'dsROCrate_test <- opal[CNSIM.CNSIM1]'", "[INFO][2026-09-24T14:27:56][PARSE] parsed 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T14:27:57][AGGREGATE] evaluated 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T14:29:00][OPEN] created a datashield session 8b1c5fdf-10a8-4114-8328-fe1e2940da58", "[INFO][2026-09-24T14:29:00][RESOLVE] resolved table 'CNSIM.CNSIM1'", "[INFO][2026-09-24T14:29:00][ASSIGN] created symbol 'dsROCrate_test' from: 'dsROCrate_test <- opal[CNSIM.CNSIM1]'", "[INFO][2026-09-24T14:29:00][PARSE] parsed 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T14:29:01][AGGREGATE] evaluated 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T14:32:23][OPEN] created a datashield session 266e4743-a0e8-4a2b-b87e-4e31f7e01feb", "[INFO][2026-09-24T14:32:23][RESOLVE] resolved table 'CNSIM.CNSIM1'", "[INFO][2026-09-24T14:32:23][ASSIGN] created symbol 'dsROCrate_test' from: 'dsROCrate_test <- opal[CNSIM.CNSIM1]'", "[INFO][2026-09-24T14:32:24][PARSE] parsed 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T14:32:25][AGGREGATE] evaluated 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T15:24:24][OPEN] created a datashield session e999621d-998d-4269-977d-61c378a64c99", "[INFO][2026-09-24T15:24:25][RESOLVE] resolved table 'CNSIM.CNSIM1'", "[INFO][2026-09-24T15:24:25][ASSIGN] created symbol 'dsROCrate_test' from: 'dsROCrate_test <- opal[CNSIM.CNSIM1]'", "[INFO][2026-09-24T15:24:26][PARSE] parsed 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T15:24:27][AGGREGATE] evaluated 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T15:24:43][OPEN] created a datashield session 39160e84-dba9-47d8-a679-e160e1857450", "[INFO][2026-09-24T15:24:44][RESOLVE] resolved table 'CNSIM.CNSIM1'", "[INFO][2026-09-24T15:24:44][ASSIGN] created symbol 'dsROCrate_test' from: 'dsROCrate_test <- opal[CNSIM.CNSIM1]'", "[INFO][2026-09-24T15:24:44][PARSE] parsed 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T15:24:45][AGGREGATE] evaluated 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T15:25:43][OPEN] created a datashield session d413548a-ae1d-4491-9b71-1c6dd6bcbf93", "[INFO][2026-09-24T15:25:43][RESOLVE] resolved table 'CNSIM.CNSIM1'", "[INFO][2026-09-24T15:25:43][ASSIGN] created symbol 'dsROCrate_test' from: 'dsROCrate_test <- opal[CNSIM.CNSIM1]'", "[INFO][2026-09-24T15:25:44][PARSE] parsed 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T15:25:44][OPEN] created a datashield session 810ea84d-7fe0-40df-b07a-506c08a54d71", "[INFO][2026-09-24T15:25:45][RESOLVE] resolved table 'CNSIM.CNSIM1'", "[INFO][2026-09-24T15:25:45][AGGREGATE] evaluated 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T15:25:45][ASSIGN] created symbol 'dsROCrate_test' from: 'dsROCrate_test <- opal[CNSIM.CNSIM1]'", "[INFO][2026-09-24T15:25:46][PARSE] parsed 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T15:25:46][AGGREGATE] evaluated 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T15:25:52][OPEN] created a datashield session a5c8eb68-f5b9-47bf-b5a1-7279abb30064", "[INFO][2026-09-24T15:25:53][RESOLVE] resolved table 'CNSIM.CNSIM1'", "[INFO][2026-09-24T15:25:53][ASSIGN] created symbol 'dsROCrate_test' from: 'dsROCrate_test <- opal[CNSIM.CNSIM1]'", "[INFO][2026-09-24T15:25:54][PARSE] parsed 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T15:25:55][AGGREGATE] evaluated 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T15:29:41][OPEN] created a datashield session 646a3fcd-f3df-4877-9d1c-4a68d085ab91", "[INFO][2026-09-24T15:29:42][RESOLVE] resolved table 'CNSIM.CNSIM1'", "[INFO][2026-09-24T15:29:42][ASSIGN] created symbol 'dsROCrate_test' from: 'dsROCrate_test <- opal[CNSIM.CNSIM1]'", "[INFO][2026-09-24T15:29:43][PARSE] parsed 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T15:29:44][AGGREGATE] evaluated 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T15:31:22][OPEN] created a datashield session f91ddff9-d015-4c2f-9d0e-a6f3d26e0166", "[INFO][2026-09-24T15:31:22][RESOLVE] resolved table 'CNSIM.CNSIM1'", "[INFO][2026-09-24T15:31:22][OPEN] created a datashield session 58dfc00f-c5e9-4a28-a524-50d8b0282408", "[INFO][2026-09-24T15:31:22][RESOLVE] resolved table 'CNSIM.CNSIM1'", "[INFO][2026-09-24T15:31:23][ASSIGN] created symbol 'dsROCrate_test' from: 'dsROCrate_test <- opal[CNSIM.CNSIM1]'", "[INFO][2026-09-24T15:31:23][ASSIGN] created symbol 'dsROCrate_test' from: 'dsROCrate_test <- opal[CNSIM.CNSIM1]'", "[INFO][2026-09-24T15:31:23][PARSE] parsed 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T15:31:23][PARSE] parsed 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T15:31:24][AGGREGATE] evaluated 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T15:31:24][AGGREGATE] evaluated 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T15:33:02][OPEN] created a datashield session dfe0c762-6080-4a60-8a2c-5abcdb9bde9b", "[INFO][2026-09-24T15:33:03][RESOLVE] resolved table 'CNSIM.CNSIM1'", "[INFO][2026-09-24T15:33:03][ASSIGN] created symbol 'dsROCrate_test' from: 'dsROCrate_test <- opal[CNSIM.CNSIM1]'", "[INFO][2026-09-24T15:33:04][PARSE] parsed 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T15:33:05][AGGREGATE] evaluated 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T15:35:05][OPEN] created a datashield session f6b4e753-6335-41bf-b589-3c6d3eb5a920", "[INFO][2026-09-24T15:35:06][RESOLVE] resolved table 'CNSIM.CNSIM1'", "[INFO][2026-09-24T15:35:06][ASSIGN] created symbol 'dsROCrate_test' from: 'dsROCrate_test <- opal[CNSIM.CNSIM1]'", "[INFO][2026-09-24T15:35:07][PARSE] parsed 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T15:35:08][AGGREGATE] evaluated 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T15:44:02][OPEN] created a datashield session 3450404a-bf55-4956-a426-606616994c62", "[INFO][2026-09-24T15:44:02][RESOLVE] resolved table 'CNSIM.CNSIM1'", "[INFO][2026-09-24T15:44:02][ASSIGN] created symbol 'dsROCrate_test' from: 'dsROCrate_test <- opal[CNSIM.CNSIM1]'", "[INFO][2026-09-24T15:44:03][PARSE] parsed 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T15:44:03][AGGREGATE] evaluated 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T15:50:52][OPEN] created a datashield session 5ac8caa6-f6e5-43c1-8a7c-de2f908551ff", "[INFO][2026-09-24T15:50:53][RESOLVE] resolved table 'CNSIM.CNSIM1'", "[INFO][2026-09-24T15:50:53][ASSIGN] created symbol 'dsROCrate_test' from: 'dsROCrate_test <- opal[CNSIM.CNSIM1]'", "[INFO][2026-09-24T15:50:54][PARSE] parsed 'dsBase::lsDS(search.filter = NULL, 1L)'", "[INFO][2026-09-24T15:50:55][AGGREGATE] evaluated 'dsBase::lsDS(search.filter = NULL, 1L)'"]
#> ]
#> },
#> {
#> "@id": "20260924T165623-dslogs-dsuser_mappings.csv",
#> "@type": "File",
#> "dateModified": "2026-09-24 16:56:23",
#> "name": "20260924T165623-dslogs-dsuser_mappings.csv",
#> "description": "This file contains mappings and evaluated functions",
#> "encodingFormat": "text/csv",
#> "content": [
#> [
#> {
#> "id": "bcdd87af-d032-40d8-8aea-e77312680629",
#> "timestamp": "2026-09-24T09:56:59",
#> "action": "OPEN",
#> "user": "dsuser",
#> "r_cmd": "Open session: 70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "fx": "DSI::datashield.login",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "f101683a-9a66-44d5-af1e-66d0a671ec0c",
#> "timestamp": "2026-09-24T09:57:00",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::lsDS(search.filter = NULL, 1L)",
#> "fx": "dsBase::lsDS",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "f47757e1-76d1-4796-897b-b6ec50ba4158",
#> "timestamp": "2026-09-24T09:57:00",
#> "action": "RESOLVE",
#> "user": "dsuser",
#> "r_cmd": "RESOLVE CNSIM.CNSIM1 -> D",
#> "symbol": "D",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "b771f5a0-2b87-48d0-8ce5-a8ad947b98d5",
#> "timestamp": "2026-09-24T09:57:02",
#> "action": "ASSIGN",
#> "user": "dsuser",
#> "r_cmd": "D <- opal[CNSIM.CNSIM1]",
#> "fx": "DSI::datashield.assign.table",
#> "symbol": "D",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "f4820c69-ea5c-4ca4-af4a-3cf0fbddf297",
#> "timestamp": "2026-09-24T09:57:02",
#> "action": "ASSIGN",
#> "user": "dsuser",
#> "r_cmd": "base::as.numeric(D$GENDER)",
#> "fx": "DSI::datashield.assign.expr",
#> "symbol": "G",
#> "kind": "expression",
#> "expr": "base::as.numeric(D$GENDER)",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "add63607-3e33-4295-a3c3-8eacf9e37eff",
#> "timestamp": "2026-09-24T09:57:02",
#> "action": "ASSIGN",
#> "user": "dsuser",
#> "r_cmd": "D$PM_BMI_CONTINUOUS",
#> "fx": "DSI::datashield.assign.expr",
#> "symbol": "BMI",
#> "kind": "expression",
#> "expr": "D$PM_BMI_CONTINUOUS",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "94805a83-2688-4b29-bc4b-0b766254fc33",
#> "timestamp": "2026-09-24T09:57:02",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "base::exists(\"D\")",
#> "fx": "base::exists",
#> "symbol": "D",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "efa3e84e-151a-423f-9422-dfd72a3efa79",
#> "timestamp": "2026-09-24T09:57:02",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::classDS(\"D\")",
#> "fx": "dsBase::classDS",
#> "symbol": "D",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "7e812498-fbb1-4d07-821d-c2a0cc41b53e",
#> "timestamp": "2026-09-24T09:57:02",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::isValidDS(D)",
#> "fx": "dsBase::isValidDS",
#> "symbol": "D",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "e2cc9b09-e2d7-43a9-a874-dcd67ccbce32",
#> "timestamp": "2026-09-24T09:57:03",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::dimDS(\"D\")",
#> "fx": "dsBase::dimDS",
#> "symbol": "D",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "c2f55daa-0664-48e8-999f-52171a6bbc30",
#> "timestamp": "2026-09-24T09:57:03",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::colnamesDS(\"D\")",
#> "fx": "dsBase::colnamesDS",
#> "symbol": "D",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "53a89170-7b50-4183-b88d-2bf7fccc65b3",
#> "timestamp": "2026-09-24T09:57:03",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "base::exists(\"G\")",
#> "fx": "base::exists",
#> "symbol": "G",
#> "kind": "expression",
#> "asset": "CNSIM.CNSIM1",
#> "expr": "base::as.numeric(D$GENDER)",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "4e087d81-8429-4a4b-89d0-73162f008055",
#> "timestamp": "2026-09-24T09:57:03",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::classDS(\"G\")",
#> "fx": "dsBase::classDS",
#> "symbol": "G",
#> "kind": "expression",
#> "asset": "CNSIM.CNSIM1",
#> "expr": "base::as.numeric(D$GENDER)",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "067f941a-317c-4d28-9bda-f0cdced044f3",
#> "timestamp": "2026-09-24T09:57:03",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::isValidDS(G)",
#> "fx": "dsBase::isValidDS",
#> "symbol": "G",
#> "kind": "expression",
#> "asset": "CNSIM.CNSIM1",
#> "expr": "base::as.numeric(D$GENDER)",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "1be1faac-54b3-4859-9aa3-cad9a02453e0",
#> "timestamp": "2026-09-24T09:57:03",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::lengthDS(\"G\")",
#> "fx": "dsBase::lengthDS",
#> "symbol": "G",
#> "kind": "expression",
#> "asset": "CNSIM.CNSIM1",
#> "expr": "base::as.numeric(D$GENDER)",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "7ae8b235-7996-45a0-85d5-90fdc36be9ee",
#> "timestamp": "2026-09-24T09:57:04",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::quantileMeanDS(G)",
#> "fx": "dsBase::quantileMeanDS",
#> "symbol": "G",
#> "kind": "expression",
#> "asset": "CNSIM.CNSIM1",
#> "expr": "base::as.numeric(D$GENDER)",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "f9ad71b8-6a8c-482a-ad95-943a6ea7f9d5",
#> "timestamp": "2026-09-24T09:57:04",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "base::exists(\"BMI\")",
#> "fx": "base::exists",
#> "symbol": "BMI",
#> "kind": "expression",
#> "asset": "CNSIM.CNSIM1",
#> "expr": "D$PM_BMI_CONTINUOUS",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "d5125c0d-79af-4b16-8648-6407a81ee83f",
#> "timestamp": "2026-09-24T09:57:04",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::classDS(\"BMI\")",
#> "fx": "dsBase::classDS",
#> "symbol": "BMI",
#> "kind": "expression",
#> "asset": "CNSIM.CNSIM1",
#> "expr": "D$PM_BMI_CONTINUOUS",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "d78c639d-8ef4-46d3-a9e4-d9ee1099b878",
#> "timestamp": "2026-09-24T09:57:04",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::isValidDS(BMI)",
#> "fx": "dsBase::isValidDS",
#> "symbol": "BMI",
#> "kind": "expression",
#> "asset": "CNSIM.CNSIM1",
#> "expr": "D$PM_BMI_CONTINUOUS",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "49ececfc-ade9-4d06-aebc-108882f4741d",
#> "timestamp": "2026-09-24T09:57:04",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::lengthDS(\"BMI\")",
#> "fx": "dsBase::lengthDS",
#> "symbol": "BMI",
#> "kind": "expression",
#> "asset": "CNSIM.CNSIM1",
#> "expr": "D$PM_BMI_CONTINUOUS",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "b8873bbd-43ff-48f4-9115-cb6c9236f8b5",
#> "timestamp": "2026-09-24T09:57:04",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::quantileMeanDS(BMI)",
#> "fx": "dsBase::quantileMeanDS",
#> "symbol": "BMI",
#> "kind": "expression",
#> "asset": "CNSIM.CNSIM1",
#> "expr": "D$PM_BMI_CONTINUOUS",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "a0af6098-2013-43f8-a13c-d2f69f5c87dc",
#> "timestamp": "2026-09-24T09:57:05",
#> "action": "RESOLVE",
#> "user": "dsuser",
#> "r_cmd": "RESOLVE CNSIM.CNSIM2 -> E",
#> "symbol": "E",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM2",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "ca4ffba3-e62e-4892-a90d-a352f33836c5",
#> "timestamp": "2026-09-24T09:57:06",
#> "action": "ASSIGN",
#> "user": "dsuser",
#> "r_cmd": "E <- opal[CNSIM.CNSIM2]",
#> "fx": "DSI::datashield.assign.table",
#> "symbol": "E",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM2",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "dd84bad3-57af-4602-8783-6dc74d2b8390",
#> "timestamp": "2026-09-24T09:57:06",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "base::exists(\"E\")",
#> "fx": "base::exists",
#> "symbol": "E",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM2",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "15eebfe7-a47d-469e-8458-e4792291dfb6",
#> "timestamp": "2026-09-24T09:57:06",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::classDS(\"E\")",
#> "fx": "dsBase::classDS",
#> "symbol": "E",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM2",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "e20a2ac5-9be4-4674-9bb7-c63921c1aba8",
#> "timestamp": "2026-09-24T09:57:06",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::isValidDS(E)",
#> "fx": "dsBase::isValidDS",
#> "symbol": "E",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM2",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "2fc71c10-d0a0-458a-8ee8-dad45b548b98",
#> "timestamp": "2026-09-24T09:57:07",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::dimDS(\"E\")",
#> "fx": "dsBase::dimDS",
#> "symbol": "E",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM2",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "079f4489-4b24-41e5-9076-16ddeca17a7b",
#> "timestamp": "2026-09-24T09:57:07",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::colnamesDS(\"E\")",
#> "fx": "dsBase::colnamesDS",
#> "symbol": "E",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM2",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "504b4031-3398-4a2a-9c6b-fb0a3ff400ac",
#> "timestamp": "2026-09-24T09:57:07",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "base::exists(\"D\")",
#> "fx": "base::exists",
#> "symbol": "D",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "ba3d0089-d39d-48bd-82db-f11460f73b8a",
#> "timestamp": "2026-09-24T09:57:07",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::classDS(\"D\")",
#> "fx": "dsBase::classDS",
#> "symbol": "D",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "62597b78-67db-484d-a4c0-95d0f7bb4b59",
#> "timestamp": "2026-09-24T09:57:07",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "base::exists(\"E\")",
#> "fx": "base::exists",
#> "symbol": "E",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM2",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "47a386d2-eaca-401d-9e39-f2530da936cb",
#> "timestamp": "2026-09-24T09:57:08",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::classDS(\"E\")",
#> "fx": "dsBase::classDS",
#> "symbol": "E",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM2",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "32115fd9-728e-445f-823e-9aa56a0ac9c2",
#> "timestamp": "2026-09-24T09:57:08",
#> "action": "ASSIGN",
#> "user": "dsuser",
#> "r_cmd": "base::as.numeric(E$GENDER)",
#> "fx": "DSI::datashield.assign.expr",
#> "symbol": "E_GENDER",
#> "kind": "expression",
#> "expr": "base::as.numeric(E$GENDER)",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "7a5e721a-43b3-49b3-8cec-0a3a3f9d8808",
#> "timestamp": "2026-09-24T09:57:08",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "base::exists(\"E_GENDER\")",
#> "fx": "base::exists",
#> "symbol": "E_GENDER",
#> "kind": "expression",
#> "asset": "CNSIM.CNSIM2",
#> "expr": "base::as.numeric(E$GENDER)",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "cf6dab24-edfd-4c29-ad3e-7fa24f9d3476",
#> "timestamp": "2026-09-24T09:57:08",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::classDS(\"E_GENDER\")",
#> "fx": "dsBase::classDS",
#> "symbol": "E_GENDER",
#> "kind": "expression",
#> "asset": "CNSIM.CNSIM2",
#> "expr": "base::as.numeric(E$GENDER)",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "dd4d74c4-ea91-435c-a811-e56470c85783",
#> "timestamp": "2026-09-24T09:57:08",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::isValidDS(E_GENDER)",
#> "fx": "dsBase::isValidDS",
#> "symbol": "E_GENDER",
#> "kind": "expression",
#> "asset": "CNSIM.CNSIM2",
#> "expr": "base::as.numeric(E$GENDER)",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "ea231fb8-c8df-4d7a-8aae-02521298268e",
#> "timestamp": "2026-09-24T09:57:08",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::lengthDS(\"E_GENDER\")",
#> "fx": "dsBase::lengthDS",
#> "symbol": "E_GENDER",
#> "kind": "expression",
#> "asset": "CNSIM.CNSIM2",
#> "expr": "base::as.numeric(E$GENDER)",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "ded686c1-66e1-47fb-b7bc-c3ec9fa27540",
#> "timestamp": "2026-09-24T09:57:09",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::quantileMeanDS(E_GENDER)",
#> "fx": "dsBase::quantileMeanDS",
#> "symbol": "E_GENDER",
#> "kind": "expression",
#> "asset": "CNSIM.CNSIM2",
#> "expr": "base::as.numeric(E$GENDER)",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "f820733a-3a11-4f7d-bfda-d452a5736d82",
#> "timestamp": "2026-09-24T09:57:09",
#> "action": "RESOLVE",
#> "user": "dsuser",
#> "r_cmd": "RESOLVE CNSIM.CNSIM3 -> F",
#> "symbol": "F",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM3",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "8bacd8db-3a35-4eb5-90b1-c1880c5c927b",
#> "timestamp": "2026-09-24T09:57:10",
#> "action": "ASSIGN",
#> "user": "dsuser",
#> "r_cmd": "F <- opal[CNSIM.CNSIM3]",
#> "fx": "DSI::datashield.assign.table",
#> "symbol": "F",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM3",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "efbf5c29-69b2-4b97-ad7d-b9e51a6a8203",
#> "timestamp": "2026-09-24T09:57:10",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "base::exists(\"F\")",
#> "fx": "base::exists",
#> "symbol": "F",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM3",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "bb934218-606d-459b-b28e-9aadc5c71dbc",
#> "timestamp": "2026-09-24T09:57:10",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::classDS(\"F\")",
#> "fx": "dsBase::classDS",
#> "symbol": "F",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM3",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "9c7a1715-2565-41c4-91df-53d9412d0935",
#> "timestamp": "2026-09-24T09:57:10",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::isValidDS(F)",
#> "fx": "dsBase::isValidDS",
#> "symbol": "F",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM3",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "b4e7d544-2bd5-4811-835e-52673436a4db",
#> "timestamp": "2026-09-24T09:57:10",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::dimDS(\"F\")",
#> "fx": "dsBase::dimDS",
#> "symbol": "F",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM3",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "fb7a4b6d-d5fe-49ea-a4d0-017bba8d333d",
#> "timestamp": "2026-09-24T09:57:11",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::colnamesDS(\"F\")",
#> "fx": "dsBase::colnamesDS",
#> "symbol": "F",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM3",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "0a6cf535-b35a-4051-b6e5-4ba2ab78b673",
#> "timestamp": "2026-09-24T09:57:11",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "base::exists(\"F\")",
#> "fx": "base::exists",
#> "symbol": "F",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM3",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "2fff41aa-8ea1-4f1a-a3a7-f0bdfff92f95",
#> "timestamp": "2026-09-24T09:57:11",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::classDS(\"F\")",
#> "fx": "dsBase::classDS",
#> "symbol": "F",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM3",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "1fec4caa-532e-416f-8f9f-f73aabdab9af",
#> "timestamp": "2026-09-24T09:57:11",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "base::exists(\"LAB_GLUC_ADJUSTED\", D)",
#> "fx": "base::exists",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "1fec4caa-532e-416f-8f9f-f73aabdab9af",
#> "timestamp": "2026-09-24T09:57:11",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "base::exists(\"LAB_GLUC_ADJUSTED\", D)",
#> "fx": "base::exists",
#> "symbol": "D",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "b0c9fe16-0599-4aa3-ab04-e10c8ca0ee10",
#> "timestamp": "2026-09-24T09:57:11",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::classDS(\"D$LAB_GLUC_ADJUSTED\")",
#> "fx": "dsBase::classDS",
#> "symbol": "D",
#> "column": "LAB_GLUC_ADJUSTED",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "06e61136-2c1c-494c-8093-8768fffdb233",
#> "timestamp": "2026-09-24T09:57:11",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "base::exists(\"LAB_GLUC_ADJUSTED\", E)",
#> "fx": "base::exists",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "06e61136-2c1c-494c-8093-8768fffdb233",
#> "timestamp": "2026-09-24T09:57:11",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "base::exists(\"LAB_GLUC_ADJUSTED\", E)",
#> "fx": "base::exists",
#> "symbol": "E",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM2",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "f71207a8-8831-4ab5-a91b-ab0161deb13a",
#> "timestamp": "2026-09-24T09:57:12",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::classDS(\"E$LAB_GLUC_ADJUSTED\")",
#> "fx": "dsBase::classDS",
#> "symbol": "E",
#> "column": "LAB_GLUC_ADJUSTED",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM2",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "3c537e72-35f5-4838-8ea8-32a77730193c",
#> "timestamp": "2026-09-24T09:57:12",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::corDS(\"D$LAB_GLUC_ADJUSTED\", \"E$LAB_GLUC_ADJUSTED\")",
#> "fx": "dsBase::corDS",
#> "symbol": "D",
#> "column": "LAB_GLUC_ADJUSTED",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "3c537e72-35f5-4838-8ea8-32a77730193c",
#> "timestamp": "2026-09-24T09:57:12",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::corDS(\"D$LAB_GLUC_ADJUSTED\", \"E$LAB_GLUC_ADJUSTED\")",
#> "fx": "dsBase::corDS",
#> "symbol": "E",
#> "column": "LAB_GLUC_ADJUSTED",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM2",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "c67dcf58-b119-4237-96fc-38d25fef6994",
#> "timestamp": "2026-09-24T09:57:12",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "base::exists(\"BMI\")",
#> "fx": "base::exists",
#> "symbol": "BMI",
#> "kind": "expression",
#> "asset": "CNSIM.CNSIM1",
#> "expr": "D$PM_BMI_CONTINUOUS",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "97d7945a-4be4-4e14-83c4-02972233f597",
#> "timestamp": "2026-09-24T09:57:12",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::classDS(\"BMI\")",
#> "fx": "dsBase::classDS",
#> "symbol": "BMI",
#> "kind": "expression",
#> "asset": "CNSIM.CNSIM1",
#> "expr": "D$PM_BMI_CONTINUOUS",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "a039b7c1-fa29-49ff-a151-9c204dd99491",
#> "timestamp": "2026-09-24T09:57:12",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "base::exists(\"E_GENDER\")",
#> "fx": "base::exists",
#> "symbol": "E_GENDER",
#> "kind": "expression",
#> "asset": "CNSIM.CNSIM2",
#> "expr": "base::as.numeric(E$GENDER)",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "5cf0f716-412f-4a09-a44f-1fab39a51605",
#> "timestamp": "2026-09-24T09:57:12",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::classDS(\"E_GENDER\")",
#> "fx": "dsBase::classDS",
#> "symbol": "E_GENDER",
#> "kind": "expression",
#> "asset": "CNSIM.CNSIM2",
#> "expr": "base::as.numeric(E$GENDER)",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "aea17c22-f476-42a9-958a-94a5c24b2779",
#> "timestamp": "2026-09-24T09:57:12",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::corDS(\"BMI\", \"E_GENDER\")",
#> "fx": "dsBase::corDS",
#> "symbol": "BMI",
#> "kind": "expression",
#> "asset": "CNSIM.CNSIM1",
#> "expr": "D$PM_BMI_CONTINUOUS",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "aea17c22-f476-42a9-958a-94a5c24b2779",
#> "timestamp": "2026-09-24T09:57:12",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::corDS(\"BMI\", \"E_GENDER\")",
#> "fx": "dsBase::corDS",
#> "symbol": "E_GENDER",
#> "kind": "expression",
#> "asset": "CNSIM.CNSIM2",
#> "expr": "base::as.numeric(E$GENDER)",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "f64900d9-ef44-4de8-b0e9-df5456d78159",
#> "timestamp": "2026-09-24T09:57:13",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::lsDS(search.filter = NULL, 1L)",
#> "fx": "dsBase::lsDS",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "4f485409-09df-4ff3-bf5d-9856b8304063",
#> "timestamp": "2026-09-24T09:57:13",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "base::exists(\"GENDER\", D)",
#> "fx": "base::exists",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "4f485409-09df-4ff3-bf5d-9856b8304063",
#> "timestamp": "2026-09-24T09:57:13",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "base::exists(\"GENDER\", D)",
#> "fx": "base::exists",
#> "symbol": "D",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "887c5cca-4af1-4230-a427-70fdaa273042",
#> "timestamp": "2026-09-24T09:57:13",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::asFactorDS1(\"D$GENDER\")",
#> "fx": "dsBase::asFactorDS1",
#> "symbol": "D",
#> "column": "GENDER",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "acc7bc71-88f2-4365-8383-a165cd40e73e",
#> "timestamp": "2026-09-24T09:57:13",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::tableDS(rvar.transmit = \"D$GENDER\", cvar.transmit = NULL, stvar.transmit = NULL, rvar.all.unique.levels.transmit = \"0,1\", cvar.all.unique.levels.transmit = NULL, stvar.all.unique.levels.transmit = NULL, exclude.transmit = NULL, useNA.transmit = \"always\", force.nfilter.transmit = NULL)",
#> "fx": "dsBase::tableDS",
#> "symbol": "D",
#> "column": "GENDER",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "acc7bc71-88f2-4365-8383-a165cd40e73e",
#> "timestamp": "2026-09-24T09:57:13",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::tableDS(rvar.transmit = \"D$GENDER\", cvar.transmit = NULL, stvar.transmit = NULL, rvar.all.unique.levels.transmit = \"0,1\", cvar.all.unique.levels.transmit = NULL, stvar.all.unique.levels.transmit = NULL, exclude.transmit = NULL, useNA.transmit = \"always\", force.nfilter.transmit = NULL)",
#> "fx": "dsBase::tableDS",
#> "session": "70ccbe77-1b1a-4c60-9bb1-b8a1f67ce549",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "94ebcba4-14b6-4f27-9ec1-cc99cf61eaa1",
#> "timestamp": "2026-09-24T12:45:22",
#> "action": "OPEN",
#> "user": "dsuser",
#> "r_cmd": "Open session: a8fd1b34-d548-4713-b3d9-42468c87c3b5",
#> "fx": "DSI::datashield.login",
#> "session": "a8fd1b34-d548-4713-b3d9-42468c87c3b5",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "0472b8da-d200-4e99-9d09-0ccef90e1425",
#> "timestamp": "2026-09-24T12:45:22",
#> "action": "RESOLVE",
#> "user": "dsuser",
#> "r_cmd": "RESOLVE CNSIM.CNSIM1 -> dsROCrate_test",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "a8fd1b34-d548-4713-b3d9-42468c87c3b5",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "e3414e80-2144-4d2f-a641-d3f98b45274e",
#> "timestamp": "2026-09-24T12:45:24",
#> "action": "ASSIGN",
#> "user": "dsuser",
#> "r_cmd": "dsROCrate_test <- opal[CNSIM.CNSIM1]",
#> "fx": "DSI::datashield.assign.table",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "a8fd1b34-d548-4713-b3d9-42468c87c3b5",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "edc6f0cf-228e-4b64-8256-bb797ebcc134",
#> "timestamp": "2026-09-24T12:45:25",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::lsDS(search.filter = NULL, 1L)",
#> "fx": "dsBase::lsDS",
#> "session": "a8fd1b34-d548-4713-b3d9-42468c87c3b5",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "ac180ae4-2fb6-4cdb-80e1-eaa9c2596b0b",
#> "timestamp": "2026-09-24T12:51:53",
#> "action": "OPEN",
#> "user": "dsuser",
#> "r_cmd": "Open session: cd56d928-4c30-4bbc-9b21-1eed94ec8491",
#> "fx": "DSI::datashield.login",
#> "session": "cd56d928-4c30-4bbc-9b21-1eed94ec8491",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "f170f5c1-e1e1-4a2f-8bdc-89658cd6e4e7",
#> "timestamp": "2026-09-24T12:51:53",
#> "action": "RESOLVE",
#> "user": "dsuser",
#> "r_cmd": "RESOLVE CNSIM.CNSIM1 -> dsROCrate_test",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "cd56d928-4c30-4bbc-9b21-1eed94ec8491",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "89dcf45f-9bc3-44b3-a3ca-9bcd567dffa3",
#> "timestamp": "2026-09-24T12:51:54",
#> "action": "ASSIGN",
#> "user": "dsuser",
#> "r_cmd": "dsROCrate_test <- opal[CNSIM.CNSIM1]",
#> "fx": "DSI::datashield.assign.table",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "cd56d928-4c30-4bbc-9b21-1eed94ec8491",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "46da004a-c04b-4694-a879-5bb94b9f5c56",
#> "timestamp": "2026-09-24T12:51:55",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::lsDS(search.filter = NULL, 1L)",
#> "fx": "dsBase::lsDS",
#> "session": "cd56d928-4c30-4bbc-9b21-1eed94ec8491",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "863c1cd8-d0d7-4be7-93db-d5aeb95b2168",
#> "timestamp": "2026-09-24T12:59:10",
#> "action": "OPEN",
#> "user": "dsuser",
#> "r_cmd": "Open session: 6fe55736-ff65-4e84-ae7d-80b573d2949a",
#> "fx": "DSI::datashield.login",
#> "session": "6fe55736-ff65-4e84-ae7d-80b573d2949a",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "49675ed6-4b0b-4001-a727-050ee1d03dbb",
#> "timestamp": "2026-09-24T12:59:10",
#> "action": "RESOLVE",
#> "user": "dsuser",
#> "r_cmd": "RESOLVE CNSIM.CNSIM1 -> dsROCrate_test",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "6fe55736-ff65-4e84-ae7d-80b573d2949a",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "16bfca52-8e56-46c9-851d-159ead710d62",
#> "timestamp": "2026-09-24T12:59:11",
#> "action": "ASSIGN",
#> "user": "dsuser",
#> "r_cmd": "dsROCrate_test <- opal[CNSIM.CNSIM1]",
#> "fx": "DSI::datashield.assign.table",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "6fe55736-ff65-4e84-ae7d-80b573d2949a",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "fd08dc78-d045-4092-93a0-de9ec32ae942",
#> "timestamp": "2026-09-24T12:59:12",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::lsDS(search.filter = NULL, 1L)",
#> "fx": "dsBase::lsDS",
#> "session": "6fe55736-ff65-4e84-ae7d-80b573d2949a",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "c3d06e9d-c480-4bae-b47b-1eb7904bb58f",
#> "timestamp": "2026-09-24T13:05:12",
#> "action": "OPEN",
#> "user": "dsuser",
#> "r_cmd": "Open session: 97818d27-1c21-4a82-9e28-f4e8cdb6b7d5",
#> "fx": "DSI::datashield.login",
#> "session": "97818d27-1c21-4a82-9e28-f4e8cdb6b7d5",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "1fc1ec34-12e9-48c7-b878-a878ec67bb60",
#> "timestamp": "2026-09-24T13:05:13",
#> "action": "RESOLVE",
#> "user": "dsuser",
#> "r_cmd": "RESOLVE CNSIM.CNSIM1 -> dsROCrate_test",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "97818d27-1c21-4a82-9e28-f4e8cdb6b7d5",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "3bebaae2-4748-4c12-a9a1-b8d39af8b073",
#> "timestamp": "2026-09-24T13:05:13",
#> "action": "ASSIGN",
#> "user": "dsuser",
#> "r_cmd": "dsROCrate_test <- opal[CNSIM.CNSIM1]",
#> "fx": "DSI::datashield.assign.table",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "97818d27-1c21-4a82-9e28-f4e8cdb6b7d5",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "db5453d6-6665-4f16-88fd-c44397d573d6",
#> "timestamp": "2026-09-24T13:05:14",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::lsDS(search.filter = NULL, 1L)",
#> "fx": "dsBase::lsDS",
#> "session": "97818d27-1c21-4a82-9e28-f4e8cdb6b7d5",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "c614ee22-61f1-4f8b-8d19-719b0e9150a5",
#> "timestamp": "2026-09-24T13:45:34",
#> "action": "OPEN",
#> "user": "dsuser",
#> "r_cmd": "Open session: 1b82e557-eb04-43ff-8789-7dd31ef18c58",
#> "fx": "DSI::datashield.login",
#> "session": "1b82e557-eb04-43ff-8789-7dd31ef18c58",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "07317b9d-a941-4e1d-9567-6d883340cb43",
#> "timestamp": "2026-09-24T13:45:35",
#> "action": "RESOLVE",
#> "user": "dsuser",
#> "r_cmd": "RESOLVE CNSIM.CNSIM1 -> dsROCrate_test",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "1b82e557-eb04-43ff-8789-7dd31ef18c58",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "3737cd24-0c8e-461d-b9e9-e3942afe870b",
#> "timestamp": "2026-09-24T13:45:35",
#> "action": "ASSIGN",
#> "user": "dsuser",
#> "r_cmd": "dsROCrate_test <- opal[CNSIM.CNSIM1]",
#> "fx": "DSI::datashield.assign.table",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "1b82e557-eb04-43ff-8789-7dd31ef18c58",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "a6a6a0dd-f33e-498d-b5f5-1687440f55dc",
#> "timestamp": "2026-09-24T13:45:36",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::lsDS(search.filter = NULL, 1L)",
#> "fx": "dsBase::lsDS",
#> "session": "1b82e557-eb04-43ff-8789-7dd31ef18c58",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "a8e7f76b-c66c-44c8-a59a-046a810ab185",
#> "timestamp": "2026-09-24T14:17:43",
#> "action": "OPEN",
#> "user": "dsuser",
#> "r_cmd": "Open session: 87d9d223-a25c-4411-8f39-0263568e0d51",
#> "fx": "DSI::datashield.login",
#> "session": "87d9d223-a25c-4411-8f39-0263568e0d51",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "40eed800-fc27-4694-a089-9f00ae2d9917",
#> "timestamp": "2026-09-24T14:17:43",
#> "action": "RESOLVE",
#> "user": "dsuser",
#> "r_cmd": "RESOLVE CNSIM.CNSIM1 -> dsROCrate_test",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "87d9d223-a25c-4411-8f39-0263568e0d51",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "58058450-0118-4dbd-869f-7ecd3b0e3f19",
#> "timestamp": "2026-09-24T14:17:43",
#> "action": "ASSIGN",
#> "user": "dsuser",
#> "r_cmd": "dsROCrate_test <- opal[CNSIM.CNSIM1]",
#> "fx": "DSI::datashield.assign.table",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "87d9d223-a25c-4411-8f39-0263568e0d51",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "8711a5fb-b0ce-4146-a36a-2db52f2b7707",
#> "timestamp": "2026-09-24T14:17:44",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::lsDS(search.filter = NULL, 1L)",
#> "fx": "dsBase::lsDS",
#> "session": "87d9d223-a25c-4411-8f39-0263568e0d51",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "ce5e2a7d-3077-4961-b942-63ee13e7da45",
#> "timestamp": "2026-09-24T14:27:55",
#> "action": "OPEN",
#> "user": "dsuser",
#> "r_cmd": "Open session: 07e2c2ac-4f17-458e-b606-c4f7ad461f09",
#> "fx": "DSI::datashield.login",
#> "session": "07e2c2ac-4f17-458e-b606-c4f7ad461f09",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "af20d158-7a21-49ff-80e4-4204b2eb3ad1",
#> "timestamp": "2026-09-24T14:27:55",
#> "action": "RESOLVE",
#> "user": "dsuser",
#> "r_cmd": "RESOLVE CNSIM.CNSIM1 -> dsROCrate_test",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "07e2c2ac-4f17-458e-b606-c4f7ad461f09",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "d91643a4-1c40-4abd-b98a-d805186bb2e0",
#> "timestamp": "2026-09-24T14:27:56",
#> "action": "ASSIGN",
#> "user": "dsuser",
#> "r_cmd": "dsROCrate_test <- opal[CNSIM.CNSIM1]",
#> "fx": "DSI::datashield.assign.table",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "07e2c2ac-4f17-458e-b606-c4f7ad461f09",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "3cb06032-dfab-4634-96ae-14455f1c54df",
#> "timestamp": "2026-09-24T14:27:57",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::lsDS(search.filter = NULL, 1L)",
#> "fx": "dsBase::lsDS",
#> "session": "07e2c2ac-4f17-458e-b606-c4f7ad461f09",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "75c25113-6719-47d2-9bea-c04bf88f5450",
#> "timestamp": "2026-09-24T14:29:00",
#> "action": "OPEN",
#> "user": "dsuser",
#> "r_cmd": "Open session: 8b1c5fdf-10a8-4114-8328-fe1e2940da58",
#> "fx": "DSI::datashield.login",
#> "session": "8b1c5fdf-10a8-4114-8328-fe1e2940da58",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "c0e41592-0264-4b22-a6ed-c5b386f0be41",
#> "timestamp": "2026-09-24T14:29:00",
#> "action": "RESOLVE",
#> "user": "dsuser",
#> "r_cmd": "RESOLVE CNSIM.CNSIM1 -> dsROCrate_test",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "8b1c5fdf-10a8-4114-8328-fe1e2940da58",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "e35d3a57-ecb0-40dd-ba9b-18036db46838",
#> "timestamp": "2026-09-24T14:29:00",
#> "action": "ASSIGN",
#> "user": "dsuser",
#> "r_cmd": "dsROCrate_test <- opal[CNSIM.CNSIM1]",
#> "fx": "DSI::datashield.assign.table",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "8b1c5fdf-10a8-4114-8328-fe1e2940da58",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "0624c03e-c239-4ae1-bf2d-024cba107b75",
#> "timestamp": "2026-09-24T14:29:01",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::lsDS(search.filter = NULL, 1L)",
#> "fx": "dsBase::lsDS",
#> "session": "8b1c5fdf-10a8-4114-8328-fe1e2940da58",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "188d50b1-b0b8-4a56-bc29-cc2b9740be08",
#> "timestamp": "2026-09-24T14:32:23",
#> "action": "OPEN",
#> "user": "dsuser",
#> "r_cmd": "Open session: 266e4743-a0e8-4a2b-b87e-4e31f7e01feb",
#> "fx": "DSI::datashield.login",
#> "session": "266e4743-a0e8-4a2b-b87e-4e31f7e01feb",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "b1b04b73-aaeb-49d3-80f5-c0f6a79bdd67",
#> "timestamp": "2026-09-24T14:32:23",
#> "action": "RESOLVE",
#> "user": "dsuser",
#> "r_cmd": "RESOLVE CNSIM.CNSIM1 -> dsROCrate_test",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "266e4743-a0e8-4a2b-b87e-4e31f7e01feb",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "ca74f79e-7350-4a4c-9842-6f3d675bcf61",
#> "timestamp": "2026-09-24T14:32:23",
#> "action": "ASSIGN",
#> "user": "dsuser",
#> "r_cmd": "dsROCrate_test <- opal[CNSIM.CNSIM1]",
#> "fx": "DSI::datashield.assign.table",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "266e4743-a0e8-4a2b-b87e-4e31f7e01feb",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "5471bc1b-05c6-4537-bedb-89aa6e633930",
#> "timestamp": "2026-09-24T14:32:25",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::lsDS(search.filter = NULL, 1L)",
#> "fx": "dsBase::lsDS",
#> "session": "266e4743-a0e8-4a2b-b87e-4e31f7e01feb",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "5be16cee-fdcd-4f50-8044-b543046dcc7b",
#> "timestamp": "2026-09-24T15:24:24",
#> "action": "OPEN",
#> "user": "dsuser",
#> "r_cmd": "Open session: e999621d-998d-4269-977d-61c378a64c99",
#> "fx": "DSI::datashield.login",
#> "session": "e999621d-998d-4269-977d-61c378a64c99",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "7c6e9286-0545-4272-b1b6-5326e685db16",
#> "timestamp": "2026-09-24T15:24:25",
#> "action": "RESOLVE",
#> "user": "dsuser",
#> "r_cmd": "RESOLVE CNSIM.CNSIM1 -> dsROCrate_test",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "e999621d-998d-4269-977d-61c378a64c99",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "7d522af3-0e0d-41b1-8db3-e67ee4d7ebce",
#> "timestamp": "2026-09-24T15:24:25",
#> "action": "ASSIGN",
#> "user": "dsuser",
#> "r_cmd": "dsROCrate_test <- opal[CNSIM.CNSIM1]",
#> "fx": "DSI::datashield.assign.table",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "e999621d-998d-4269-977d-61c378a64c99",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "736cfbf5-0132-4a2c-a50a-b7dc6c15612b",
#> "timestamp": "2026-09-24T15:24:27",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::lsDS(search.filter = NULL, 1L)",
#> "fx": "dsBase::lsDS",
#> "session": "e999621d-998d-4269-977d-61c378a64c99",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "1673e5af-b009-4fe7-90d0-58b842e4026f",
#> "timestamp": "2026-09-24T15:24:43",
#> "action": "OPEN",
#> "user": "dsuser",
#> "r_cmd": "Open session: 39160e84-dba9-47d8-a679-e160e1857450",
#> "fx": "DSI::datashield.login",
#> "session": "39160e84-dba9-47d8-a679-e160e1857450",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "73f0babd-e867-49de-8867-2c059a454b25",
#> "timestamp": "2026-09-24T15:24:44",
#> "action": "RESOLVE",
#> "user": "dsuser",
#> "r_cmd": "RESOLVE CNSIM.CNSIM1 -> dsROCrate_test",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "39160e84-dba9-47d8-a679-e160e1857450",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "955954c9-e771-49e1-a050-a38d61542ebe",
#> "timestamp": "2026-09-24T15:24:44",
#> "action": "ASSIGN",
#> "user": "dsuser",
#> "r_cmd": "dsROCrate_test <- opal[CNSIM.CNSIM1]",
#> "fx": "DSI::datashield.assign.table",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "39160e84-dba9-47d8-a679-e160e1857450",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "adf2cdc6-cf01-4974-a07a-4a00d28debf9",
#> "timestamp": "2026-09-24T15:24:45",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::lsDS(search.filter = NULL, 1L)",
#> "fx": "dsBase::lsDS",
#> "session": "39160e84-dba9-47d8-a679-e160e1857450",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "0673ac1d-67e4-4601-8f38-c286f96df130",
#> "timestamp": "2026-09-24T15:25:43",
#> "action": "OPEN",
#> "user": "dsuser",
#> "r_cmd": "Open session: d413548a-ae1d-4491-9b71-1c6dd6bcbf93",
#> "fx": "DSI::datashield.login",
#> "session": "d413548a-ae1d-4491-9b71-1c6dd6bcbf93",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "c1760666-2455-4d74-be57-2673c8e1a64f",
#> "timestamp": "2026-09-24T15:25:43",
#> "action": "RESOLVE",
#> "user": "dsuser",
#> "r_cmd": "RESOLVE CNSIM.CNSIM1 -> dsROCrate_test",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "d413548a-ae1d-4491-9b71-1c6dd6bcbf93",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "d705cbc0-7dca-4343-9352-2a25a91e9ff2",
#> "timestamp": "2026-09-24T15:25:43",
#> "action": "ASSIGN",
#> "user": "dsuser",
#> "r_cmd": "dsROCrate_test <- opal[CNSIM.CNSIM1]",
#> "fx": "DSI::datashield.assign.table",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "d413548a-ae1d-4491-9b71-1c6dd6bcbf93",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "883fa5ad-edfd-480b-acf1-9d2f2858ec3e",
#> "timestamp": "2026-09-24T15:25:44",
#> "action": "OPEN",
#> "user": "dsuser",
#> "r_cmd": "Open session: 810ea84d-7fe0-40df-b07a-506c08a54d71",
#> "fx": "DSI::datashield.login",
#> "session": "810ea84d-7fe0-40df-b07a-506c08a54d71",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "a934cd3f-615a-4004-a7c6-f0b9f1f0f5da",
#> "timestamp": "2026-09-24T15:25:45",
#> "action": "RESOLVE",
#> "user": "dsuser",
#> "r_cmd": "RESOLVE CNSIM.CNSIM1 -> dsROCrate_test",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "810ea84d-7fe0-40df-b07a-506c08a54d71",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "cf3e3b12-c2f9-4d5c-8e73-2c131a9f68ae",
#> "timestamp": "2026-09-24T15:25:45",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::lsDS(search.filter = NULL, 1L)",
#> "fx": "dsBase::lsDS",
#> "session": "d413548a-ae1d-4491-9b71-1c6dd6bcbf93",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "53ebedc1-3a3d-49d9-9a30-1167cc0d69ba",
#> "timestamp": "2026-09-24T15:25:45",
#> "action": "ASSIGN",
#> "user": "dsuser",
#> "r_cmd": "dsROCrate_test <- opal[CNSIM.CNSIM1]",
#> "fx": "DSI::datashield.assign.table",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "810ea84d-7fe0-40df-b07a-506c08a54d71",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "cfa2c8fb-ecba-41bb-b99b-75e24120bcaf",
#> "timestamp": "2026-09-24T15:25:46",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::lsDS(search.filter = NULL, 1L)",
#> "fx": "dsBase::lsDS",
#> "session": "810ea84d-7fe0-40df-b07a-506c08a54d71",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "e649321e-d55c-4ae1-92d2-315c9b799c89",
#> "timestamp": "2026-09-24T15:25:52",
#> "action": "OPEN",
#> "user": "dsuser",
#> "r_cmd": "Open session: a5c8eb68-f5b9-47bf-b5a1-7279abb30064",
#> "fx": "DSI::datashield.login",
#> "session": "a5c8eb68-f5b9-47bf-b5a1-7279abb30064",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "dbfa4a96-6ed3-4087-b113-fb7a94bd7f94",
#> "timestamp": "2026-09-24T15:25:53",
#> "action": "RESOLVE",
#> "user": "dsuser",
#> "r_cmd": "RESOLVE CNSIM.CNSIM1 -> dsROCrate_test",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "a5c8eb68-f5b9-47bf-b5a1-7279abb30064",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "2c49a1ab-1c3a-4fb7-918c-c0b8954b43ac",
#> "timestamp": "2026-09-24T15:25:53",
#> "action": "ASSIGN",
#> "user": "dsuser",
#> "r_cmd": "dsROCrate_test <- opal[CNSIM.CNSIM1]",
#> "fx": "DSI::datashield.assign.table",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "a5c8eb68-f5b9-47bf-b5a1-7279abb30064",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "1cb2ce85-6350-4ed9-85ae-2410ccaf2468",
#> "timestamp": "2026-09-24T15:25:55",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::lsDS(search.filter = NULL, 1L)",
#> "fx": "dsBase::lsDS",
#> "session": "a5c8eb68-f5b9-47bf-b5a1-7279abb30064",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "6c0d3d4d-d4da-42bc-af5a-9cfd10f29b3e",
#> "timestamp": "2026-09-24T15:29:41",
#> "action": "OPEN",
#> "user": "dsuser",
#> "r_cmd": "Open session: 646a3fcd-f3df-4877-9d1c-4a68d085ab91",
#> "fx": "DSI::datashield.login",
#> "session": "646a3fcd-f3df-4877-9d1c-4a68d085ab91",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "a2760cc6-61ae-4557-886e-af7a680e6492",
#> "timestamp": "2026-09-24T15:29:42",
#> "action": "RESOLVE",
#> "user": "dsuser",
#> "r_cmd": "RESOLVE CNSIM.CNSIM1 -> dsROCrate_test",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "646a3fcd-f3df-4877-9d1c-4a68d085ab91",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "7d7081d5-8991-4420-84a7-0f14886c3afd",
#> "timestamp": "2026-09-24T15:29:42",
#> "action": "ASSIGN",
#> "user": "dsuser",
#> "r_cmd": "dsROCrate_test <- opal[CNSIM.CNSIM1]",
#> "fx": "DSI::datashield.assign.table",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "646a3fcd-f3df-4877-9d1c-4a68d085ab91",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "5421655c-277c-4f3a-b34f-70216c291190",
#> "timestamp": "2026-09-24T15:29:44",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::lsDS(search.filter = NULL, 1L)",
#> "fx": "dsBase::lsDS",
#> "session": "646a3fcd-f3df-4877-9d1c-4a68d085ab91",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "62c0203e-0d01-4f20-b012-e5f65b461922",
#> "timestamp": "2026-09-24T15:31:22",
#> "action": "OPEN",
#> "user": "dsuser",
#> "r_cmd": "Open session: f91ddff9-d015-4c2f-9d0e-a6f3d26e0166",
#> "fx": "DSI::datashield.login",
#> "session": "f91ddff9-d015-4c2f-9d0e-a6f3d26e0166",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "5f59e630-8a79-449d-a012-01fe0db8c9f3",
#> "timestamp": "2026-09-24T15:31:22",
#> "action": "RESOLVE",
#> "user": "dsuser",
#> "r_cmd": "RESOLVE CNSIM.CNSIM1 -> dsROCrate_test",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "f91ddff9-d015-4c2f-9d0e-a6f3d26e0166",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "0f412dd7-f2aa-41ca-860c-62971940be1c",
#> "timestamp": "2026-09-24T15:31:22",
#> "action": "OPEN",
#> "user": "dsuser",
#> "r_cmd": "Open session: 58dfc00f-c5e9-4a28-a524-50d8b0282408",
#> "fx": "DSI::datashield.login",
#> "session": "58dfc00f-c5e9-4a28-a524-50d8b0282408",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "70aa6868-b7ee-491a-a219-5a70bc16a877",
#> "timestamp": "2026-09-24T15:31:22",
#> "action": "RESOLVE",
#> "user": "dsuser",
#> "r_cmd": "RESOLVE CNSIM.CNSIM1 -> dsROCrate_test",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "58dfc00f-c5e9-4a28-a524-50d8b0282408",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "a5e3db35-5897-4a4c-9fe6-e9693b2e4464",
#> "timestamp": "2026-09-24T15:31:23",
#> "action": "ASSIGN",
#> "user": "dsuser",
#> "r_cmd": "dsROCrate_test <- opal[CNSIM.CNSIM1]",
#> "fx": "DSI::datashield.assign.table",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "f91ddff9-d015-4c2f-9d0e-a6f3d26e0166",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "705a14c0-ce87-4da5-80d8-7d670b2d64e3",
#> "timestamp": "2026-09-24T15:31:23",
#> "action": "ASSIGN",
#> "user": "dsuser",
#> "r_cmd": "dsROCrate_test <- opal[CNSIM.CNSIM1]",
#> "fx": "DSI::datashield.assign.table",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "58dfc00f-c5e9-4a28-a524-50d8b0282408",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "c57bdf89-ab2e-45f0-bcc0-8df6dd710eee",
#> "timestamp": "2026-09-24T15:31:24",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::lsDS(search.filter = NULL, 1L)",
#> "fx": "dsBase::lsDS",
#> "session": "f91ddff9-d015-4c2f-9d0e-a6f3d26e0166",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "2efebe77-c247-45f4-8b8a-4a5f8247b2de",
#> "timestamp": "2026-09-24T15:31:24",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::lsDS(search.filter = NULL, 1L)",
#> "fx": "dsBase::lsDS",
#> "session": "58dfc00f-c5e9-4a28-a524-50d8b0282408",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "6f73dda9-e994-4158-bd9a-c3f4acba798f",
#> "timestamp": "2026-09-24T15:33:02",
#> "action": "OPEN",
#> "user": "dsuser",
#> "r_cmd": "Open session: dfe0c762-6080-4a60-8a2c-5abcdb9bde9b",
#> "fx": "DSI::datashield.login",
#> "session": "dfe0c762-6080-4a60-8a2c-5abcdb9bde9b",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "b3a61616-b2af-4862-ba65-1a3dfa1fe98a",
#> "timestamp": "2026-09-24T15:33:03",
#> "action": "RESOLVE",
#> "user": "dsuser",
#> "r_cmd": "RESOLVE CNSIM.CNSIM1 -> dsROCrate_test",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "dfe0c762-6080-4a60-8a2c-5abcdb9bde9b",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "29d41571-dd8b-44bb-8ea0-3309f61ac3b8",
#> "timestamp": "2026-09-24T15:33:03",
#> "action": "ASSIGN",
#> "user": "dsuser",
#> "r_cmd": "dsROCrate_test <- opal[CNSIM.CNSIM1]",
#> "fx": "DSI::datashield.assign.table",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "dfe0c762-6080-4a60-8a2c-5abcdb9bde9b",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "486e80dd-a1cf-40a2-818c-ff0b0ecf89c5",
#> "timestamp": "2026-09-24T15:33:05",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::lsDS(search.filter = NULL, 1L)",
#> "fx": "dsBase::lsDS",
#> "session": "dfe0c762-6080-4a60-8a2c-5abcdb9bde9b",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "c99ba7c8-e497-4f3c-ba13-537dfbab98d3",
#> "timestamp": "2026-09-24T15:35:05",
#> "action": "OPEN",
#> "user": "dsuser",
#> "r_cmd": "Open session: f6b4e753-6335-41bf-b589-3c6d3eb5a920",
#> "fx": "DSI::datashield.login",
#> "session": "f6b4e753-6335-41bf-b589-3c6d3eb5a920",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "c5beacd5-e251-448d-b5ed-67258b681e78",
#> "timestamp": "2026-09-24T15:35:06",
#> "action": "RESOLVE",
#> "user": "dsuser",
#> "r_cmd": "RESOLVE CNSIM.CNSIM1 -> dsROCrate_test",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "f6b4e753-6335-41bf-b589-3c6d3eb5a920",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "0d6b90f3-f91a-427c-82ca-3c9c4749add8",
#> "timestamp": "2026-09-24T15:35:06",
#> "action": "ASSIGN",
#> "user": "dsuser",
#> "r_cmd": "dsROCrate_test <- opal[CNSIM.CNSIM1]",
#> "fx": "DSI::datashield.assign.table",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "f6b4e753-6335-41bf-b589-3c6d3eb5a920",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "7c0d9b95-3464-4abc-91f9-64a66854a661",
#> "timestamp": "2026-09-24T15:35:08",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::lsDS(search.filter = NULL, 1L)",
#> "fx": "dsBase::lsDS",
#> "session": "f6b4e753-6335-41bf-b589-3c6d3eb5a920",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "9b5b271a-a70e-4327-9a0e-675eb1303ec7",
#> "timestamp": "2026-09-24T15:44:02",
#> "action": "OPEN",
#> "user": "dsuser",
#> "r_cmd": "Open session: 3450404a-bf55-4956-a426-606616994c62",
#> "fx": "DSI::datashield.login",
#> "session": "3450404a-bf55-4956-a426-606616994c62",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "232c0a3c-2695-415b-a8b8-27f578a443cb",
#> "timestamp": "2026-09-24T15:44:02",
#> "action": "RESOLVE",
#> "user": "dsuser",
#> "r_cmd": "RESOLVE CNSIM.CNSIM1 -> dsROCrate_test",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "3450404a-bf55-4956-a426-606616994c62",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "c6ea6159-8190-4a3d-9c80-6f25a7f4bef4",
#> "timestamp": "2026-09-24T15:44:02",
#> "action": "ASSIGN",
#> "user": "dsuser",
#> "r_cmd": "dsROCrate_test <- opal[CNSIM.CNSIM1]",
#> "fx": "DSI::datashield.assign.table",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "3450404a-bf55-4956-a426-606616994c62",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "84514e52-6cd8-4e87-893a-2010af9ec4a9",
#> "timestamp": "2026-09-24T15:44:03",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::lsDS(search.filter = NULL, 1L)",
#> "fx": "dsBase::lsDS",
#> "session": "3450404a-bf55-4956-a426-606616994c62",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "2a5cf104-dd3f-4c3b-afc6-64340451d707",
#> "timestamp": "2026-09-24T15:50:52",
#> "action": "OPEN",
#> "user": "dsuser",
#> "r_cmd": "Open session: 5ac8caa6-f6e5-43c1-8a7c-de2f908551ff",
#> "fx": "DSI::datashield.login",
#> "session": "5ac8caa6-f6e5-43c1-8a7c-de2f908551ff",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "2ff7a0bd-46f8-4479-a64f-23bbd4ac9c40",
#> "timestamp": "2026-09-24T15:50:53",
#> "action": "RESOLVE",
#> "user": "dsuser",
#> "r_cmd": "RESOLVE CNSIM.CNSIM1 -> dsROCrate_test",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "5ac8caa6-f6e5-43c1-8a7c-de2f908551ff",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "2d3dedf4-7278-4e69-ade0-22e3f2309ee3",
#> "timestamp": "2026-09-24T15:50:53",
#> "action": "ASSIGN",
#> "user": "dsuser",
#> "r_cmd": "dsROCrate_test <- opal[CNSIM.CNSIM1]",
#> "fx": "DSI::datashield.assign.table",
#> "symbol": "dsROCrate_test",
#> "kind": "table",
#> "asset": "CNSIM.CNSIM1",
#> "session": "5ac8caa6-f6e5-43c1-8a7c-de2f908551ff",
#> "backend": "OBiBa's Opal"
#> },
#> {
#> "id": "8528042b-df50-4a35-a4b3-cefb120944e2",
#> "timestamp": "2026-09-24T15:50:55",
#> "action": "AGGREGATE",
#> "user": "dsuser",
#> "r_cmd": "dsBase::lsDS(search.filter = NULL, 1L)",
#> "fx": "dsBase::lsDS",
#> "session": "5ac8caa6-f6e5-43c1-8a7c-de2f908551ff",
#> "backend": "OBiBa's Opal"
#> }
#> ]
#> ]
#> }
#> ]
#> }The resulting RO-Crate can be stored into an RO-Crate bag/archive
with the function rocrateR::bag_rocrate:
# create temp directory (only for demo purposes)
tmp_path_bag <- file.path(tempdir(), "dsROCrate-getting-started")
dir.create(tmp_path_bag, showWarnings = FALSE)
# create RO-Crate bag
path_to_rocrate_bag <- basic_rocrate |>
rocrateR::bag_rocrate(path = tmp_path_bag, overwrite = TRUE)
#> RO-Crate successfully 'bagged'!
#> For details, see: /var/folders/59/4_l6kbyj2qsczmk2b52qg_f40000gn/T//RtmpT53jbs/dsROCrate-getting-started/rocrate-09d45196f165958ae4f3bb6ad0f01b56.zipWe can explore the contents with the following commands:
# extract files in temporary directory
path_to_rocrate_bag |>
# extract contents inside /tmp_path_bag/ROC
rocrateR::unbag_rocrate(output = file.path(tmp_path_bag, "ROC"), quiet = TRUE) |>
# create tree with the files
fs::dir_tree()
#> /private/var/folders/59/4_l6kbyj2qsczmk2b52qg_f40000gn/T/RtmpT53jbs/dsROCrate-getting-started/ROC
#> ├── bag-info.txt
#> ├── bagit.txt
#> ├── data
#> │ ├── 20260924T165622-dslogs-dsuser.log
#> │ ├── 20260924T165623-dslogs-dsuser_mappings.csv
#> │ └── ro-crate-metadata.json
#> ├── manifest-sha512.txt
#> └── tagmanifest-sha512.txtsafe_people_crate_v1 <- opalr::opal.login(
username = USERNAME,
password = USERPASS,
url = SERVER
) |>
dsROCrate::audit(user = "dsuser", project = "CNSIM")
#> opening file input connection.
#> Found 258 records... Imported 258 records. Simplifying...
#> closing file input connection.
print(safe_people_crate_v1)
#> {
#> "@context": "https://w3id.org/ro/crate/1.2/context",
#> "@graph": [
#> {
#> "@id": "ro-crate-metadata.json",
#> "@type": "CreativeWork",
#> "about": {
#> "@id": "./"
#> },
#> "conformsTo": {
#> "@id": "https://w3id.org/ro/crate/1.2"
#> }
#> },
#> {
#> "@id": "./",
#> "@type": "Dataset",
#> "name": "",
#> "description": "",
#> "datePublished": "2026-09-24",
#> "license": {
#> "@id": "http://spdx.org/licenses/CC-BY-4.0"
#> },
#> "conformsTo": {
#> "@id": "https://w3id.org/5s-crate/0.4"
#> },
#> "hasPart": [
#> {
#> "@id": "20260924T165626-dslogs-dsuser.log"
#> },
#> {
#> "@id": "20260924T165626-dslogs-dsuser_mappings.csv"
#> }
#> ]
#> },
#> {
#> "@id": "https://w3id.org/5s-crate/0.4",
#> "@type": ["CreativeWork", "Profile"],
#> "name": "Five Safes RO-Crate profile"
#> ❗ <file truncated, set `options(max_lines = Inf)` to display all>
#> ]
#> }A markdown report can be created with an overview and details for an
RO-Crate, using the dsROCrate::report:
Only generate .Rmd file
safe_people_crate_v1_rmd <- tempfile(fileext = ".Rmd") # temporary file
safe_people_crate_contents <- safe_people_crate_v1 |>
dsROCrate::report(filepath = safe_people_crate_v1_rmd, render = FALSE)
#> 1 'Author' entity was found!
#> 3 asset entities were found!
#> 1 'Project' entity was found!
#> 22 'CreativeWork', 'PropertyValue' OR 'SoftwareApplication' entities were found!
#> 2 'File' entities were found!
# display Overview diagram
safe_people_crate_contents$overview_diagram
# display Overview data (Safe People, Safe Projects and Safe Data)
safe_people_crate_contents$overview_data |>
knitr::kable()| Project | Data | Access Level | People | Function | Timestamp |
|---|---|---|---|---|---|
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T09:57:00 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T09:57:02 |
| CNSIM | CNSIM1 | read | dsuser | base::exists | 2026-09-24T09:57:02 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:02 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::isValidDS | 2026-09-24T09:57:02 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::dimDS | 2026-09-24T09:57:03 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::colnamesDS | 2026-09-24T09:57:03 |
| CNSIM | CNSIM1 | read | dsuser | base::exists | 2026-09-24T09:57:03 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:03 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::isValidDS | 2026-09-24T09:57:03 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::lengthDS | 2026-09-24T09:57:03 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::quantileMeanDS | 2026-09-24T09:57:04 |
| CNSIM | CNSIM1 | read | dsuser | base::exists | 2026-09-24T09:57:04 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:04 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::isValidDS | 2026-09-24T09:57:04 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::lengthDS | 2026-09-24T09:57:04 |
| CNSIM | CNSIM1 | read | dsuser | base::exists | 2026-09-24T09:57:07 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:07 |
| CNSIM | CNSIM1 | read | dsuser | base::exists | 2026-09-24T09:57:11 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:11 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::corDS | 2026-09-24T09:57:12 |
| CNSIM | CNSIM1 | read | dsuser | base::exists | 2026-09-24T09:57:12 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:12 |
| CNSIM | CNSIM1 | read | dsuser | base::exists | 2026-09-24T09:57:13 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::asFactorDS1 | 2026-09-24T09:57:13 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::tableDS | 2026-09-24T09:57:13 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T12:45:22 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T12:45:24 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T12:51:53 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T12:51:54 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T12:59:10 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T12:59:11 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T13:05:13 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T13:05:13 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T13:45:35 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T13:45:35 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T14:17:43 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T14:17:43 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T14:27:55 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T14:27:56 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T14:29:00 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T14:29:00 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T14:32:23 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T14:32:23 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:24:25 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:24:25 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:24:44 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:24:44 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:25:43 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:25:43 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:25:45 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:25:45 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:25:53 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:25:53 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:29:42 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:29:42 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:31:22 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:31:23 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:33:03 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:33:03 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:35:06 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:35:06 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:44:02 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:44:02 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:50:53 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:50:53 |
| CNSIM | CNSIM2 | read | dsuser | 2026-09-24T09:57:05 | |
| CNSIM | CNSIM2 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T09:57:06 |
| CNSIM | CNSIM2 | read | dsuser | base::exists | 2026-09-24T09:57:06 |
| CNSIM | CNSIM2 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:06 |
| CNSIM | CNSIM2 | read | dsuser | dsBase::isValidDS | 2026-09-24T09:57:06 |
| CNSIM | CNSIM2 | read | dsuser | dsBase::dimDS | 2026-09-24T09:57:07 |
| CNSIM | CNSIM2 | read | dsuser | dsBase::colnamesDS | 2026-09-24T09:57:07 |
| CNSIM | CNSIM2 | read | dsuser | base::exists | 2026-09-24T09:57:07 |
| CNSIM | CNSIM2 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:08 |
| CNSIM | CNSIM2 | read | dsuser | base::exists | 2026-09-24T09:57:08 |
| CNSIM | CNSIM2 | read | dsuser | dsBase::isValidDS | 2026-09-24T09:57:08 |
| CNSIM | CNSIM2 | read | dsuser | dsBase::lengthDS | 2026-09-24T09:57:08 |
| CNSIM | CNSIM2 | read | dsuser | dsBase::quantileMeanDS | 2026-09-24T09:57:09 |
| CNSIM | CNSIM2 | read | dsuser | base::exists | 2026-09-24T09:57:11 |
| CNSIM | CNSIM2 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:12 |
| CNSIM | CNSIM2 | read | dsuser | dsBase::corDS | 2026-09-24T09:57:12 |
| CNSIM | CNSIM2 | read | dsuser | base::exists | 2026-09-24T09:57:12 |
| CNSIM | CNSIM3 | read | dsuser | 2026-09-24T09:57:09 | |
| CNSIM | CNSIM3 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T09:57:10 |
| CNSIM | CNSIM3 | read | dsuser | base::exists | 2026-09-24T09:57:10 |
| CNSIM | CNSIM3 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:10 |
| CNSIM | CNSIM3 | read | dsuser | dsBase::isValidDS | 2026-09-24T09:57:10 |
| CNSIM | CNSIM3 | read | dsuser | dsBase::dimDS | 2026-09-24T09:57:10 |
| CNSIM | CNSIM3 | read | dsuser | dsBase::colnamesDS | 2026-09-24T09:57:11 |
| CNSIM | CNSIM3 | read | dsuser | base::exists | 2026-09-24T09:57:11 |
| CNSIM | CNSIM3 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:11 |
Render and display report (HTML)
safe_project_crate_v1 <- opalr::opal.login(
username = USERNAME,
password = USERPASS,
url = SERVER
) |>
dsROCrate::audit(project = "CNSIM")
#> opening file input connection.
#> Found 258 records... Imported 258 records. Simplifying...
#> closing file input connection.
#> opening file input connection.
#> Found 258 records... Imported 258 records. Simplifying...
#> closing file input connection.
#> opening file input connection.
#> Found 258 records... Imported 258 records. Simplifying...
#> closing file input connection.
#> opening file input connection.
#> Found 258 records... Imported 258 records. Simplifying...
#> closing file input connection.
#> opening file input connection.
#> Found 258 records... Imported 258 records. Simplifying...
#> closing file input connection.
print(safe_project_crate_v1)
#> {
#> "@context": "https://w3id.org/ro/crate/1.2/context",
#> "@graph": [
#> {
#> "@id": "ro-crate-metadata.json",
#> "@type": "CreativeWork",
#> "about": {
#> "@id": "./"
#> },
#> "conformsTo": {
#> "@id": "https://w3id.org/ro/crate/1.2"
#> }
#> },
#> {
#> "@id": "./",
#> "@type": "Dataset",
#> "name": "",
#> "description": "",
#> "datePublished": "2026-09-24",
#> "license": {
#> "@id": "http://spdx.org/licenses/CC-BY-4.0"
#> },
#> "conformsTo": {
#> "@id": "https://w3id.org/5s-crate/0.4"
#> },
#> "hasPart": [
#> {
#> "@id": "20260924T165630-dslogs-dsuser.log"
#> },
#> {
#> "@id": "20260924T165630-dslogs-dsuser_mappings.csv"
#> }
#> ]
#> },
#> {
#> "@id": "https://w3id.org/5s-crate/0.4",
#> "@type": ["CreativeWork", "Profile"],
#> "name": "Five Safes RO-Crate profile"
#> ❗ <file truncated, set `options(max_lines = Inf)` to display all>
#> ]
#> }A markdown report can be created with an overview and details for an
RO-Crate, using the dsROCrate::report:
Only generate .Rmd file
safe_project_crate_v1_rmd <- tempfile(fileext = ".Rmd") # temporary file
safe_project_crate_contents <- safe_project_crate_v1 |>
dsROCrate::report(filepath = safe_project_crate_v1_rmd, render = FALSE)
#> 5 'Author' entities were found!
#> 3 asset entities were found!
#> 1 'Project' entity was found!
#> 22 'CreativeWork', 'PropertyValue' OR 'SoftwareApplication' entities were found!
#> 2 'File' entities were found!
# display Overview diagram
safe_project_crate_contents$overview_diagram
# display Overview data (Safe People, Safe Projects and Safe Data)
safe_project_crate_contents$overview_data |>
knitr::kable()| Project | Data | Access Level | People | Function | Timestamp |
|---|---|---|---|---|---|
| CNSIM | CNSIM1 | administrate | administrator | ||
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T09:57:00 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T09:57:02 |
| CNSIM | CNSIM1 | read | dsuser | base::exists | 2026-09-24T09:57:02 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:02 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::isValidDS | 2026-09-24T09:57:02 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::dimDS | 2026-09-24T09:57:03 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::colnamesDS | 2026-09-24T09:57:03 |
| CNSIM | CNSIM1 | read | dsuser | base::exists | 2026-09-24T09:57:03 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:03 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::isValidDS | 2026-09-24T09:57:03 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::lengthDS | 2026-09-24T09:57:03 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::quantileMeanDS | 2026-09-24T09:57:04 |
| CNSIM | CNSIM1 | read | dsuser | base::exists | 2026-09-24T09:57:04 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:04 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::isValidDS | 2026-09-24T09:57:04 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::lengthDS | 2026-09-24T09:57:04 |
| CNSIM | CNSIM1 | read | dsuser | base::exists | 2026-09-24T09:57:07 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:07 |
| CNSIM | CNSIM1 | read | dsuser | base::exists | 2026-09-24T09:57:11 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:11 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::corDS | 2026-09-24T09:57:12 |
| CNSIM | CNSIM1 | read | dsuser | base::exists | 2026-09-24T09:57:12 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:12 |
| CNSIM | CNSIM1 | read | dsuser | base::exists | 2026-09-24T09:57:13 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::asFactorDS1 | 2026-09-24T09:57:13 |
| CNSIM | CNSIM1 | read | dsuser | dsBase::tableDS | 2026-09-24T09:57:13 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T12:45:22 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T12:45:24 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T12:51:53 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T12:51:54 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T12:59:10 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T12:59:11 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T13:05:13 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T13:05:13 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T13:45:35 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T13:45:35 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T14:17:43 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T14:17:43 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T14:27:55 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T14:27:56 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T14:29:00 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T14:29:00 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T14:32:23 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T14:32:23 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:24:25 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:24:25 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:24:44 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:24:44 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:25:43 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:25:43 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:25:45 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:25:45 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:25:53 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:25:53 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:29:42 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:29:42 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:31:22 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:31:23 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:33:03 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:33:03 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:35:06 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:35:06 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:44:02 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:44:02 |
| CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:50:53 | |
| CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:50:53 |
| CNSIM | CNSIM1 | read | dsuser1 | ||
| CNSIM | CNSIM2 | administrate | administrator | ||
| CNSIM | CNSIM2 | read | dsuser | 2026-09-24T09:57:05 | |
| CNSIM | CNSIM2 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T09:57:06 |
| CNSIM | CNSIM2 | read | dsuser | base::exists | 2026-09-24T09:57:06 |
| CNSIM | CNSIM2 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:06 |
| CNSIM | CNSIM2 | read | dsuser | dsBase::isValidDS | 2026-09-24T09:57:06 |
| CNSIM | CNSIM2 | read | dsuser | dsBase::dimDS | 2026-09-24T09:57:07 |
| CNSIM | CNSIM2 | read | dsuser | dsBase::colnamesDS | 2026-09-24T09:57:07 |
| CNSIM | CNSIM2 | read | dsuser | base::exists | 2026-09-24T09:57:07 |
| CNSIM | CNSIM2 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:08 |
| CNSIM | CNSIM2 | read | dsuser | base::exists | 2026-09-24T09:57:08 |
| CNSIM | CNSIM2 | read | dsuser | dsBase::isValidDS | 2026-09-24T09:57:08 |
| CNSIM | CNSIM2 | read | dsuser | dsBase::lengthDS | 2026-09-24T09:57:08 |
| CNSIM | CNSIM2 | read | dsuser | dsBase::quantileMeanDS | 2026-09-24T09:57:09 |
| CNSIM | CNSIM2 | read | dsuser | base::exists | 2026-09-24T09:57:11 |
| CNSIM | CNSIM2 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:12 |
| CNSIM | CNSIM2 | read | dsuser | dsBase::corDS | 2026-09-24T09:57:12 |
| CNSIM | CNSIM2 | read | dsuser | base::exists | 2026-09-24T09:57:12 |
| CNSIM | CNSIM2 | read | dsuser2 | ||
| CNSIM | CNSIM3 | administrate | administrator | ||
| CNSIM | CNSIM3 | read | dsuser | 2026-09-24T09:57:09 | |
| CNSIM | CNSIM3 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T09:57:10 |
| CNSIM | CNSIM3 | read | dsuser | base::exists | 2026-09-24T09:57:10 |
| CNSIM | CNSIM3 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:10 |
| CNSIM | CNSIM3 | read | dsuser | dsBase::isValidDS | 2026-09-24T09:57:10 |
| CNSIM | CNSIM3 | read | dsuser | dsBase::dimDS | 2026-09-24T09:57:10 |
| CNSIM | CNSIM3 | read | dsuser | dsBase::colnamesDS | 2026-09-24T09:57:11 |
| CNSIM | CNSIM3 | read | dsuser | base::exists | 2026-09-24T09:57:11 |
| CNSIM | CNSIM3 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:11 |
| CNSIM | CNSIM3 | read | dsuser3 |
Render and display report (HTML)
safe_project_crate_v1 |>
dsROCrate::report(filepath = safe_project_crate_v1_rmd,
title = "DataSHIELD Safe Project - Audit Report",
render = TRUE,
overwrite = TRUE)study_crate_v1 <-
list(
"opal_test" = opalr::opal.login(
username = USERNAME,
password = USERPASS,
url = "https://opal-demo.obiba.org"
),
"opal_demo" = opalr::opal.login(
username = USERNAME,
password = USERPASS,
url = "https://opal-demo.obiba.org"
)
) |>
dsROCrate::audit(project = "CNSIM")
#> opening file input connection.
#> Found 258 records... Imported 258 records. Simplifying...
#> closing file input connection.
#> opening file input connection.
#> Found 258 records... Imported 258 records. Simplifying...
#> closing file input connection.
#> opening file input connection.
#> Found 258 records... Imported 258 records. Simplifying...
#> closing file input connection.
#> opening file input connection.
#> Found 258 records... Imported 258 records. Simplifying...
#> closing file input connection.
#> opening file input connection.
#> Found 258 records... Imported 258 records. Simplifying...
#> closing file input connection.
#> opening file input connection.
#> Found 258 records... Imported 258 records. Simplifying...
#> closing file input connection.
#> opening file input connection.
#> Found 258 records... Imported 258 records. Simplifying...
#> closing file input connection.
#> opening file input connection.
#> Found 260 records... Imported 260 records. Simplifying...
#> closing file input connection.
#> opening file input connection.
#> Found 261 records... Imported 261 records. Simplifying...
#> closing file input connection.
#> opening file input connection.
#> Found 261 records... Imported 261 records. Simplifying...
#> closing file input connection.
print(study_crate_v1)
#> $opal_test
#> {
#> "@context": "https://w3id.org/ro/crate/1.2/context",
#> "@graph": [
#> {
#> "@id": "ro-crate-metadata.json",
#> "@type": "CreativeWork",
#> "about": {
#> "@id": "./"
#> },
#> "conformsTo": {
#> "@id": "https://w3id.org/ro/crate/1.2"
#> }
#> },
#> {
#> "@id": "./",
#> "@type": "Dataset",
#> "name": "",
#> "description": "",
#> "datePublished": "2026-09-24",
#> "license": {
#> "@id": "http://spdx.org/licenses/CC-BY-4.0"
#> },
#> "conformsTo": {
#> "@id": "https://w3id.org/5s-crate/0.4"
#> },
#> "hasPart": [
#> {
#> "@id": "20260924T165635-dslogs-dsuser.log"
#> },
#> {
#> "@id": "20260924T165636-dslogs-dsuser_mappings.csv"
#> }
#> ]
#> },
#> {
#> "@id": "https://w3id.org/5s-crate/0.4",
#> "@type": ["CreativeWork", "Profile"],
#> "name": "Five Safes RO-Crate profile"
#> ❗ <file truncated, set `options(max_lines = Inf)` to display all>
#> ]
#> }
#>
#> $opal_demo
#> {
#> "@context": "https://w3id.org/ro/crate/1.2/context",
#> "@graph": [
#> {
#> "@id": "ro-crate-metadata.json",
#> "@type": "CreativeWork",
#> "about": {
#> "@id": "./"
#> },
#> "conformsTo": {
#> "@id": "https://w3id.org/ro/crate/1.2"
#> }
#> },
#> {
#> "@id": "./",
#> "@type": "Dataset",
#> "name": "",
#> "description": "",
#> "datePublished": "2026-09-24",
#> "license": {
#> "@id": "http://spdx.org/licenses/CC-BY-4.0"
#> },
#> "conformsTo": {
#> "@id": "https://w3id.org/5s-crate/0.4"
#> },
#> "hasPart": [
#> {
#> "@id": "20260924T165640-dslogs-dsuser.log"
#> },
#> {
#> "@id": "20260924T165641-dslogs-dsuser_mappings.csv"
#> }
#> ]
#> },
#> {
#> "@id": "https://w3id.org/5s-crate/0.4",
#> "@type": ["CreativeWork", "Profile"],
#> "name": "Five Safes RO-Crate profile"
#> ❗ <file truncated, set `options(max_lines = Inf)` to display all>
#> ]
#> }A markdown report can be created with an overview and details for an
RO-Crate, using the dsROCrate::report:
Only generate .Rmd file
study_crate_v1_rmd <- tempfile(fileext = ".Rmd") # temporary file
safe_project_crate_contents <- study_crate_v1 |>
dsROCrate::report(filepath = study_crate_v1_rmd, render = FALSE)
#> 5 'Author' entities were found!
#> 3 asset entities were found!
#> 1 'Project' entity was found!
#> 22 'CreativeWork', 'PropertyValue' OR 'SoftwareApplication' entities were found!
#> 2 'File' entities were found!
#> 5 'Author' entities were found!
#> 3 asset entities were found!
#> 1 'Project' entity was found!
#> 22 'CreativeWork', 'PropertyValue' OR 'SoftwareApplication' entities were found!
#> 2 'File' entities were found!
# display Overview diagram
safe_project_crate_contents$overview_diagram
# display Overview data (Safe People, Safe Projects and Safe Data)
safe_project_crate_contents$overview_data |>
knitr::kable()| Server | Project | Data | Access Level | People | Function | Timestamp |
|---|---|---|---|---|---|---|
| opal_demo | CNSIM | CNSIM1 | administrate | administrator | ||
| opal_demo | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T09:57:00 | |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T09:57:02 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | base::exists | 2026-09-24T09:57:02 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:02 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | dsBase::isValidDS | 2026-09-24T09:57:02 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | dsBase::dimDS | 2026-09-24T09:57:03 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | dsBase::colnamesDS | 2026-09-24T09:57:03 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | base::exists | 2026-09-24T09:57:03 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:03 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | dsBase::isValidDS | 2026-09-24T09:57:03 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | dsBase::lengthDS | 2026-09-24T09:57:03 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | dsBase::quantileMeanDS | 2026-09-24T09:57:04 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | base::exists | 2026-09-24T09:57:04 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:04 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | dsBase::isValidDS | 2026-09-24T09:57:04 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | dsBase::lengthDS | 2026-09-24T09:57:04 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | base::exists | 2026-09-24T09:57:07 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:07 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | base::exists | 2026-09-24T09:57:11 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:11 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | dsBase::corDS | 2026-09-24T09:57:12 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | base::exists | 2026-09-24T09:57:12 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:12 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | base::exists | 2026-09-24T09:57:13 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | dsBase::asFactorDS1 | 2026-09-24T09:57:13 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | dsBase::tableDS | 2026-09-24T09:57:13 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T12:45:22 | |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T12:45:24 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T12:51:53 | |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T12:51:54 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T12:59:10 | |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T12:59:11 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T13:05:13 | |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T13:05:13 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T13:45:35 | |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T13:45:35 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T14:17:43 | |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T14:17:43 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T14:27:55 | |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T14:27:56 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T14:29:00 | |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T14:29:00 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T14:32:23 | |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T14:32:23 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:24:25 | |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:24:25 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:24:44 | |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:24:44 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:25:43 | |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:25:43 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:25:45 | |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:25:45 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:25:53 | |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:25:53 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:29:42 | |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:29:42 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:31:22 | |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:31:23 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:33:03 | |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:33:03 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:35:06 | |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:35:06 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:44:02 | |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:44:02 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:50:53 | |
| opal_demo | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:50:53 |
| opal_demo | CNSIM | CNSIM1 | read | dsuser1 | ||
| opal_demo | CNSIM | CNSIM2 | administrate | administrator | ||
| opal_demo | CNSIM | CNSIM2 | read | dsuser | 2026-09-24T09:57:05 | |
| opal_demo | CNSIM | CNSIM2 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T09:57:06 |
| opal_demo | CNSIM | CNSIM2 | read | dsuser | base::exists | 2026-09-24T09:57:06 |
| opal_demo | CNSIM | CNSIM2 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:06 |
| opal_demo | CNSIM | CNSIM2 | read | dsuser | dsBase::isValidDS | 2026-09-24T09:57:06 |
| opal_demo | CNSIM | CNSIM2 | read | dsuser | dsBase::dimDS | 2026-09-24T09:57:07 |
| opal_demo | CNSIM | CNSIM2 | read | dsuser | dsBase::colnamesDS | 2026-09-24T09:57:07 |
| opal_demo | CNSIM | CNSIM2 | read | dsuser | base::exists | 2026-09-24T09:57:07 |
| opal_demo | CNSIM | CNSIM2 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:08 |
| opal_demo | CNSIM | CNSIM2 | read | dsuser | base::exists | 2026-09-24T09:57:08 |
| opal_demo | CNSIM | CNSIM2 | read | dsuser | dsBase::isValidDS | 2026-09-24T09:57:08 |
| opal_demo | CNSIM | CNSIM2 | read | dsuser | dsBase::lengthDS | 2026-09-24T09:57:08 |
| opal_demo | CNSIM | CNSIM2 | read | dsuser | dsBase::quantileMeanDS | 2026-09-24T09:57:09 |
| opal_demo | CNSIM | CNSIM2 | read | dsuser | base::exists | 2026-09-24T09:57:11 |
| opal_demo | CNSIM | CNSIM2 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:12 |
| opal_demo | CNSIM | CNSIM2 | read | dsuser | dsBase::corDS | 2026-09-24T09:57:12 |
| opal_demo | CNSIM | CNSIM2 | read | dsuser | base::exists | 2026-09-24T09:57:12 |
| opal_demo | CNSIM | CNSIM2 | read | dsuser2 | ||
| opal_demo | CNSIM | CNSIM3 | administrate | administrator | ||
| opal_demo | CNSIM | CNSIM3 | read | dsuser | 2026-09-24T09:57:09 | |
| opal_demo | CNSIM | CNSIM3 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T09:57:10 |
| opal_demo | CNSIM | CNSIM3 | read | dsuser | base::exists | 2026-09-24T09:57:10 |
| opal_demo | CNSIM | CNSIM3 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:10 |
| opal_demo | CNSIM | CNSIM3 | read | dsuser | dsBase::isValidDS | 2026-09-24T09:57:10 |
| opal_demo | CNSIM | CNSIM3 | read | dsuser | dsBase::dimDS | 2026-09-24T09:57:10 |
| opal_demo | CNSIM | CNSIM3 | read | dsuser | dsBase::colnamesDS | 2026-09-24T09:57:11 |
| opal_demo | CNSIM | CNSIM3 | read | dsuser | base::exists | 2026-09-24T09:57:11 |
| opal_demo | CNSIM | CNSIM3 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:11 |
| opal_demo | CNSIM | CNSIM3 | read | dsuser3 | ||
| opal_test | CNSIM | CNSIM1 | administrate | administrator | ||
| opal_test | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T09:57:00 | |
| opal_test | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T09:57:02 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | base::exists | 2026-09-24T09:57:02 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:02 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | dsBase::isValidDS | 2026-09-24T09:57:02 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | dsBase::dimDS | 2026-09-24T09:57:03 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | dsBase::colnamesDS | 2026-09-24T09:57:03 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | base::exists | 2026-09-24T09:57:03 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:03 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | dsBase::isValidDS | 2026-09-24T09:57:03 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | dsBase::lengthDS | 2026-09-24T09:57:03 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | dsBase::quantileMeanDS | 2026-09-24T09:57:04 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | base::exists | 2026-09-24T09:57:04 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:04 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | dsBase::isValidDS | 2026-09-24T09:57:04 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | dsBase::lengthDS | 2026-09-24T09:57:04 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | base::exists | 2026-09-24T09:57:07 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:07 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | base::exists | 2026-09-24T09:57:11 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:11 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | dsBase::corDS | 2026-09-24T09:57:12 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | base::exists | 2026-09-24T09:57:12 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:12 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | base::exists | 2026-09-24T09:57:13 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | dsBase::asFactorDS1 | 2026-09-24T09:57:13 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | dsBase::tableDS | 2026-09-24T09:57:13 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T12:45:22 | |
| opal_test | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T12:45:24 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T12:51:53 | |
| opal_test | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T12:51:54 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T12:59:10 | |
| opal_test | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T12:59:11 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T13:05:13 | |
| opal_test | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T13:05:13 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T13:45:35 | |
| opal_test | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T13:45:35 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T14:17:43 | |
| opal_test | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T14:17:43 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T14:27:55 | |
| opal_test | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T14:27:56 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T14:29:00 | |
| opal_test | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T14:29:00 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T14:32:23 | |
| opal_test | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T14:32:23 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:24:25 | |
| opal_test | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:24:25 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:24:44 | |
| opal_test | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:24:44 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:25:43 | |
| opal_test | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:25:43 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:25:45 | |
| opal_test | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:25:45 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:25:53 | |
| opal_test | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:25:53 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:29:42 | |
| opal_test | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:29:42 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:31:22 | |
| opal_test | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:31:23 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:33:03 | |
| opal_test | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:33:03 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:35:06 | |
| opal_test | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:35:06 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:44:02 | |
| opal_test | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:44:02 |
| opal_test | CNSIM | CNSIM1 | read | dsuser | 2026-09-24T15:50:53 | |
| opal_test | CNSIM | CNSIM1 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T15:50:53 |
| opal_test | CNSIM | CNSIM1 | read | dsuser1 | ||
| opal_test | CNSIM | CNSIM2 | administrate | administrator | ||
| opal_test | CNSIM | CNSIM2 | read | dsuser | 2026-09-24T09:57:05 | |
| opal_test | CNSIM | CNSIM2 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T09:57:06 |
| opal_test | CNSIM | CNSIM2 | read | dsuser | base::exists | 2026-09-24T09:57:06 |
| opal_test | CNSIM | CNSIM2 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:06 |
| opal_test | CNSIM | CNSIM2 | read | dsuser | dsBase::isValidDS | 2026-09-24T09:57:06 |
| opal_test | CNSIM | CNSIM2 | read | dsuser | dsBase::dimDS | 2026-09-24T09:57:07 |
| opal_test | CNSIM | CNSIM2 | read | dsuser | dsBase::colnamesDS | 2026-09-24T09:57:07 |
| opal_test | CNSIM | CNSIM2 | read | dsuser | base::exists | 2026-09-24T09:57:07 |
| opal_test | CNSIM | CNSIM2 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:08 |
| opal_test | CNSIM | CNSIM2 | read | dsuser | base::exists | 2026-09-24T09:57:08 |
| opal_test | CNSIM | CNSIM2 | read | dsuser | dsBase::isValidDS | 2026-09-24T09:57:08 |
| opal_test | CNSIM | CNSIM2 | read | dsuser | dsBase::lengthDS | 2026-09-24T09:57:08 |
| opal_test | CNSIM | CNSIM2 | read | dsuser | dsBase::quantileMeanDS | 2026-09-24T09:57:09 |
| opal_test | CNSIM | CNSIM2 | read | dsuser | base::exists | 2026-09-24T09:57:11 |
| opal_test | CNSIM | CNSIM2 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:12 |
| opal_test | CNSIM | CNSIM2 | read | dsuser | dsBase::corDS | 2026-09-24T09:57:12 |
| opal_test | CNSIM | CNSIM2 | read | dsuser | base::exists | 2026-09-24T09:57:12 |
| opal_test | CNSIM | CNSIM2 | read | dsuser2 | ||
| opal_test | CNSIM | CNSIM3 | administrate | administrator | ||
| opal_test | CNSIM | CNSIM3 | read | dsuser | 2026-09-24T09:57:09 | |
| opal_test | CNSIM | CNSIM3 | read | dsuser | DSI::datashield.assign.table | 2026-09-24T09:57:10 |
| opal_test | CNSIM | CNSIM3 | read | dsuser | base::exists | 2026-09-24T09:57:10 |
| opal_test | CNSIM | CNSIM3 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:10 |
| opal_test | CNSIM | CNSIM3 | read | dsuser | dsBase::isValidDS | 2026-09-24T09:57:10 |
| opal_test | CNSIM | CNSIM3 | read | dsuser | dsBase::dimDS | 2026-09-24T09:57:10 |
| opal_test | CNSIM | CNSIM3 | read | dsuser | dsBase::colnamesDS | 2026-09-24T09:57:11 |
| opal_test | CNSIM | CNSIM3 | read | dsuser | base::exists | 2026-09-24T09:57:11 |
| opal_test | CNSIM | CNSIM3 | read | dsuser | dsBase::classDS | 2026-09-24T09:57:11 |
| opal_test | CNSIM | CNSIM3 | read | dsuser3 |
Render and display report (HTML)
study_crate_v1 |>
dsROCrate::report(filepath = study_crate_v1_rmd,
title = "DataSHIELD Study audit",
render = TRUE,
overwrite = TRUE)