Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Concepts

These pages describe the data model and design ideas behind ACORN. Start with Why ACORN? for the problem the project addresses, then use this section as a reference for its schemas, standards and formats, identifiers, and technology classifications.

Research enablement

ACORN is managed by the Research Enablement Initiative (REI) at Oak Ridge National Laboratory (ORNL). REI aims to improve the way scientific research is conducted, shared, and evaluated. It is a team of developers, communication experts, and information scientists passionate about open science, transparency, and improving the researcher experience.

REI provides:

  • A cross-domain model of research activity data (RAD)
    • ACORN: schemas, controlled vocabularies, and ontologies for describing research activities
    • ASPECT: classifications for technology associated with a research activity
  • A Rust command-line application, acorn-cli
  • Rust libraries for schemas and RAD workflows, acorn-schema and acorn-lib
  • An independently maintained Python package, acorn-py
  • The ORNL research activity catalog, research.ornl.gov (currently in preview; contact REI for access)

Buckets

RAD lives in versioned folder collections called “buckets”. Each bucket contains a set of files and media assets that describe research activities. For multiple examples, see ORNL’s buckets.

The ACORN CLI combines buckets through a flat-file1 configuration file. This lets users aggregate multiple sources and generate reports from the combined data.

Buckets can be stored in a version-controlled GitLab or GitHub repository or on a local file system. They do not require a cloud provider.

Organizations can combine buckets across teams while retaining control over each repository’s access and permissions.

Tip

See the research enablement wiki for more information on buckets.


  1. A flat-file is a simple text file that contains data in a structured format, such as JSON or YAML. Flat-files are easy to read and write, and can be used to store configuration data for applications. ↩