Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
27 changes: 22 additions & 5 deletions _docs/ioos-metadata-profile-v1-2.md
Original file line number Diff line number Diff line change
Expand Up @@ -254,12 +254,29 @@ Name | Convention | Description | Type | Role
:--------- | :-------: | :------------------- | :--------: | :-------:
cf_role | CF | Indicates the values of this variable contain identifiers for the CF DSG [featureType](http://cfconventions.org/Data/cf-conventions/cf-conventions-1.7/cf-conventions.html#_features_and_feature_types) features in the dataset (the 'instance' variable). Allowed values are defined in [Chapter 9.5](http://cfconventions.org/Data/cf-conventions/cf-conventions-1.7/cf-conventions.html#coordinates-metadata) CF guidelines and consist of: `timeseries_id`, `profile_id`, and `trajectory_id`, depending on the featureType represented in the dataset, as specified by the **`featureType`** global attribute. The dimension of this coordinate variable is referred to as the 'instance' dimension of a CF DSG file, or alternatively as the 'station', 'profile', or 'trajectory' dimension, respectively. <br> <br> **`cf_role`** may be applied to the 'Platform Variable', as indicated by **`geophysical_variable:platform`**, but it may also be an independent variable. To comply with the **single platform per dataset** rule of the IOOS Metadata Profile, the **`cf_role`** variable will typically have a dimension of 1, unless it is a TimeSeries dataset following the 'TimeSeries - multiple-station' format.<br><br>Example: {::nomarkdown}<ul><li><b><code>cf_role = "timeseries_id"</code></b></li></ul>{:/}| variable | **required**
geophysical_variable:platform | NCEI | **Variable** level attribute to be specified on each **`geophysical_variable`** (i.e. data variable) with the value indicating the name of a container variable containing platform metadata (i.e. the 'Platform Variable').<br><br>Because the IOOS Metadata Profile restricts datasets to a **single platform per dataset**, each dataset must only contain one platform container variable (usually named `station` or `platform`), and each data variable in the dataset must include a **`platform`** attribute with the name of this variable. The **`cf_role`** attribute may optionally be applied to this variable to assign it as the CF DSG 'instance' variable.<br><br> Example: {::nomarkdown}<ul> <li> <b><code>sea_water_temperature:platform = "station"</code></b></li><li><b><code>station:cf_role = "profile_id"</code></b></li><li><b><code>station:ncei_code = "3164"</code></b></li></ul>{:/} | variable | **required**
platform | ACDD | **Global** attribute specifying the name of the *type* of platform(s) that supported the sensor data used to create this data set or product. Platforms can be of any type, including satellite, ship, station, aircraft or other. The controlled vocabulary must be indicated in the **`platform_vocabulary`** field.<br><br>**`platform`** should be a single string with no blank spaces.<br><br>Example: {::nomarkdown}<ul> <li> <b><code>platform = "buoy";</code></b> <li><b><code>platform_vocabulary = "https://mmisw.org/ont/ioos/platform";</code></b> </ul>{:/}<br>The value of the **`platform`** global attribute is used in generating the [IOOS Asset Identifier](https://ioos.github.io/conventions-for-observing-asset-identifiers/ioos-assets-v1-0.html) for the dataset. Consult the [Rules for Asset Identifier Generation](#rules-for-ioos-asset-identifier-generation) section below this table for details on how this formula works. | global | **required**
platform_id | IOOS | An optional, short identifier for the platform, if the data provider prefers to define an id that differs from the dataset identifier, as specified by the **`id`** attribute.<br><br>**`platform_id`** should be a single alphanumeric string with no blank spaces.<br><br> When **`platform_id`** is defined for a dataset, it is used in place of the **`id`** field in generating the IOOS Asset Identifier (consult the [Rules for Asset Identifier Generation](#rules-for-ioos-asset-identifier-generation) section below).<br><br>Examples: {::nomarkdown}<ul> <li> <b><code>platform_id = "carquinez"</code></b> <li><b><code>platform_id = "cb0102"</code></b> </ul>{:/} | global | recommended
platform_name | IOOS | A descriptive, long name for the platform used in collecting the data. <br><br>The value of **`platform_name`** will be used to label the platform in downstream applications, such as IOOS' National Products (Environmental Sensor Map, EDS, etc) <br><br>Examples: {::nomarkdown}<ul> <li> <b><code>platform_name = "Morro Bay - BS1 MET"</code></b> <li><b><code>platform_name = "Chesapeake Bay Buoy 102"</code></b> </ul>{:/} | global | **required**
platform_vocabulary | ACDD | Controlled vocabulary for the names used in the **`platform`** attribute.<br><br> The recommended value for the **`platform_vocabulary`** attribute is a URL to either the [IOOS Platform Category vocabulary](https://mmisw.org/ont/ioos/platform), or [NERC SeaVoX Platform Categories vocabulary](https://vocab.nerc.ac.uk/collection/L06/current/). <br><br>Example:{::nomarkdown}<ul> <li> <b><code> platform_vocabulary = "https://mmisw.org/ont/ioos/platform"</code></b> </ul>{:/}<br>The IOOS Metadata Profile diverges from the NCEI Templates 2.0 in that the use of the "NASA GCMD Platform Keywords 8.1" as a **`platform_vocabulary`** is not allowed. The reason for this is that the **`platform`** global attribute is used in generating the [IOOS Asset Identifier 1.0](https://ioos.github.io/conventions-for-observing-asset-identifiers/ioos-assets-v1-0.html) for the dataset, and thus requires a single string platform name with no blank characters. GCMD Platform Keywords do not follow this pattern and therefore are disallowed. See the [Rules for Asset Identifier Generation](#rules-for-ioos-asset-identifier-generation) for more info. | global | **required**
wmo_platform_code | IOOS | The WMO identifier for the platform used to measure the data. This identifier can be any of the following types:<br>{::nomarkdown}<ul> <li>WMO ID for buoys (numeric, 5 digits)</li><li>WMO ID for gliders (numeric, 7 digits)</li><li>NWS ID (alphanumeric, 5 digits)</ul>{:/} When a dataset is assigned a **`wmo_platform_code`** it is thereby assigned a secondary Asset Identifier for the **'wmo' `naming_authority`**. See the [Rules for Asset Identifier Generation](#rules-for-ioos-asset-identifier-generation) for more information. <br><br>Example: {::nomarkdown}<ul> <li> <b><code>wmo_platform_code = "44011"</code></b> </ul>{:/} | global | **required**, if applicable
platform | ACDD | A single string (no spaces) giving the type of object (i.e., platform) from which data was recorded, and whose value has been taken from the controlled vocabulary identified in the global attribute `platform_vocabulary`. A platform can be identified as one of many different types, including `moored_buoy`, `aircraft`, `tide_station` (when using the [IOOS Platform Category vocabulary](https://mmisw.org/ont/ioos/platform)), `ship`, `cetacean`, or `fish` (when using the [NERC SeaVoX Platform Categories vocabulary](https://vocab.nerc.ac.uk/collection/L06/current/)). | **required**
platform_id | IOOS | A short identifier for the platform, represented by a single alphanumeric string with no blank spaces, to be used if the data provider prefers to define an id that differs from the dataset identifier (the **`id`** global attribute). | recommended
platform_name | IOOS | A descriptive, long name for the platform from which the data was collected. The value of **`platform_name`** will be used to label the platform in downstream applications, such as IOOS' National Products (Environmental Sensor Map, EDS, etc). | **required**
platform_vocabulary | ACDD | The controlled vocabulary from which the value in the `platform` global attribute was derived, ideally given as a URL, pointing to either the [IOOS Platform Category vocabulary](https://mmisw.org/ont/ioos/platform) or [NERC SeaVoX Platform Categories vocabulary](https://vocab.nerc.ac.uk/collection/L06/current/). <br><br>It is important to note that the IOOS Metadata Profile, in contrast to the the NCEI Templates 2.0, **does not** allow the use of the "NASA GCMD Platform Keywords 8.1" as a **`platform_vocabulary`**. The **`platform`** global attribute is used to generate the [IOOS Asset Identifier 1.0](https://ioos.github.io/conventions-for-observing-asset-identifiers/ioos-assets-v1-0.html) for the dataset, and thus requires a single string platform name with no blank characters. GCMD Platform Keywords do not follow this pattern. See the [Rules for Asset Identifier Generation](#rules-for-ioos-asset-identifier-generation) for more information. | **required**
wmo_platform_code | IOOS | The WMO identifier for the platform used to measure the data. This identifier can be any of the following types:<br>{::nomarkdown}<ul><li>WMO ID for buoys (numeric, 5 digits)</li><li>WMO ID for gliders (numeric, 7 digits)</li><li>NWS ID (alphanumeric, 5 digits)</li></ul>{:/} When a dataset is assigned a **`wmo_platform_code`** it is thereby assigned a secondary Asset Identifier for the **'wmo' `naming_authority`**. See the [Rules for Asset Identifier Generation](#rules-for-ioos-asset-identifier-generation) for more information. | **required**, if applicable

The following examples in [CDL](https://docs.unidata.ucar.edu/nug/2.0-draft/cdl.html) illustrate how this information may be stored in the netCDF file:


```
variables:
double air_temperature(time);
air_temperature:platform = "station";
String station;
station:cf_role = "timeseries_id";

// global attributes:
:platform = "station";
:platform_id = "BS1MET";
:platform_name = "Morro Bay - BS1 MET";
:platform_vocabulary = "http://mmisw.org/ont/ioos/platform";
:wmo_platform_code = "57163";
```


### Quality Control/QARTOD
Expand Down