Metadata Profile Schema - Unidata/rosetta GitHub Wiki
Metadata Profile Item Specification
A metadata profile describes the kinds of metadata used by a given community. Each metadata profile contains a series of metadata items. While metadata attributes are most generally in the form of key:value pairs (e.g. title=Lake Thunderbird Micronet Turbulence Characteristics
), a metadataItem
describe the properties of each key
. For example, the metadata attribute title
is "recommended" to be used for those following the CF standard, it should have a data type of string, and it is described as "A succinct description of what is in the dataset."
In Rosetta, the interpretation of these profiles is limited to file level metadata, and are stored in the translated netCDF file output by Rosetta as either global metadata in netCDF-3, or root level metadata or group level metadata (metadata only groups) in netCDF-4. In the case of netCDF-4 output from Rosetta, metadata are stored in the root level by default (metadataGroup=root
). If the metadata profile specifies a metadataGroup
attribute for a metadata item, that metadata item will be stored in a metadata-only group with the name given by the value of the metadataGroup
attribute.
Metadata Item Attribute | Required by front-end | Default value | Description |
---|---|---|---|
metadataProfileName |
Required | n/a | Human friendly name of the metadata profile |
metadataProfileVersion |
Required | n/a | Version of the metadata profile being documented |
attributeName |
Required | n/a | Name of the metadata attribute |
displayName |
Optional | attributeName value * |
Human friendly name use in the front end |
description |
Optional | empty string | Used for wizard display help tool tips |
exampleValues |
Optional | empty string | Used for wizard display example tool tips |
metadataGroup |
Optional | root |
translates into the (metadata) Group name within the produced netCDF-4 file |
metadataType |
Optional | Global |
Type of metadata. ** |
metadataTypeStructureName |
Optional | Global Attribute |
Structure with which the metadata attribute is associated *** |
metadataValueType |
Optional | STRING |
Data type of the metadata attribute value. **** |
complianceLevel |
Optional | additional |
Compliance level of the metadata item (required , recommended , additional ) |
In all cases, the value associated with each metadata item attribute in the table above is interpreted to be of type string
.
The name of each Metadata Item Attribute
must be camelCase
(as shown).
Metadata profiles to be supported in Rosetta
- ACDD
- CF
- NCEI
- eTUFF
* if the default value is used (attributeName
), underscores will be replaced with white-space when displayed in the front-end wizard interface.
** if defined, metadataType
must be one of the following (default: Global
):
Global
CoordinateVariable
DataVariable
MaskVariable
CountVariable
IndexVariable
MetadataGroup
Note that the Rosetta wizard only uses Global
, MetadataGroup
, CoordinateVariable
and DataVariable
at this time.
MetadataGroup
is treated as Global
by the wizard.
Differentiation between CoordinateVariable
and DataVaraible
is done in the variable level metadata collection interface of the wizard (Is this a coordinate variable? question), and will be one or the other.
*** metadataTypeStructureName
examples (default: Global Attribute
):
Global Attributes
lat
lon
depth
time
CRS
bounds
data
mask
count
index
<metadataGroupName> Subgroup
Note that the Rosetta wizard only uses lat
, lon
, depth
, and time
at this time, and only for distinguishing between the different types of metadataType = CoordinateVariable
.
**** if defined, metadataValueType
must be one of the following (default: STRING
):
BOOLEAN
BYTE
CHAR
DOUBLE
FLOAT
INT
LONG
SHORT
STRING
UBYTE
UINT
ULONG
USHORT
SAME
These values are used by Rosetta during the conversion process, and are treated as case-insensitive. Note that SAME
, or any string value starting with the word SAME
, indicates that metadataValueType
will have the same data type as the variable for which it is associated with. SAME
cannot be used with metadataType=Global
.