Skip to content

EnVar microschema · class

Source Dataset

SourceDataset

The upstream gridded / station product the exposure values originate from. Carries identity, DOI, version, coverage, producer, citation, license, native format, and homogenisation status. One per record.

18 fields 2 core

URI: envar:class/SourceDataset

ReferencesAnyValue

Core Conditionally core Recommended Optional
Core Required for a valid record 2 fields
Source Dataset Namecorerequired

source_dataset_name · range String · cardinality 1

Weather and air-quality data come from named products made by different organisations, much like maps come from different map-makers. This is simply the full official name of the product the values were taken from.

Full name of the source product, e.g. "Daymet V4 Daily Surface Weather Data", "GridMET", "NARR", "ERA5-HEAT".

Example

Daymet V4 Daily Surface Weather Data

Covered by — 5 standards
omop_gaiaverifiedfull coverage
where gaia_db data_source.dataset_name; meta_dcat_*.json dct:title
GAIA carries the dataset name first-class in data_source and the DCAT title.
degaussassertedabsent coverage
DeGAUSS emits no dataset-name field; only the container name is baked into the CSV filename.
amadeusassertedabsent coverage
Amadeus carries no dataset name; it has to be inferred from the THREDDS URL path.
cherassertedfull coverage
where table_dictionary dataset (via table_name {dataset} slot)
C-HER names the dataset first-class as the {dataset} component of the reproducible table_name and as a foreign key on table_dictionary.
codataassertedout_of_layer coverage
where DDI-CDI dataset-level description (conceptual layer)
Dataset identity sits above the DDI-CDI InstanceVariable layer CODATA scores; conceptual, excluded from instance-layer scoring.
Why it matters & mappings

Without the product name, "daily maximum temperature" could come from any of a dozen products whose values disagree; the name is the first anchor for identifying which upstream data actually produced the exposure values.

Source Dataset Versioncorerequired

source_dataset_version · range String · cardinality 1

Datasets get updated and re-released like software, and the numbers can change between releases. The version says exactly which release the values came from.

Source product version. E.g. "V4 R1" for Daymet; "V5.GL.03" vs "V6.GL.02" for ACAG PM products. Version differences materially change values.

Examples

V4 R1Daymet V4 Release 1

V5.GL.04ACAG global PM2.5 product version

Covered by — 5 standards
omop_gaiaverifiedfull coverage
where gaia_db data_source.dataset_version
GAIA carries the upstream dataset version first-class in data_source.dataset_version.
degaussassertedpartial coverage
where CSV filename token (daymet_1.0.0)
DeGAUSS bakes only the container version into the filename, not the upstream dataset version.
amadeusassertedabsent coverage
Amadeus carries no dataset version.
cherassertedfull coverage
where table_dictionary version ({version} component of table_name)
C-HER carries an auto-generated version code first-class in the table_name and via the version table (§2.6).
codataassertedout_of_layer coverage
Product version is a discovery/lineage concern above the DDI-CDI InstanceVariable layer CODATA scores.
Why it matters & mappings

Version differences materially change values (e.g. ACAG V5 vs V6 PM2.5), so two studies "using Daymet" may in fact use different data; a value without a version is not reproducible.

Conditionally core Required in specific contexts 1 field
Homogenisation Statusconditionally core

source_homogenisation_status · range HomogenisationStatusEnum · cardinality 0..1

Weather stations get moved, replaced, or re-instrumented over the decades, which creates artificial jumps in their records. "Homogenised" data has had those jumps statistically corrected; "not homogenised" data is raw, as observed.

For station-based products, whether values have been homogenised. Mandatory for station-based products; GHCN-D = not_homogenised, GHCN-M v4 = homogenised.

Example

not_homogenisede.g. GHCN-Daily station observations

Allowed values

homogenised Values have been homogenised against breakpoints not_homogenised Values are as-observed, with no homogenisation applied partial Partial homogenisation has been applied
Why it matters & mappings

Using a non-homogenised station product (e.g. GHCN-Daily) for trend work without saying so is a known trap: station moves and instrument changes masquerade as climate signal. Mandatory for station-based products.

Recommended Strongly encouraged 9 fields
Optional Include when available 6 fields
Reason Source Dataset DOI Is Missingoptional

source_dataset_doi_missing_reason · range MissingReasonEnum · cardinality 0..1

If the DOI box is empty, this field says why — for example, the producer never issued one. That way an empty field is a deliberate statement, not an oversight.

Reason source_dataset_doi is null.

Example

not_provided_by_source

Allowed values

not_provided_by_source Source product does not produce this information available_but_not_extracted Source produces this information but the current pipeline does not surface it upstream_data_not_propagated An upstream tool emitted this information but the current pipeline dropped it... under_investigation We are working on populating this slot not_applicable This slot does not apply to this variable / record
Why it matters & mappings

Distinguishes "this product genuinely has no DOI" from "nobody filled the field in"; a blank is a bug, while a null-with-reason is information a completeness checker can act on.

Source Citation (BibTeX)optional

source_citation_bibtex · range String · cardinality 0..1

BibTeX is a structured text format that reference-manager software understands. It carries the same citation as the human-readable text, but in a form computers can read directly.

BibTeX entry for the source dataset, machine-parseable.

Example

@misc{daymet_v4_r1, title={Daymet: Daily Surface Weather Data on a 1-km Grid for North America, Version 4 R1}, author={Thornton, M.M. and others}, year={2022}, publisher={ORNL DAAC}, doi={10.3334/ORNLDAAC/2129}}

Why it matters & mappings

A machine-parseable citation lets reference managers and pipelines ingest the attribution automatically, avoiding transcription errors when the citation is copied by hand.

Reason BibTeX Citation Is Missingoptional

source_citation_bibtex_missing_reason · range MissingReasonEnum · cardinality 0..1

If the machine-readable citation is empty, this field says why, so the gap is a deliberate statement rather than an oversight.

Reason source_citation_bibtex is null.

Example

not_provided_by_source

Allowed values

not_provided_by_source Source product does not produce this information available_but_not_extracted Source produces this information but the current pipeline does not surface it upstream_data_not_propagated An upstream tool emitted this information but the current pipeline dropped it... under_investigation We are working on populating this slot not_applicable This slot does not apply to this variable / record
Why it matters & mappings

Records whether the BibTeX entry is absent because the producer never supplied one or because it was not extracted, so an empty field is auditable rather than ambiguous.

Reason Homogenisation Status Is Missingoptional

source_homogenisation_status_missing_reason · range MissingReasonEnum · cardinality 0..1

If the homogenisation field is empty, this field says why — most often because the data is a gridded product rather than raw station records, so the question does not apply.

Reason source_homogenisation_status is null.

Example

not_applicablee.g. gridded (non-station) products

Allowed values

not_provided_by_source Source product does not produce this information available_but_not_extracted Source produces this information but the current pipeline does not surface it upstream_data_not_propagated An upstream tool emitted this information but the current pipeline dropped it... under_investigation We are working on populating this slot not_applicable This slot does not apply to this variable / record
Why it matters & mappings

For gridded products homogenisation status is genuinely not applicable; recording that reason keeps the conditionally-core check auditable instead of leaving an ambiguous blank.

ACDD Global Attributesoptional

source_acdd_attributes · range AnyValue · cardinality 0..1

Many scientific data files carry a built-in "title page" of descriptive labels inside the file itself (following the ACDD convention). This field simply copies those labels across so nothing the producer wrote is lost.

Passthrough of ACDD (Attribute Convention for Data Discovery) global attributes from the source NetCDF header, as a native key/value object.

Example

None

Why it matters & mappings

Carrying the source's own ACDD header attributes forward preserves producer-supplied metadata verbatim, allowing later cross-checks against what this record claims without re-downloading the source.

Reason ACDD Attributes Are Missingoptional

source_acdd_attributes_missing_reason · range MissingReasonEnum · cardinality 0..1

If the copied-over file labels are absent, this field says why — often because the source is not distributed as a NetCDF file that carries such labels.

Reason source_acdd_attributes is null.

Example

not_provided_by_sourcee.g. source not distributed as NetCDF with ACDD headers

Allowed values

not_provided_by_source Source product does not produce this information available_but_not_extracted Source produces this information but the current pipeline does not surface it upstream_data_not_propagated An upstream tool emitted this information but the current pipeline dropped it... under_investigation We are working on populating this slot not_applicable This slot does not apply to this variable / record
Why it matters & mappings

Distinguishes sources that ship no ACDD headers (e.g. CSV station data) from headers that simply were not extracted, keeping the empty field auditable.

Full field reference — every slot, cardinality & inheritance
Field Name Tier Cardinality / Range Description
Source Dataset Name source_dataset_name core 1
String
Full name of the source product, e
Source Dataset Short Code source_dataset_short_code recommended 0..1
String
Short code keying into the EnVar source registry, e
Source Dataset DOI source_dataset_doi recommended 0..1
String
DOI of the source dataset
Reason Source Dataset DOI Is Missing source_dataset_doi_missing_reason optional 0..1
MissingReasonEnum
Reason source_dataset_doi is null
Source Dataset Version source_dataset_version core 1
String
Source product version
Source Dataset Temporal Coverage source_dataset_temporal_coverage recommended 0..1
String
Source product temporal coverage as an ISO 8601 interval string `/<end...
Source Dataset Spatial Extent source_dataset_spatial_extent recommended 0..1
String
Human-readable spatial extent of the product, e
Producer Institution source_producer_institution recommended 0..1
String
Producer institution, e
Source Citation (APA) source_citation_apa recommended 0..1
String
Full APA-style citation for the source dataset
Source Citation (BibTeX) source_citation_bibtex optional 0..1
String
BibTeX entry for the source dataset, machine-parseable
Reason BibTeX Citation Is Missing source_citation_bibtex_missing_reason optional 0..1
MissingReasonEnum
Reason source_citation_bibtex is null
Source License (SPDX) source_license_spdx recommended 0..1
String
SPDX identifier of the source license, e
Source Access URL source_access_url recommended 0..1
Uri
Landing-page URL for the dataset (not a download link, which rots)
Source Native Format source_native_format recommended 0..1
SourceNativeFormatEnum
Format the source ships in
Homogenisation Status source_homogenisation_status conditionally core 0..1
HomogenisationStatusEnum
For station-based products, whether values have been homogenised
Reason Homogenisation Status Is Missing source_homogenisation_status_missing_reason optional 0..1
MissingReasonEnum
Reason source_homogenisation_status is null
ACDD Global Attributes source_acdd_attributes optional 0..1
AnyValue
Passthrough of ACDD (Attribute Convention for Data Discovery) global attribut...
Reason ACDD Attributes Are Missing source_acdd_attributes_missing_reason optional 0..1
MissingReasonEnum
Reason source_acdd_attributes is null
Diagram & LinkML source
 classDiagram
    class SourceDataset
    click SourceDataset href "../../classes/SourceDataset/"
      SourceDataset : source_access_url

      SourceDataset : source_acdd_attributes





        SourceDataset --> "0..1" AnyValue : source_acdd_attributes
        click AnyValue href "../../classes/AnyValue/"



      SourceDataset : source_acdd_attributes_missing_reason





        SourceDataset --> "0..1" MissingReasonEnum : source_acdd_attributes_missing_reason
        click MissingReasonEnum href "../../enums/MissingReasonEnum/"



      SourceDataset : source_citation_apa

      SourceDataset : source_citation_bibtex

      SourceDataset : source_citation_bibtex_missing_reason





        SourceDataset --> "0..1" MissingReasonEnum : source_citation_bibtex_missing_reason
        click MissingReasonEnum href "../../enums/MissingReasonEnum/"



      SourceDataset : source_dataset_doi

      SourceDataset : source_dataset_doi_missing_reason





        SourceDataset --> "0..1" MissingReasonEnum : source_dataset_doi_missing_reason
        click MissingReasonEnum href "../../enums/MissingReasonEnum/"



      SourceDataset : source_dataset_name

      SourceDataset : source_dataset_short_code

      SourceDataset : source_dataset_spatial_extent

      SourceDataset : source_dataset_temporal_coverage

      SourceDataset : source_dataset_version

      SourceDataset : source_homogenisation_status





        SourceDataset --> "0..1" HomogenisationStatusEnum : source_homogenisation_status
        click HomogenisationStatusEnum href "../../enums/HomogenisationStatusEnum/"



      SourceDataset : source_homogenisation_status_missing_reason





        SourceDataset --> "0..1" MissingReasonEnum : source_homogenisation_status_missing_reason
        click MissingReasonEnum href "../../enums/MissingReasonEnum/"



      SourceDataset : source_license_spdx

      SourceDataset : source_native_format





        SourceDataset --> "0..1" SourceNativeFormatEnum : source_native_format
        click SourceNativeFormatEnum href "../../enums/SourceNativeFormatEnum/"



      SourceDataset : source_producer_institution

name: SourceDataset
annotations:
  domain_of_use:
    tag: domain_of_use
    value: environmental_exposure
description: The upstream gridded / station product the exposure values originate
  from. Carries identity, DOI, version, coverage, producer, citation, license, native
  format, and homogenisation status. One per record.
title: Source Dataset
from_schema: https://w3id.org/linkml/microschemas/envar
see_also:
- https://www.doi.org/
- https://spdx.org/licenses/
- https://wiki.esipfed.org/Attribute_Convention_for_Data_Discovery_1-3
rank: 1000
slot_usage:
  source_dataset_name:
    name: source_dataset_name
    required: true
  source_dataset_version:
    name: source_dataset_version
    required: true
attributes:
  source_dataset_name:
    name: source_dataset_name
    annotations:
      tier:
        tag: tier
        value: core
      justification:
        tag: justification
        value: Without the product name, "daily maximum temperature" could come from
          any of a dozen products whose values disagree; the name is the first anchor
          for identifying which upstream data actually produced the exposure values.
      explanation:
        tag: explanation
        value: Weather and air-quality data come from named products made by different
          organisations, much like maps come from different map-makers. This is simply
          the full official name of the product the values were taken from.
      covered_by:
        tag: covered_by
        annotations:
          omop_gaia:
            tag: omop_gaia
            annotations:
              extent:
                tag: extent
                value: full
              status:
                tag: status
                value: verified
              where:
                tag: where
                value: gaia_db data_source.dataset_name; meta_dcat_*.json dct:title
              evidence:
                tag: evidence
                value: EnVar/examples/heat/COMPARISON.md §I (Dataset name — ✅ OMOP/GAIA)
              note:
                tag: note
                value: GAIA carries the dataset name first-class in data_source and
                  the DCAT title.
          degauss:
            tag: degauss
            annotations:
              extent:
                tag: extent
                value: absent
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: DeGAUSS emits no dataset-name field; only the container name
                  is baked into the CSV filename.
          amadeus:
            tag: amadeus
            annotations:
              extent:
                tag: extent
                value: absent
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: Amadeus carries no dataset name; it has to be inferred from
                  the THREDDS URL path.
          cher:
            tag: cher
            annotations:
              extent:
                tag: extent
                value: full
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: table_dictionary dataset (via table_name {dataset} slot)
              note:
                tag: note
                value: C-HER names the dataset first-class as the {dataset} component
                  of the reproducible table_name and as a foreign key on table_dictionary.
          codata:
            tag: codata
            annotations:
              extent:
                tag: extent
                value: out_of_layer
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: DDI-CDI dataset-level description (conceptual layer)
              note:
                tag: note
                value: Dataset identity sits above the DDI-CDI InstanceVariable layer
                  CODATA scores; conceptual, excluded from instance-layer scoring.
    description: Full name of the source product, e.g. "Daymet V4 Daily Surface Weather
      Data", "GridMET", "NARR", "ERA5-HEAT".
    title: Source Dataset Name
    examples:
    - value: Daymet V4 Daily Surface Weather Data
    from_schema: https://w3id.org/linkml/microschemas/envar
    see_also:
    - https://daymet.ornl.gov/
    - https://www.ecmwf.int/en/forecasts/dataset/ecmwf-reanalysis-v5
    owner: SourceDataset
    domain_of:
    - SourceDataset
    range: string
    required: true
  source_dataset_short_code:
    name: source_dataset_short_code
    annotations:
      tier:
        tag: tier
        value: recommended
      justification:
        tag: justification
        value: A stable machine-readable key lets tools group and compare records
          from the same product without fuzzy-matching free-text names, which vary
          in spelling and capitalisation across studies.
      explanation:
        tag: explanation
        value: A short nickname for the dataset, like a username, that computers can
          match exactly — "Daymet V4 Daily Surface Weather Data" becomes just `daymet_v4`.
      covered_by:
        tag: covered_by
        annotations:
          omop_gaia:
            tag: omop_gaia
            annotations:
              extent:
                tag: extent
                value: partial
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: gaia_db data_source.dataset_name (no registry short code)
              note:
                tag: note
                value: GAIA carries the dataset name but no stable per-product short
                  registry code; scored partial.
          degauss:
            tag: degauss
            annotations:
              extent:
                tag: extent
                value: absent
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: DeGAUSS emits no dataset short code.
          amadeus:
            tag: amadeus
            annotations:
              extent:
                tag: extent
                value: absent
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: Amadeus emits no dataset short code.
          cher:
            tag: cher
            annotations:
              extent:
                tag: extent
                value: full
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: table_dictionary dataset ({dataset} component of table_name)
              note:
                tag: note
                value: The {dataset} slot in the reproducible table_name is exactly
                  a stable machine-readable short code keying the product.
          codata:
            tag: codata
            annotations:
              extent:
                tag: extent
                value: out_of_layer
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: A registry short code is a catalogue/discovery concern above
                  the DDI-CDI InstanceVariable layer CODATA scores.
    description: Short code keying into the EnVar source registry, e.g. `daymet_v4`,
      `gridmet`, `narr`, `era5_heat`.
    title: Source Dataset Short Code
    examples:
    - value: daymet_v4
    from_schema: https://w3id.org/linkml/microschemas/envar
    owner: SourceDataset
    domain_of:
    - SourceDataset
    range: string
  source_dataset_doi:
    name: source_dataset_doi
    annotations:
      tier:
        tag: tier
        value: recommended
      justification:
        tag: justification
        value: The DOI is the durable handle for the source; access URLs rot, but
          a DOI keeps resolving to the dataset, so future readers can always retrieve
          exactly what was used and producers get citable credit.
      explanation:
        tag: explanation
        value: A DOI is a permanent ID for a dataset or paper that keeps working even
          when websites move. Looking it up at doi.org always leads to the current
          home of the data.
      covered_by:
        tag: covered_by
        annotations:
          omop_gaia:
            tag: omop_gaia
            annotations:
              extent:
                tag: extent
                value: partial
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: meta_dcat_*.json dct:identifier
              note:
                tag: note
                value: GAIA carries a DOI in DCAT dct:identifier for daymet, but not
                  all entries carry one (gridmet has only a url), so scored conservatively
                  as partial.
          degauss:
            tag: degauss
            annotations:
              extent:
                tag: extent
                value: absent
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: DeGAUSS carries no DOI.
          amadeus:
            tag: amadeus
            annotations:
              extent:
                tag: extent
                value: absent
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: Amadeus carries no DOI.
          cher:
            tag: cher
            annotations:
              extent:
                tag: extent
                value: partial
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: table_dictionary doi (via doi_id FK)
              note:
                tag: note
                value: C-HER has a doi field (foreign key doi_id) but it is on the
                  optional-field list, so a DOI is not guaranteed present.
          codata:
            tag: codata
            annotations:
              extent:
                tag: extent
                value: out_of_layer
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: Source-dataset DOI is a discovery/citation concern above the
                  DDI-CDI InstanceVariable layer CODATA scores.
    description: DOI of the source dataset. Mandatory if a DOI exists. Daymet V4 =
      `10.3334/ORNLDAAC/2129`; ERA5 = `10.24381/cds.adbb2d47`.
    title: Source Dataset DOI
    examples:
    - value: 10.3334/ORNLDAAC/2129
      description: Daymet V4 R1 DOI
    from_schema: https://w3id.org/linkml/microschemas/envar
    see_also:
    - https://www.doi.org/
    - https://datacite.org/
    slot_uri: dcterms:identifier
    owner: SourceDataset
    domain_of:
    - SourceDataset
    range: string
  source_dataset_doi_missing_reason:
    name: source_dataset_doi_missing_reason
    annotations:
      tier:
        tag: tier
        value: optional
      justification:
        tag: justification
        value: Distinguishes "this product genuinely has no DOI" from "nobody filled
          the field in"; a blank is a bug, while a null-with-reason is information
          a completeness checker can act on.
      explanation:
        tag: explanation
        value: If the DOI box is empty, this field says why — for example, the producer
          never issued one. That way an empty field is a deliberate statement, not
          an oversight.
    description: Reason `source_dataset_doi` is null.
    title: Reason Source Dataset DOI Is Missing
    examples:
    - value: not_provided_by_source
    from_schema: https://w3id.org/linkml/microschemas/envar
    owner: SourceDataset
    domain_of:
    - SourceDataset
    range: MissingReasonEnum
  source_dataset_version:
    name: source_dataset_version
    annotations:
      tier:
        tag: tier
        value: core
      justification:
        tag: justification
        value: Version differences materially change values (e.g. ACAG V5 vs V6 PM2.5),
          so two studies "using Daymet" may in fact use different data; a value without
          a version is not reproducible.
      explanation:
        tag: explanation
        value: Datasets get updated and re-released like software, and the numbers
          can change between releases. The version says exactly which release the
          values came from.
      covered_by:
        tag: covered_by
        annotations:
          omop_gaia:
            tag: omop_gaia
            annotations:
              extent:
                tag: extent
                value: full
              status:
                tag: status
                value: verified
              where:
                tag: where
                value: gaia_db data_source.dataset_version
              evidence:
                tag: evidence
                value: EnVar/examples/heat/COMPARISON.md §I (Dataset version — ✅ OMOP/GAIA,
                  'V4 R1')
              note:
                tag: note
                value: GAIA carries the upstream dataset version first-class in data_source.dataset_version.
          degauss:
            tag: degauss
            annotations:
              extent:
                tag: extent
                value: partial
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: CSV filename token (daymet_1.0.0)
              note:
                tag: note
                value: DeGAUSS bakes only the container version into the filename,
                  not the upstream dataset version.
          amadeus:
            tag: amadeus
            annotations:
              extent:
                tag: extent
                value: absent
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: Amadeus carries no dataset version.
          cher:
            tag: cher
            annotations:
              extent:
                tag: extent
                value: full
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: table_dictionary version ({version} component of table_name)
              note:
                tag: note
                value: C-HER carries an auto-generated version code first-class in
                  the table_name and via the version table (§2.6).
          codata:
            tag: codata
            annotations:
              extent:
                tag: extent
                value: out_of_layer
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: Product version is a discovery/lineage concern above the DDI-CDI
                  InstanceVariable layer CODATA scores.
    description: Source product version. E.g. "V4 R1" for Daymet; "V5.GL.03" vs "V6.GL.02"
      for ACAG PM products. Version differences materially change values.
    title: Source Dataset Version
    examples:
    - value: V4 R1
      description: Daymet V4 Release 1
    - value: V5.GL.04
      description: ACAG global PM2.5 product version
    from_schema: https://w3id.org/linkml/microschemas/envar
    owner: SourceDataset
    domain_of:
    - SourceDataset
    range: string
    required: true
  source_dataset_temporal_coverage:
    name: source_dataset_temporal_coverage
    annotations:
      tier:
        tag: tier
        value: recommended
      justification:
        tag: justification
        value: Knowing the product's full time span distinguishes "date outside the
          product's coverage" from "value genuinely missing", preventing coverage
          gaps from being misread as data errors.
      explanation:
        tag: explanation
        value: Simply the first and last dates the dataset covers. If you ask for
          a day outside that window, there was never any data to find — which is different
          from data that should exist but is missing.
      covered_by:
        tag: covered_by
        annotations:
          omop_gaia:
            tag: omop_gaia
            annotations:
              extent:
                tag: extent
                value: full
              status:
                tag: status
                value: verified
              where:
                tag: where
                value: meta_dcat_*.json dct:temporal; gaia_db variable_source.start_date/end_date
              evidence:
                tag: evidence
                value: EnVar/examples/heat/COMPARISON.md §H (Dataset time-span — ✅
                  OMOP/GAIA)
              note:
                tag: note
                value: GAIA carries the product time span in DCAT dct:temporal and
                  the variable_source start/end dates.
          degauss:
            tag: degauss
            annotations:
              extent:
                tag: extent
                value: absent
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: DeGAUSS carries no dataset time-span.
          amadeus:
            tag: amadeus
            annotations:
              extent:
                tag: extent
                value: full
              status:
                tag: status
                value: verified
              where:
                tag: where
                value: thredds_dataset.xml TimeSpan
              evidence:
                tag: evidence
                value: EnVar/examples/heat/COMPARISON.md §H (Dataset time-span — ✅
                  Amadeus, TimeSpan 1979→present)
              note:
                tag: note
                value: Amadeus records the full dataset time span in the THREDDS dataset.xml
                  TimeSpan element.
          cher:
            tag: cher
            annotations:
              extent:
                tag: extent
                value: full
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: table_dictionary temporal_extent (YYYYMMDDYYYYMMDD in table_name)
              note:
                tag: note
                value: C-HER carries temporal extent as a start+end date pair in the
                  reproducible table_name (§2.4).
          codata:
            tag: codata
            annotations:
              extent:
                tag: extent
                value: out_of_layer
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: Product temporal coverage is a discovery-layer concern above
                  the DDI-CDI InstanceVariable layer CODATA scores.
    description: Source product temporal coverage as an ISO 8601 interval string `<start>/<end>`.
    title: Source Dataset Temporal Coverage
    examples:
    - value: 1980-01-01/2024-12-31
    from_schema: https://w3id.org/linkml/microschemas/envar
    see_also:
    - https://en.wikipedia.org/wiki/ISO_8601
    owner: SourceDataset
    domain_of:
    - SourceDataset
    range: string
  source_dataset_spatial_extent:
    name: source_dataset_spatial_extent
    annotations:
      tier:
        tag: tier
        value: recommended
      justification:
        tag: justification
        value: The product footprint distinguishes "location outside the product's
          extent" from "missing value"; without it, a subject in Alaska queried against
          a CONUS-only product looks like a data error rather than an out-of-coverage
          case.
      explanation:
        tag: explanation
        value: A plain-language note of which regions the dataset covers, for example
          the continental United States plus Hawaii and Puerto Rico. Places outside
          this area simply have no data.
      covered_by:
        tag: covered_by
        annotations:
          omop_gaia:
            tag: omop_gaia
            annotations:
              extent:
                tag: extent
                value: full
              status:
                tag: status
                value: verified
              where:
                tag: where
                value: meta_dcat_*.json spatialCoverage; gaia_db data_source.spatial_coverage;
                  meta_etl_*.json extent (POLYGON WKT)
              evidence:
                tag: evidence
                value: EnVar/examples/heat/COMPARISON.md §G (Source-dataset spatial
                  coverage — ✅ OMOP/GAIA)
              note:
                tag: note
                value: GAIA carries the source spatial coverage in DCAT, in data_source.spatial_coverage,
                  and as a POLYGON WKT extent.
          degauss:
            tag: degauss
            annotations:
              extent:
                tag: extent
                value: absent
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: DeGAUSS carries no source spatial coverage.
          amadeus:
            tag: amadeus
            annotations:
              extent:
                tag: extent
                value: full
              status:
                tag: status
                value: verified
              where:
                tag: where
                value: thredds_dataset.xml projectionBox + LatLonBox
              evidence:
                tag: evidence
                value: EnVar/examples/heat/COMPARISON.md §G (Source-dataset spatial
                  coverage — ✅ Amadeus, CONUS bbox)
              note:
                tag: note
                value: Amadeus records the source bbox via the THREDDS projectionBox
                  and LatLonBox elements.
          cher:
            tag: cher
            annotations:
              extent:
                tag: extent
                value: full
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: table_dictionary spatial_extent (Gxx/Txx/Cxx/sxx code in table_name)
              note:
                tag: note
                value: C-HER carries spatial extent first-class as a coded component
                  of the reproducible table_name (§2.2).
          codata:
            tag: codata
            annotations:
              extent:
                tag: extent
                value: out_of_layer
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: Product spatial extent is a discovery-layer concern above the
                  DDI-CDI InstanceVariable layer CODATA scores.
    description: Human-readable spatial extent of the product, e.g. "CONUS, Hawaii,
      Puerto Rico".
    title: Source Dataset Spatial Extent
    examples:
    - value: CONUS, Hawaii, Puerto Rico
    from_schema: https://w3id.org/linkml/microschemas/envar
    owner: SourceDataset
    domain_of:
    - SourceDataset
    range: string
  source_producer_institution:
    name: source_producer_institution
    annotations:
      tier:
        tag: tier
        value: recommended
      justification:
        tag: justification
        value: Identifies who is accountable for the product, supports correct attribution,
          and helps disambiguate similarly named products maintained by different
          institutions.
      explanation:
        tag: explanation
        value: The organisation that makes and publishes the dataset — for example
          a NASA data centre or a university group. Knowing who made the data tells
          you where to go with questions.
      covered_by:
        tag: covered_by
        annotations:
          omop_gaia:
            tag: omop_gaia
            annotations:
              extent:
                tag: extent
                value: full
              status:
                tag: status
                value: verified
              where:
                tag: where
                value: gaia_db data_source.creator/provider; meta_dcat_*.json dct:publisher
              evidence:
                tag: evidence
                value: EnVar/examples/heat/COMPARISON.md §I (Publisher/creator/provider
                  — ✅ OMOP/GAIA)
              note:
                tag: note
                value: GAIA carries publisher/creator/provider first-class in data_source
                  and DCAT dct:publisher.
          degauss:
            tag: degauss
            annotations:
              extent:
                tag: extent
                value: absent
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: DeGAUSS carries no producer/publisher field.
          amadeus:
            tag: amadeus
            annotations:
              extent:
                tag: extent
                value: absent
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: Amadeus carries no producer/publisher field.
          cher:
            tag: cher
            annotations:
              extent:
                tag: extent
                value: full
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: table_dictionary org ({org} component of table_name; publishing
                  organization)
              note:
                tag: note
                value: C-HER encodes the publishing organization first-class as the
                  {org} component of table_name; selecting a dataset implicitly selects
                  its organization (§1).
          codata:
            tag: codata
            annotations:
              extent:
                tag: extent
                value: out_of_layer
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: Producer institution is a discovery/attribution concern above
                  the DDI-CDI InstanceVariable layer CODATA scores.
    description: Producer institution, e.g. "NASA ORNL DAAC", "University of Idaho",
      "NOAA NCEP", "ECMWF Copernicus".
    title: Producer Institution
    examples:
    - value: NASA ORNL DAAC
    from_schema: https://w3id.org/linkml/microschemas/envar
    owner: SourceDataset
    domain_of:
    - SourceDataset
    range: string
  source_citation_apa:
    name: source_citation_apa
    annotations:
      tier:
        tag: tier
        value: recommended
      justification:
        tag: justification
        value: The producer's requested citation is what enables attribution and retrieval;
          omitting it makes it harder for readers to credit the producers and to locate
          the exact product in the literature.
      explanation:
        tag: explanation
        value: The ready-to-paste reference for the dataset, formatted the way academic
          papers list their sources, so anyone reusing the data knows exactly how
          to cite it.
      covered_by:
        tag: covered_by
        annotations:
          omop_gaia:
            tag: omop_gaia
            annotations:
              extent:
                tag: extent
                value: absent
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: GAIA carries publisher and DOI but no assembled APA citation
                  string; none is emitted.
          degauss:
            tag: degauss
            annotations:
              extent:
                tag: extent
                value: absent
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: DeGAUSS carries no citation.
          amadeus:
            tag: amadeus
            annotations:
              extent:
                tag: extent
                value: partial
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: acknowledgement string (acknowledgement = TRUE)
              note:
                tag: note
                value: Amadeus can attach a free-text acknowledgement string, which
                  is a citation-like credit but not a formatted APA reference (related-approaches.md
                  §3).
          cher:
            tag: cher
            annotations:
              extent:
                tag: extent
                value: absent
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: C-HER carries contributors, rights, and DOI but no assembled
                  APA citation string.
          codata:
            tag: codata
            annotations:
              extent:
                tag: extent
                value: out_of_layer
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: A formatted citation is a discovery/attribution concern above
                  the DDI-CDI InstanceVariable layer CODATA scores.
    description: Full APA-style citation for the source dataset.
    title: Source Citation (APA)
    examples:
    - value: 'Thornton, M.M., et al. (2022). Daymet: Daily Surface Weather Data on
        a 1-km Grid for North America, Version 4 R1. ORNL DAAC.'
      description: truncated form; the real citation lists all authors
    from_schema: https://w3id.org/linkml/microschemas/envar
    owner: SourceDataset
    domain_of:
    - SourceDataset
    range: string
  source_citation_bibtex:
    name: source_citation_bibtex
    annotations:
      tier:
        tag: tier
        value: optional
      justification:
        tag: justification
        value: A machine-parseable citation lets reference managers and pipelines
          ingest the attribution automatically, avoiding transcription errors when
          the citation is copied by hand.
      explanation:
        tag: explanation
        value: BibTeX is a structured text format that reference-manager software
          understands. It carries the same citation as the human-readable text, but
          in a form computers can read directly.
    description: BibTeX entry for the source dataset, machine-parseable.
    title: Source Citation (BibTeX)
    examples:
    - value: '@misc{daymet_v4_r1, title={Daymet: Daily Surface Weather Data on a 1-km
        Grid for North America, Version 4 R1}, author={Thornton, M.M. and others},
        year={2022}, publisher={ORNL DAAC}, doi={10.3334/ORNLDAAC/2129}}'
    from_schema: https://w3id.org/linkml/microschemas/envar
    owner: SourceDataset
    domain_of:
    - SourceDataset
    range: string
  source_citation_bibtex_missing_reason:
    name: source_citation_bibtex_missing_reason
    annotations:
      tier:
        tag: tier
        value: optional
      justification:
        tag: justification
        value: Records whether the BibTeX entry is absent because the producer never
          supplied one or because it was not extracted, so an empty field is auditable
          rather than ambiguous.
      explanation:
        tag: explanation
        value: If the machine-readable citation is empty, this field says why, so
          the gap is a deliberate statement rather than an oversight.
    description: Reason `source_citation_bibtex` is null.
    title: Reason BibTeX Citation Is Missing
    examples:
    - value: not_provided_by_source
    from_schema: https://w3id.org/linkml/microschemas/envar
    owner: SourceDataset
    domain_of:
    - SourceDataset
    range: MissingReasonEnum
  source_license_spdx:
    name: source_license_spdx
    annotations:
      tier:
        tag: tier
        value: recommended
      justification:
        tag: justification
        value: Without the license, downstream deposit and redistribution legality
          is unknowable — you cannot tell whether derived exposure values may be shared,
          deposited in a repository, or must stay private.
      explanation:
        tag: explanation
        value: SPDX codes are standard short names for licenses, like CC-BY-4.0, so
          software can check reuse rules automatically. The license says what you
          are allowed to do with the data.
      covered_by:
        tag: covered_by
        annotations:
          omop_gaia:
            tag: omop_gaia
            annotations:
              extent:
                tag: extent
                value: partial
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: gaia_db data_source.license; meta_dcat_*.json dct:license
              note:
                tag: note
                value: GAIA carries a license first-class but as a freeform string
                  with no SPDX normalisation, so it only partly satisfies this SPDX-specific
                  slot.
          degauss:
            tag: degauss
            annotations:
              extent:
                tag: extent
                value: absent
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: DeGAUSS carries no license field.
          amadeus:
            tag: amadeus
            annotations:
              extent:
                tag: extent
                value: absent
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: Amadeus carries no license field.
          cher:
            tag: cher
            annotations:
              extent:
                tag: extent
                value: partial
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: table_dictionary rights (via rights FK)
              note:
                tag: note
                value: C-HER carries a required rights field, but it is not SPDX-coded,
                  so it only partly satisfies this SPDX-specific slot.
          codata:
            tag: codata
            annotations:
              extent:
                tag: extent
                value: out_of_layer
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: License is a discovery/rights concern above the DDI-CDI InstanceVariable
                  layer CODATA scores.
    description: SPDX identifier of the source license, e.g. `CC0-1.0`, `CC-BY-4.0`.
      Use `public-domain-us-gov` for US federal data with no formal SPDX equivalent.
    title: Source License (SPDX)
    examples:
    - value: public-domain-us-gov
      description: US federal data (e.g. Daymet V4)
    - value: CC-BY-4.0
      description: e.g. ACAG PM2.5 V5.GL
    from_schema: https://w3id.org/linkml/microschemas/envar
    see_also:
    - https://spdx.org/licenses/
    owner: SourceDataset
    domain_of:
    - SourceDataset
    range: string
  source_access_url:
    name: source_access_url
    annotations:
      tier:
        tag: tier
        value: recommended
      justification:
        tag: justification
        value: A stable landing page is how future users actually reach the data;
          a raw download link rots when files are reorganised, leaving the record
          pointing nowhere.
      explanation:
        tag: explanation
        value: The dataset's home page on the web — the front door where you can read
          about the data and find the download options — rather than a direct file
          link that stops working when files move.
      covered_by:
        tag: covered_by
        annotations:
          omop_gaia:
            tag: omop_gaia
            annotations:
              extent:
                tag: extent
                value: full
              status:
                tag: status
                value: verified
              where:
                tag: where
                value: gaia_db data_source.url; meta_etl_*.json source; JSON-LD url
              evidence:
                tag: evidence
                value: EnVar/examples/heat/COMPARISON.md §I (Source landing-page URL
                  — ✅ OMOP/GAIA)
              note:
                tag: note
                value: GAIA carries the source landing-page URL first-class in data_source.url
                  and the JSON-LD url.
          degauss:
            tag: degauss
            annotations:
              extent:
                tag: extent
                value: absent
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: DeGAUSS carries no source landing-page URL.
          amadeus:
            tag: amadeus
            annotations:
              extent:
                tag: extent
                value: partial
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: thredds_dataset.xml @location (NCSS data endpoint)
              note:
                tag: note
                value: Amadeus carries only the THREDDS NCSS data-endpoint URL, not
                  the human landing page.
          cher:
            tag: cher
            annotations:
              extent:
                tag: extent
                value: absent
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: C-HER records an S3-protocol storage location for the resource,
                  not a source landing-page URL.
          codata:
            tag: codata
            annotations:
              extent:
                tag: extent
                value: out_of_layer
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: A source landing-page URL is a discovery concern above the
                  DDI-CDI InstanceVariable layer CODATA scores.
    description: Landing-page URL for the dataset (not a download link, which rots).
    title: Source Access URL
    examples:
    - value: https://daymet.ornl.gov/
    from_schema: https://w3id.org/linkml/microschemas/envar
    owner: SourceDataset
    domain_of:
    - SourceDataset
    range: uri
  source_native_format:
    name: source_native_format
    annotations:
      tier:
        tag: tier
        value: recommended
      justification:
        tag: justification
        value: The shipping format determines which tools can read the source and
          what metadata survives; knowing it lets others rebuild the same extraction
          pipeline and anticipate format-specific quirks.
      explanation:
        tag: explanation
        value: Scientific data comes packaged in different file types (NetCDF, GeoTIFF,
          CSV, and others), a bit like documents come as PDF or Word. This records
          which package the producer ships.
      covered_by:
        tag: covered_by
        annotations:
          omop_gaia:
            tag: omop_gaia
            annotations:
              extent:
                tag: extent
                value: partial
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: meta_etl_*.json structure/geometry (raster); gaia_db data_source.geom_type
              note:
                tag: note
                value: GAIA records dataset structure (raster) and geometry type but
                  not the native file format (e.g. NetCDF-4/CF) as a first-class slot.
          degauss:
            tag: degauss
            annotations:
              extent:
                tag: extent
                value: absent
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: DeGAUSS records no source native format.
          amadeus:
            tag: amadeus
            annotations:
              extent:
                tag: extent
                value: partial
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: gridmet_tmmx.cf_metadata.json (CF metadata implies NetCDF)
              note:
                tag: note
                value: Amadeus's CF metadata blob implies the NetCDF/CF native format
                  but does not declare it in a dedicated format field.
          cher:
            tag: cher
            annotations:
              extent:
                tag: extent
                value: full
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: table_dictionary resource_format (IANA Media Types controlled
                  vocab)
              note:
                tag: note
                value: C-HER carries resource_format first-class against the IANA
                  Media Types controlled vocabulary.
          codata:
            tag: codata
            annotations:
              extent:
                tag: extent
                value: out_of_layer
              status:
                tag: status
                value: asserted
              where:
                tag: where
                value: no column
              note:
                tag: note
                value: Native shipping format is a packaging/discovery concern above
                  the DDI-CDI InstanceVariable layer CODATA scores.
    description: Format the source ships in.
    title: Source Native Format
    examples:
    - value: netcdf4_cf
    from_schema: https://w3id.org/linkml/microschemas/envar
    owner: SourceDataset
    domain_of:
    - SourceDataset
    range: SourceNativeFormatEnum
  source_homogenisation_status:
    name: source_homogenisation_status
    annotations:
      tier:
        tag: tier
        value: conditionally_core
      tier_context:
        tag: tier_context
        value: not machine-decidable — the stated context is "station-based products",
          which cannot be read reliably off the sidecar (no slot declares station-ness).
          No rule and no checker predicate; the slot scores as Optional out of context
          by design.
      justification:
        tag: justification
        value: 'Using a non-homogenised station product (e.g. GHCN-Daily) for trend
          work without saying so is a known trap: station moves and instrument changes
          masquerade as climate signal. Mandatory for station-based products.'
      explanation:
        tag: explanation
        value: Weather stations get moved, replaced, or re-instrumented over the decades,
          which creates artificial jumps in their records. "Homogenised" data has
          had those jumps statistically corrected; "not homogenised" data is raw,
          as observed.
    description: For station-based products, whether values have been homogenised.
      Mandatory for station-based products; GHCN-D = `not_homogenised`, GHCN-M v4
      = `homogenised`.
    title: Homogenisation Status
    examples:
    - value: not_homogenised
      description: e.g. GHCN-Daily station observations
    from_schema: https://w3id.org/linkml/microschemas/envar
    see_also:
    - https://en.wikipedia.org/wiki/Homogenization_(climate)
    owner: SourceDataset
    domain_of:
    - SourceDataset
    range: HomogenisationStatusEnum
  source_homogenisation_status_missing_reason:
    name: source_homogenisation_status_missing_reason
    annotations:
      tier:
        tag: tier
        value: optional
      justification:
        tag: justification
        value: For gridded products homogenisation status is genuinely not applicable;
          recording that reason keeps the conditionally-core check auditable instead
          of leaving an ambiguous blank.
      explanation:
        tag: explanation
        value: If the homogenisation field is empty, this field says why — most often
          because the data is a gridded product rather than raw station records, so
          the question does not apply.
    description: Reason `source_homogenisation_status` is null.
    title: Reason Homogenisation Status Is Missing
    examples:
    - value: not_applicable
      description: e.g. gridded (non-station) products
    from_schema: https://w3id.org/linkml/microschemas/envar
    owner: SourceDataset
    domain_of:
    - SourceDataset
    range: MissingReasonEnum
  source_acdd_attributes:
    name: source_acdd_attributes
    annotations:
      tier:
        tag: tier
        value: optional
      justification:
        tag: justification
        value: Carrying the source's own ACDD header attributes forward preserves
          producer-supplied metadata verbatim, allowing later cross-checks against
          what this record claims without re-downloading the source.
      explanation:
        tag: explanation
        value: Many scientific data files carry a built-in "title page" of descriptive
          labels inside the file itself (following the ACDD convention). This field
          simply copies those labels across so nothing the producer wrote is lost.
    description: Passthrough of ACDD (Attribute Convention for Data Discovery) global
      attributes from the source NetCDF header, as a native key/value object.
    title: ACDD Global Attributes
    examples:
    - object:
        title: Daymet Daily Surface Weather Data
        institution: ORNL DAAC
        Conventions: CF-1.6, ACDD-1.3
    from_schema: https://w3id.org/linkml/microschemas/envar
    see_also:
    - https://wiki.esipfed.org/Attribute_Convention_for_Data_Discovery_1-3
    owner: SourceDataset
    domain_of:
    - SourceDataset
    range: AnyValue
    inlined: true
  source_acdd_attributes_missing_reason:
    name: source_acdd_attributes_missing_reason
    annotations:
      tier:
        tag: tier
        value: optional
      justification:
        tag: justification
        value: Distinguishes sources that ship no ACDD headers (e.g. CSV station data)
          from headers that simply were not extracted, keeping the empty field auditable.
      explanation:
        tag: explanation
        value: If the copied-over file labels are absent, this field says why — often
          because the source is not distributed as a NetCDF file that carries such
          labels.
    description: Reason `source_acdd_attributes` is null.
    title: Reason ACDD Attributes Are Missing
    examples:
    - value: not_provided_by_source
      description: e.g. source not distributed as NetCDF with ACDD headers
    from_schema: https://w3id.org/linkml/microschemas/envar
    owner: SourceDataset
    domain_of:
    - SourceDataset
    range: MissingReasonEnum

See Also

Identifier and Mapping Information

Annotations

property value
domain_of_use environmental_exposure

Schema Source

Mappings

Mapping Type Mapped Value
self envar:SourceDataset
native envar:SourceDataset