diff --git a/src/03-modality-agnostic-files.md b/src/03-modality-agnostic-files.md index 7833f96b60..e3c88e98aa 100644 --- a/src/03-modality-agnostic-files.md +++ b/src/03-modality-agnostic-files.md @@ -28,9 +28,22 @@ Every dataset MUST include this file with the following fields: "EthicsApprovals": "OPTIONAL", "ReferencesAndLinks": "OPTIONAL", "DatasetDOI": "OPTIONAL", + "GeneratedBy": "RECOMMENDED", + "SourceDatasets": "RECOMMENDED", } ) }} +Each object in the `GeneratedBy` list includes the following REQUIRED, RECOMMENDED +and OPTIONAL keys: + +| **Key name** | **Requirement level** | **Data type** | **Description** | +|--------------|-----------------------|---------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| +| Name | REQUIRED | [string][] | Name of the pipeline or process that generated the outputs. Use `"Manual"` to indicate the derivatives were generated by hand, or adjusted manually after an initial run of an automated pipeline. | +| Version | RECOMMENDED | [string][] | Version of the pipeline. | +| Description | OPTIONAL | [string][] | Plain-text description of the pipeline or process that generated the outputs. RECOMMENDED if `Name` is `"Manual"`. | +| CodeURL | OPTIONAL | [string][] | URL where the code used to generate the dataset may be found. | +| Container | OPTIONAL | [object][] | Used to specify the location and relevant attributes of software container image used to produce the dataset. Valid keys in this object include `Type`, `Tag` and [`URI`][uri] with [string][] values. | + Example: ```JSON @@ -57,37 +70,45 @@ Example: "Alzheimer A., & Kraepelin, E. (2015). Neural correlates of presenile dementia in humans. Journal of Neuroscientific Data, 2, 234001. doi:1920.8/jndata.2015.7" ], "DatasetDOI": "doi:10.0.2.3/dfjj.10", - "HEDVersion": "7.1.1" + "HEDVersion": "7.1.1", + "GeneratedBy": [ + { + "Name": "reproin", + "Version": "0.6.0", + "Container": { + "Type": "docker", + "Tag": "repronim/reproin:0.6.0" + } + } + ], + "SourceDatasets": [ + { + "URL": "s3://dicoms/studies/correlates", + "Version": "April 11 2011" + } + ] } ``` -#### Derived dataset and pipeline description +#### Pipeline description As for any BIDS dataset, a `dataset_description.json` file MUST be found at the top level of every derived dataset: `/derivatives//dataset_description.json`. -In addition to the keys for raw BIDS datasets, -derived BIDS datasets include the following REQUIRED and RECOMMENDED -`dataset_description.json` keys: +In contrast to raw BIDS datasets, derived BIDS datasets MUST include +`GeneratedBy` key: {{ MACROS___make_metadata_table( { - "GeneratedBy": "REQUIRED", - "SourceDatasets": "RECOMMENDED", + "GeneratedBy": "REQUIRED" } ) }} -Each object in the `GeneratedBy` list includes the following REQUIRED, RECOMMENDED -and OPTIONAL keys: - -| **Key name** | **Requirement level** | **Data type** | **Description** | -|--------------|-----------------------|---------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| Name | REQUIRED | [string][] | Name of the pipeline or process that generated the outputs. Use `"Manual"` to indicate the derivatives were generated by hand, or adjusted manually after an initial run of an automated pipeline. | -| Version | RECOMMENDED | [string][] | Version of the pipeline. | -| Description | OPTIONAL | [string][] | Plain-text description of the pipeline or process that generated the outputs. RECOMMENDED if `Name` is `"Manual"`. | -| CodeURL | OPTIONAL | [string][] | URL where the code used to generate the derivatives may be found. | -| Container | OPTIONAL | [object][] | Used to specify the location and relevant attributes of software container image used to produce the derivative. Valid keys in this object include `Type`, `Tag` and [`URI`][uri] with [string][] values. | +If a derived dataset is stored as a subfolder of the raw dataset, then the `Name` field +of the first `GeneratedBy` object MUST be a substring of the derived dataset folder name. +That is, in a directory `/derivatives/[-]/`, the first +`GeneratedBy` object should have a `Name` of ``. Example: @@ -120,11 +141,6 @@ Example: } ``` -If a derived dataset is stored as a subfolder of the raw dataset, then the `Name` field -of the first `GeneratedBy` object MUST be a substring of the derived dataset folder name. -That is, in a directory `/derivatives/[-]/`, the first -`GeneratedBy` object should have a `Name` of ``. - ### `README` Every BIDS dataset SHOULD come with a free form text file (`README`) describing the dataset in more detail. diff --git a/src/schema/objects/metadata.yaml b/src/schema/objects/metadata.yaml index a8e572a878..1a7e44c271 100644 --- a/src/schema/objects/metadata.yaml +++ b/src/schema/objects/metadata.yaml @@ -866,7 +866,7 @@ Funding: GeneratedBy: name: GeneratedBy description: | - Used to specify provenance of the derived dataset. + Used to specify provenance of the dataset. See table below for contents of each object. type: array minItems: 1