Overview & Installation
🌍 Scientific Context
The WCRP projects (such as CMIP6, CORDEX, CORDEX-CMIP6) produce large volumes of NetCDF files.
The cc-plugin-wcrp provides plugins that call automated quality and consistency checks to verify compliance with WCRP Projects standards , including DRS structure, controlled vocabulary (CV), attributes, and temporal continuity.
⚙️ Architecture Overview
| Layer | Component | Description |
|---|---|---|
| Base Framework | IOOS Compliance Checker | Provides the core plugin mechanism and test runner |
| Plugin Package | cc-plugin-wcrp |
Adds project-specific checks for CMIP6, CORDEX, and CORDEX-CMIP6 |
| Controlled Vocabulary | esgvoc | Supplies the CV (activity_id, source_id, etc.) |
| Configuration | wcrp_config.toml |
Defines active checks, thresholds, and DRS rules |
🧩 Requirements
Python ≥ 3.10
Dependencies (installed automatically):
netCDF4xarraycfcheckercompliance-checker>=5.1.2esgvoccftimecf_xarraypooch
🛠️ Installation
Pip Installation
pip install cc-plugin-wcrp
Pip Installation from source
Clone the repository and cd into the repository folder, then:
pip install -e .
Esgvoc Installation
Install Esgvoc and Universe to get the Controlled Vocabulary (Mandatory)
esgvoc config set universe:branch=esgvoc_dev
esgvoc config add cordex-cmip6
esgvoc install
💡 Note: If you encounter a
[Errno 2] No such file or directoryerror related to a missing file likesfcwind.jsonafter runningesgvoc install, simply run the sameesgvoc installcommand again.
This issue is usually resolved on the second attempt as it may result from a temporary initialization glitch.
Verify the installation:
For cc-plugin-wcrp :
compliance-checker -l
Normally, you should have a list of all available plugins with the compliance checker, in addition to the wcrp_cmip6 and wcrp_cordex_cmip6 plugins
IOOS compliance checker available checker suites:
- acdd:1.1
- acdd:1.3
- cc6:0.4.0
- cf:1.10
- cf:1.11
- cf:1.6
- cf:1.7
- cf:1.8
- cf:1.9
- ioos:0.1
- ioos:1.1
- ioos:1.2
- ioos_sos:0.1
- mip:0.4.0
- wcrp_cmip6:1.0
- wcrp_cordex_cmip6:1.0
For esgvoc :
esgvoc --help
# or
pip show esgvoc