Difference between revisions of "Attribute Convention for Data Discovery 1-2 Working"

From Earth Science Information Partners (ESIP)
Line 1: Line 1:
 
[[Category: Attribute Conventions Dataset Discovery]]
 
[[Category: Attribute Conventions Dataset Discovery]]
= Version 2.0 beta =
+
== Version and Status ==
This is the working version known as Version 2.0 beta.
+
 
 +
This version is designated as Version 2.0 beta.
 +
 
 +
This page is under development with updated definitions.
  
 
= Introduction =
 
= Introduction =

Revision as of 16:08, July 10, 2013

Version and Status

This version is designated as Version 2.0 beta.

This page is under development with updated definitions.

Introduction

This page consolidates ongoing work seeking to improve the definitions in the Attribute Convention for Data Discovery (ACDD).

The first 3 sections represent the terms in the corresponding sections of the ACDD.

Modifications relative to the original text may be seen with the history mechanism of this wiki. The original definitions are marked with the Summary keyword Original Definitions.

Process

The edits will be made in this page by anyone in the community who wishes to contribute, and discussed in greater depth in the Discussion page, if necessary. (The discussion page can also be used as an archive of changes on this page, if desired.)

Once there is some consensus about one or a group of definitions, they can be migrated to the primary document and the version number of that document incremented.

Working Definitions

Highly Recommended

title
A short phrase or sentence describing the dataset.
summary
A paragraph describing the dataset, analogous to an abstract for a paper.
keywords
A comma-separated list of key words and/or phrases. Keywords may be common words or phrases, terms from a controlled vocabulary, or URIs for terms from a controlled vocabulary (see keyword_vocabulary below).

Recommended

id
An identifier for the data set, provided by and unique within its naming authority. The combination of the "naming authority" and the "id" should be globally unique, but the id can be globally unique by itself also. IDs can be URLs, URNs, DOIs, meaningful text strings, a local key, or any other unique string of characters. The id should not include blanks.
naming_authority
The organization that provides the initial id (see above) for the dataset. The naming authority should be uniquely specified by this attribute.
keywords_vocabulary
If you are using a controlled vocabulary for the words/phrases in your "keywords" attribute, the unique name or identifier of the vocabulary from which keywords are taken. If more than one keyword vocabulary is used, each may be presented with a prefix (e.g., "CF:NetCDF COARDS Climate and Forecast Standard Names") and a following comma, so that keywords may optionally be prefixed with the controlled vocabulary key.
cdm_data_type
The organization of the data, as understood by THREDDS (a [1]THREDDS "dataType"]). One of Grid, Image, Station, Swath, and Trajectory. For points, profiles, and time series (described in this NODC guidance, use Station; for Trajectory Time Series, use Trajectory.
history
Describes the processes/transformations used to create this data. A simple description includes one line per process, listing the sources for each process; a more complete description can be provided using the ISO Lineage model, expressed per ISO 19139.
comment
Miscellaneous information about the data, not captured elsewhere.
date_modified
The date on which this dataset (as seen by users or captured in a file) was last changed.
creator_person
The name of the person principally responsible for originating this data.
creator_person_info
Additional information for the person principally responsible for the data in the file; can include any information as vcard, ISO 19139, or free text (vcard or ISO 19139 is recommended).
creator_institution
The institution that produced the data; should uniquely identify the institution.
creator_institution_info
Additional information for the institution that produced the data; can include any information as ISO 19139 or free text.
creator_project
The scientific project that produced the data; should uniquely identify the project.
creator_project_info
Additional information for the institution that produced the data; can include any information as ISO 19139 or free text.
publisher_institution
The institution that published the data; should uniquely identify the institution.
publisher_institution_info
Additional information for the institution that published the data; can include any information as ISO 19139 or free text.
publisher_project
The scientific project that published the data; should uniquely identify the project.
publisher_project_info
Additional information for the institution that published the data; can include any information as ISO 19139 or free text.
processing_level
A textual description of the processing (or quality control) level of the data.
acknowledgement
A place to acknowledge various type of support for the project that produced this data.
geospatial_bounds
Describes geospatial extent using any of the geometric objects (2D or 3D) supported by the Well-Known Text (WKT) format.
geospatial_lat_min
Describes a simple lower latitude limit; may be part of a bounding box or cube. Geospatial_lat_min specifies the southernmost latitude covered by the dataset.
geospatial_lat_max
Describes a simple upper latitude limit; may be part of a bounding box or cube. Geospatial_lat_max specifies the northernmost latitude covered by the dataset.
geospatial_lon_min
Describes a simple longitude limit; may be part of a bounding box or cube. Geospatial_lon_min specifies the westernmost longitude covered by the dataset. Cases where geospatial_lon_min is greater than geospatial_lon_max indicate the bounding box extends from geospatial_lon_max, through the longitude range discontinuity meridian (either the antimeridian for -180:180 values, or Prime Meridian for 0:360 values), to geospatial_lon_min.
geospatial_lon_max
Describes a simple longitude limit; may be part of a bounding box or cube. Geospatial_lon_max specifies the easternmost longitude covered by the dataset. Cases where geospatial_lon_min is greater than geospatial_lon_max indicate the bounding box extends from geospatial_lon_max, through the longitude range discontinuity meridian (either the antimeridian for -180:180 values, or Prime Meridian for 0:360 values), to geospatial_lon_min.
geospatial_vertical_min
Describes a numerically smaller vertical limit; may be part of a bounding box or cube. If geospatial_vertical_positive is up ('altitude' orientation), the geospatial_vertical_min attribute specifies the location closest to the earth's center covered by the dataset. If geospatial_vertical_positive is down ('depth' orientation), the geospatial_vertical_min attribute specifies the location furthest from the earth's center covered by the dataset.
geospatial_vertical_max
Describes a numerically larger vertical limit; may be part of a bounding box or cube. If geospatial_vertical_positive is up ('altitude' orientation), the geospatial_vertical_min attribute specifies the location furthest from the earth's center covered by the dataset. If geospatial_vertical_positive is down ('depth' orientation), the geospatial_vertical_min attribute specifies the location closest to the earth's center covered by the dataset.
geospatial_vertical_positive
One of 'up' or 'down'. If up, vertical values are interpreted as 'altitude', with negative values corresponding to below the reference datum (e.g., under water). If down, vertical values are interpreted as 'depth, positive values correspond to below the reference datum.
time_coverage_start
Describes the time of the first data point in the data set. ISO8601 format recommended.
time_coverage_end
Describes the time of the last data point in the data set. ISO8601 format recommended.
time_coverage_duration
Describes the duration of the data set. ISO8601 duration format recommended.
time_coverage_resolution
Describes the time period between each value in the data set.
standard_name_vocabulary
The unique name or identifier of the controlled vocabulary from which variable standard names are taken. If more than one controlled vocabulary is used, each may be presented with a prefix (e.g., "CF:NetCDF COARDS Climate and Forecast Standard Names") and a following comma, so that standard names may optionally be prefixed with the controlled vocabulary key.
license
Provide the URL to a standard or specific license, describe any restrictions to data access and distribution, or enter "Freely Distributed" or "None".

Suggested

contributor_info
The name and role of any individuals or institutions that contributed to the creation of this data. May be presented as free text, or in a format compatible with ISO 19139.
date_created
The first date on which this dataset was published (this value never changes after first set of data is released the first time).
geospatial_lat_units
Units for the latitude axis. These are presumed to be "degree_north"; other options from udunits may be specified instead.
geospatial_lat_resolution
Information about the resolution of the latitude. (Format is not prescribed.)
geospatial_lon_units
Units for the longitude axis. These are presumed to be "degree_east"; other options from udunits may be specified instead.
geospatial_lon_resolution
Information about the resolution of the longitude. (Format is not prescribed.)
geospatial_vertical_units
Units for the vertical axis. These are presumed to be "meter" (of depth); other options from udunits may be specified. Note that the common oceanographic practice of using pressure for a vertical coordinate, while not strictly a depth, can be specified using the unit bar.
geospatial_vertical_resolution
Further refinement of the geospatial bounding box can be provided by using these units and resolution attributes.


John Got This Far (So He's Done!)



Original Tables (Reference)

Highly Recommended

Attribute Description THREDDS ISO 19115-2 OGC CSW Rubric Category
title
A short description of the dataset.
dataset@name
/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:title/gco:CharacterString (M)
Title Text Search
summary
A paragraph describing the dataset.
metadata/documentation[@type="summary"]
/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:abstract/gco:CharacterString (M)
Abstract Text Search
keywords
A comma separated list of key words and phrases.
metadata/keyword
/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:descriptiveKeywords/gmd:MD_Keywords/gmd:keyword/gco:CharacterString
Subject Text Search

Recommended

Attribute Description THREDDS ISO 19115-2 OGC CSW Rubric Category
id
The

combination of the "naming authority" and the "id" should be a globally unique identifier for the dataset.

dataset@id
/gmi:MI_Metadata/gmd:fileIdentifier/gco:CharacterString (O)
Identifier Identifier
naming_authority
keywords_vocabulary
If you are following a guideline for the words/phrases in your "keywords" attribute, put the name of that guideline here.
metadata/keyword@vocabulary /gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:descriptiveKeywords/gmd:MD_Keywords/gmd:thesaurusName/gmd:CI_Citation/gmd:title/gco:CharacterString
Text Search
cdm_data_type
The THREDDS data type appropriate for this dataset. metadata/dataType /gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:spatialRepresentationType/gmd:MD_SpatialRepresentationTypeCode
May need some extensions to this codelist. Current values: vector, grid, textTable, tin, stereoModel, video.
Other
history
Provides an audit trail for modifications to the original data. metadata/documentation[@type="history"] /gmi:MI_Metadata/gmd:dataQualityInfo/gmd:DQ_DataQuality/gmd:lineage/gmd:LI_Lineage/gmd:statement/gco:CharacterString (O) Text Search
comment
Miscellaneous information about the data. metadata/documentation
/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:supplementalInformation
Text Search
date_created The date on which the data was created.
metadata/date[@type="created"] /gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date/gco:Date (M)
/gmd:dateType/gmd:CI_DateTypeCode="creation"
Responsible Party
creator_name
The data creator's name, URL, and email. The "institution" attribute will be used if the "creator_name" attribute does not exist.
metadata/creator/name
/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:citedResponsibleParty/gmd:CI_ResponsibleParty/gmd:individualName/gco:CharacterString
CI_RoleCode="originator" (O)
Responsible Party
creator_url
metadata/creator/contact@url
/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:citedResponsibleParty/gmd:CI_ResponsibleParty/gmd:contactInfo/gmd:CI_Contact/gmd:onlineResource/gmd:CI_OnlineResource/gmd:linkage/gmd:URL
Responsible Party
creator_email
metadata/creator/contact@email /gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:citedResponsibleParty/gmd:CI_ResponsibleParty/gmd:contactInfo/gmd:CI_Contact/gmd:address/gmd:CI_Address/gmd:electronicMailAddress/gco:CharacterString Responsible Party
institution
metadata/creator/name /gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:citedResponsibleParty/gmd:CI_ResponsibleParty/gmd:organisationName/gco:CharacterString Responsible Party
project
The scientific project that produced the data.
metadata/project
/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:descriptiveKeywords/gmd:MD_Keywords/gmd:keyword/gco:CharacterString
and/or
/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:aggregationInfo/gmd:MD_AggregateInformation/gmd:aggregateDataSetName/gmd:CI_Citation/gmd:title/gco:CharacterString
DS_AssociationTypeCode="largerWorkCitation" and DS_InitiativeTypeCode="project"
and/or

/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:descriptiveKeywords/gmd:MD_Keywords/gmd:keyword/gco:CharacterString with gmd:MD_KeywordTypeCode="project"

Responsible Party
processing_level A textual description of the processing (or quality control) level of the data.
metadata/documentation[@type="processing_level"]
acknowledgementA place to acknowledge various type of support for the project that produced this data.
metadata/documentation[@type="funding"] /gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:credit/gco:CharacterString Responsible Party
geospatial_bounds Describes geospatial extent using any of the geometric objects (2D or 3D) supported by the Well-Known Text (WKT) format. BoundingPolygon Extent
geospatial_lat_min
Describes a simple latitude/longitude bounding box. geospatial_lat_min specifies the southernmost latitude; geospatial_lat_max specifies the northernmost latitude; geospatial_lon_min specifies the westernmost longitude; geospatial_lon_max specifies the easternmost longitude of the bounding box.
The values of geospatial_lon_min and geospatial_lon_max reflect the actual longitude data values. Cases where geospatial_lon_min is greater than geospatial_lon_max indicate the bounding box extends from geospatial_lon_max, through the longitude range discontinuity meridian (either the antimeridian or Prime Meridian), to geospatial_lon_min.
For a more detailed geospatial coverage, see the suggested geospatial attributes.
metadata/geospatialCoverage/northsouth/start
/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:geographicElement/gmd:EX_GeographicBoundingBox/gmd:southBoundLatitude/gco:Decimal
BoundingBox Extent
geospatial_lat_max metadata/geospatialCoverage/northsouth/size /gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:geographicElement/gmd:EX_GeographicBoundingBox/gmd:northBoundLatitude/gco:Decimal
BoundingBox Extent
geospatial_lon_min metadata/geospatialCoverage/eastwest/start /gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:geographicElement/gmd:EX_GeographicBoundingBox/gmd:westBoundLongitude/gco:Decimal
BoundingBox Extent
geospatial_lon_max metadata/geospatialCoverage/eastwest/size /gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:geographicElement/gmd:EX_GeographicBoundingBox/gmd:eastBoundLongitude/gco:Decimal
BoundingBox Extent
geospatial_vertical_min
Describes a simple vertical bounding box. For a more detailed geospatial coverage, see the suggested geospatial attributes. metadata/geospatialCoverage/updown/start /gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:verticalElement/gmd:EX_VerticalExtent/gmd:minimumValue/gco:Real Extent
geospatial_vertical_max metadata/geospatialCoverage/updown/size /gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:verticalElement/gmd:EX_VerticalExtent/gmd:maximumValue/gco:Real Extent
time_coverage_start Describes the temporal coverage of the data as a time range. metadata/timeCoverage/start /gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:temporalElement/gmd:EX_TemporalExtent/gmd:extent/gml:TimePeriod/gml:beginPosition Extent
time_coverage_end metadata/timeCoverage/end /gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:temporalElement/gmd:EX_TemporalExtent/gmd:extent/gml:TimePeriod/gml:endPosition Extent
time_coverage_duration metadata/timeCoverage/duration /gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:temporalElement/gmd:EX_TemporalExtent/gmd:extent/gml:TimePeriod/gml:beginPosition provides an ISO8601 compliant description of the time period covered by the dataset. This standard supports descriptions of durations. Extent
time_coverage_resolution metadata/timeCoverage/resolution Extent
standard_name_vocabulary
The name of the controlled vocabulary from which variable standard names are taken.
metadata/variables@vocabulary /gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:descriptiveKeywords/gmd:MD_Keywords/gmd:thesaurusName/gmd:CI_Citation/gmd:title/gco:CharacterString
Text Search
license Describe the restrictions to data access and distribution. metadata/documentation[@type="rights"] /gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:resourceConstraints/gmd:MD_LegalConstraints/gmd:useLimitation/gco:CharacterString

Suggested

Attribute Description THREDDS ISO 19115-2 OGC CSW Rubric Category
contributor_name
The name and role of any individuals or institutions that contributed to the creation of this data.
metadata/contributor
/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:citedResponsibleParty/gmd:CI_ResponsibleParty/gmd:individualName/gco:CharacterString
Responsible Party
contributor_role
metadata/contributor@role /gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:citedResponsibleParty/gmd:CI_ResponsibleParty/gmd:role/gmd:CI_RoleCode
="principalInvestigator" | "author"
Responsible Party
publisher_name
The data publisher's name, URL, and email. The publisher may be an individual or an institution. metadata/publisher/name
/gmi:MI_Metadata/gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/gmd:MD_Distributor/gmd:distributorContact/gmd:CI_ResponsibleParty/gmd:organisationName/gco:CharacterString
and/or
/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:citedResponsibleParty/gmd:CI_ResponsibleParty/gmd:individualName/gco:CharacterString
CI_RoleCode="publisher"
and/or
/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:descriptiveKeywords/gmd:MD_Keywords/gmd:keyword/gco:CharacterString with gmd:MD_KeywordTypeCode="dataCenter"
Responsible Party
publisher_url
metadata/publisher/contact@url
/gmi:MI_Metadata/gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/gmd:MD_Distributor/gmd:distributorContact/gmd:CI_ResponsibleParty/gmd:contactInfo/gmd:CI_Contact/gmd:onlineResource/gmd:CI_OnlineResource/gmd:linkage/gmd:URL
and/or
/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:citedResponsibleParty/gmd:CI_ResponsibleParty/gmd:contactInfo/gmd:CI_Contact/gmd:onlineResource/gmd:CI_OnlineResource/gmd:linkage/gmd:URL
CI_RoleCode="publisher"
Responsible Party
publisher_email
metadata/publisher/contact@email /gmi:MI_Metadata/gmd:distributionInfo/gmd:MD_Distribution/gmd:distributor/gmd:MD_Distributor/gmd:distributorContact/gmd:CI_ResponsibleParty/gmd:contactInfo/gmd:CI_Contact/gmd:address/gmd:CI_Address/gmd:electronicMailAddress/gco:CharacterString
and/or
/gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:citedResponsibleParty/gmd:CI_ResponsibleParty/gmd:contactInfo/gmd:CI_Contact/gmd:address/gmd:CI_Address/gmd:electronicMailAddress/gco:CharacterString
CI_RoleCode="publisher"
Responsible Party
date_modified
The date on which this data was last modified.
metadata/date[@type="modified"] /gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date/gco:Date
/gmd:dateType/gmd:CI_DateTypeCode="revision"
ModifiedResponsible Party
date_issued
The date on which this data was formally issued.
metadata/date[@type="issued"] /gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:citation/gmd:CI_Citation/gmd:date/gmd:CI_Date/gmd:date/gco:Date
/gmd:dateType/gmd:CI_DateTypeCode="publication"
Responsible Party
geospatial_lat_units
Further refinement of the geospatial bounding box can be provided by using these units and resolution attributes.
metadata/geospatialCoverage/northsouth/units /gmi:MI_Metadata/gmd:spatialRepresentationInfo/gmd:MD_Georectified/gmd:axisDimensionProperties/gmd:MD_Dimension/gmd:resolution/gco:Measure/@uom Extent
geospatial_lat_resolution metadata/geospatialCoverage/northsouth/resolution /gmi:MI_Metadata/gmd:spatialRepresentationInfo/gmd:MD_Georectified/gmd:axisDimensionProperties/gmd:MD_Dimension/gmd:resolution/gco:Measure Extent
geospatial_lon_units
metadata/geospatialCoverage/eastwest/units /gmi:MI_Metadata/gmd:spatialRepresentationInfo/gmd:MD_Georectified/gmd:axisDimensionProperties/gmd:MD_Dimension/gmd:resolution/gco:Measure/@uom Extent
geospatial_lon_resolution metadata/geospatialCoverage/eastwest/resolution /gmi:MI_Metadata/gmd:spatialRepresentationInfo/gmd:MD_Georectified/gmd:axisDimensionProperties/gmd:MD_Dimension/gmd:resolution/gco:Measure Extent
geospatial_vertical_units
metadata/geospatialCoverage/updown/units /gmi:MI_Metadata/gmd:identificationInfo/gmd:MD_DataIdentification/gmd:extent/gmd:EX_Extent/gmd:verticalElement/gmd:EX_VerticalExtent/gmd:verticalCRS Extent
geospatial_vertical_resolution
metadata/geospatialCoverage/updown/resolution
Extent
geospatial_vertical_positive
metadata/geospatialCoverage@zpositive
Extent

Highly Recommended Variable Attributes

Attribute Description THREDDS ISO 19115-2
long_name A long descriptive name for the variable (not necessarily from a controlled vocabulary). metadata/variables/variable@vocabulary_name At present the ISO 19115-2 Standard supports only one name for a variable. Standard names can be provided as keywords with the appropriate thesaurus.
standard_name
A long descriptive name for the variable taken from a controlled vocabulary of variable names. metadata/variables/variable@vocabulary_name
units The units of the variables data values. This attributes value should be a valid udunits string. metadata/variables/variable@units /gmi:MI_Metadata/gmd:contentInfo/gmi:MI_CoverageDescription/gmd:dimension/gmd:MD_Band/gmd:units
coverage_content_type An ISO 19115-1 code to indicate the source of the data. The valid values in the MD_CoverageContentTypeCode list are image, thematicClassification, physicalMeasurement, auxiliaryInformation, qualityInformation, referenceInformation, modelResult, coordinate




Object Conventions for Data Discovery

The ability to group data and metadata into objects has become an important organizational tool as the complexity of even "simple" datasets increases. Groups have been included in HDF for many years and in netCDF as part of the extended model for nearly as long. In addition to organizing data, these groups can be used to naturally organize metadata elements into commonly used objects.

This grouping capability could be very helpful for organizing the attributes defined in this convention into re-useable objects. For example, there are currently at least twelve discovery attributes that, while currently independent, could be combined into a re-usable citation object:

<attribute name="id" value="netcdf/attribute/@name=id"/>
<attribute name="title" value="netcdf/attribute/@name=title"/>
<attribute name="creator_email" value="netcdf/attribute/@name=creator_email"/>
<attribute name="creator_name" value="netcdf/attribute/@name=creator_name"/>
<attribute name="creator_url" value="netcdf/attribute/@name=creator_url"/>
<attribute name="institution" value="netcdf/attribute/@name=institution"/>
<attribute name="publisher_name" value="netcdf/attribute/@name=publisher_name"/>
<attribute name="publisher_url" value="netcdf/attribute/@name=publisher_url"/>
<attribute name="publisher_email" value="netcdf/attribute/@name=publisher_email"/>
<attribute name="date_created" value="netcdf/attribute/@name=date_created"/>
<attribute name="date_modified" value="netcdf/attribute/@name=date_modified"/>
<attribute name="date_issued" value="netcdf/attribute/@name=date_issued"/>

can be combined into

group name="citation" uuid="UUID">
  <attribute name="objectType" value="acdd:Citation"/>
  <attribute name="title" value="netcdf/attribute/@name=title"/>
  <attribute name="identifier" value="netcdf/attribute/@name=id"/>
  <group name="creationDate" uuid="UUID">
    <attribute name="objectType" value="acdd:date"/>
    <attribute name="date" value="netcdf/attribute/@name=date_created"/>
    <attribute name="dateType" value="creation"/>
  </group>
  <group name="modificationDate" uuid="UUID">
    <attribute name="objectType" value="acdd:date"/>
    <attribute name="date" value="2012-02-29"/>
    <attribute name="dateType" value="modified"/>
  </group>
  <group name="issuedDate" uuid="UUID">
    <attribute name="objectType" value="acdd:date"/>
    <attribute name="date" value="2012-02-29"/>
    <attribute name="dateType" value="issued"/>
  </group>
  <group name="originator" uuid="UUID">
    <attribute name="objectType" value="acdd:ResponsibleParty"/>
    <attribute name="role" value="originator"/>
    <attribute name="individualName" value="netcdf/attribute/@name=creator_name"/>
    <attribute name="organisationName" value="netcdf/attribute/@name=institution"/>
    <attribute name="electronicMailAddress" value="netcdf/attribute/@name=creator_email"/>
    <group name="onlineResource" uuid="UUID">
      <attribute name="objectType" value="acdd:OnlineResource"/>
      <attribute name="linkage" value="netcdf/attribute/@name=creator_url"/>
      <attribute name="name" value="A title for the URL"/>
      <attribute name="description" value="A description of the URL"/>
      <attribute name="function" value="information"/>
    </group>
  </group>
  <group name="publisher" uuid="UUID">
    <attribute name="objectType" value="acdd:ResponsibleParty"/>
    <attribute name="role" value="publisher"/>
    <attribute name="individualName" value="netcdf/attribute/@name=publisher_name"/>
    <attribute name="organisationName" value="netcdf/attribute/@name=publisher_organization"/>
    <attribute name="electronicMailAddress" value="netcdf/attribute/@name=publisher_email"/>
    <group name="onlineResource" uuid="UUID">
      <attribute name="objectType" value="acdd:OnlineResource"/>
      <attribute name="linkage" value="netcdf/attribute/@name=publisher_url"/>
      <attribute name="name" value="A title for the URL"/>
      <attribute name="description" value="A description of the URL"/>
      <attribute name="function" value="information"/>
    </group>
  </group>
</group>

There are several interesting ideas illustrated in this example

  1. the citation object includes several other types of objects: responsibleParties and dates.
  2. the dates and responsibleParties include types and roles that allow the standard to be extended with shared vocabularies for these elements rather than with new named attribute
  3. each object is identified by a UUID that has no semantics. This is proposed in order to avoid problems of multiple groups with the same names.
  4. each object has a type which is proposed in an acdd namespace that would describe these types and their semantics.

A more complete example:

<?xml version='1.0' encoding='UTF-8'?>
<netcdf xmlns="http://www.unidata.ucar.edu/namespaces/netcdf/ncml-2.2">
  <!-- Metadata Reference -->
  <attribute name="naming_authority" value="netcdf/attribute/@name=naming_authority"/>
  <attribute name="Metadata_Conventions" value="netcdf/attribute/@name=Metadata_Conventions"/>
  <attribute name="Metadata_Link" value="netcdf/attribute/@name=Metadata_Link"/>
  <attribute name="metadata_link" value="netcdf/attribute/@name=metadata_link"/>
  <!-- Text Search -->
  <group name="citation" uuid="UUID">
    <attribute name="objectType" value="acdd:Citation"/>
    <attribute name="title" value="netcdf/attribute/@name=title"/>
    <attribute name="identifier" value="netcdf/attribute/@name=id"/>
    <group name="creationDate" uuid="UUID">
      <attribute name="objectType" value="acdd:date"/>
      <attribute name="date" value="netcdf/attribute/@name=date_created"/>
      <attribute name="dateType" value="creation"/>
    </group>
    <group name="modificationDate" uuid="UUID">
      <attribute name="objectType" value="acdd:date"/>
      <attribute name="date" value="2012-02-29"/>
      <attribute name="dateType" value="modified"/>
    </group>
    <group name="issuedDate" uuid="UUID">
      <attribute name="objectType" value="acdd:date"/>
      <attribute name="date" value="2012-02-29"/>
      <attribute name="dateType" value="issued"/>
    </group>
    <group name="originator" uuid="UUID">
      <attribute name="objectType" value="acdd:ResponsibleParty"/>
      <attribute name="role" value="originator"/>
      <attribute name="individualName" value="netcdf/attribute/@name=creator_name"/>
      <attribute name="organisationName" value="netcdf/attribute/@name=institution"/>
      <attribute name="electronicMailAddress" value="netcdf/attribute/@name=creator_email"/>
      <group name="onlineResource" uuid="UUID">
        <attribute name="objectType" value="acdd:OnlineResource"/>
        <attribute name="linkage" value="netcdf/attribute/@name=creator_url"/>
        <attribute name="name" value="A title for the URL"/>
        <attribute name="description" value="A description of the URL"/>
        <attribute name="function" value="information"/>
      </group>
    </group>
    <group name="publisher" uuid="UUID">
      <attribute name="objectType" value="acdd:ResponsibleParty"/>
      <attribute name="role" value="publisher"/>
      <attribute name="individualName" value="netcdf/attribute/@name=publisher_name"/>
      <attribute name="organisationName" value="netcdf/attribute/@name=publisher_organization"/>
      <attribute name="electronicMailAddress" value="netcdf/attribute/@name=publisher_email"/>
      <group name="onlineResource" uuid="UUID">
        <attribute name="objectType" value="acdd:OnlineResource"/>
        <attribute name="linkage" value="netcdf/attribute/@name=publisher_url"/>
        <attribute name="name" value="A title for the URL"/>
        <attribute name="description" value="A description of the URL"/>
        <attribute name="function" value="information"/>
      </group>
    </group>
  </group>
  <attribute name="summary" value="netcdf/attribute/@name=summary"/>
  <group name="keywords" uuid="UUID">
    <attribute name="objectType" value="acdd:Keyword"/>
    <attribute name="type" value="theme"/>
    <attribute name="keyword"
      value="netcdf/attribute/@name=keywords1,netcdf/attribute/@name=keywords2,netcdf/attribute/@name=keywords3"/>
    <group name="projectKeywordThesaurus" uuid="UUID">
      <attribute name="objectType" value="acdd:Citation"/>
      <attribute name="title" value="netcdf/attribute/@name=keyword_vocabulary"/>
      <group name="revision">
        <attribute name="objectType" value="acdd:Date"/>
        <attribute name="date" value="2011-06-06"/>
        <attribute name="dateType" value="revision"/>
      </group>
    </group>
  </group>
  <attribute name="standard_name_vocabulary" value="netcdf/attribute/@name=standard_name_vocabulary"/>
  <attribute name="comment" value="netcdf/attribute/@name=comment"/>
  <group name="extent" uuid="UUID">
    <attribute name="objectType" value="acdd:Extent"/>
    <attribute name="description" value="Description of the extent"/>
    <attribute name="geographicIdentifier" value="Identifier of the extent"/>
    <attribute name="westBoundLongitude" value="netcdf/attribute/@name=geospatial_lon_min" type="float"/>
    <attribute name="eastBoundLongitude" value="netcdf/attribute/@name=geospatial_lon_max" type="float"/>
    <attribute name="southBoundLongitude" value="netcdf/attribute/@name=geospatial_lat_min" type="float"/>
    <attribute name="northBoundLongitude" value="netcdf/attribute/@name=geospatial_lat_max" type="float"/>
    <attribute name="beginPosition" value="netcdf/attribute/@name=time_coverage_start"/>
    <attribute name="endPosition" value="netcdf/attribute/@name=time_coverage_end"/>
    <attribute name="verticalMinimum" value="netcdf/attribute/@name=geospatial_vertical_min" type="float"/>
    <attribute name="verticalMaximum" value="netcdf/attribute/@name=geospatial_vertical_max" type="float"/>
  </group>
  <!-- Other Extent Information -->
  <attribute name="geospatial_lat_units" value="netcdf/attribute/@name=geospatial_lat_units"/>
  <attribute name="geospatial_lat_resolution" value="netcdf/attribute/@name=geospatial_lat_resolution" type="float"/>
  <attribute name="geospatial_lon_units" value="netcdf/attribute/@name=geospatial_lon_units"/>
  <attribute name="geospatial_lon_resolution" value="netcdf/attribute/@name=geospatial_lat_resolution" type="float"/>
  <attribute name="geospatial_vertical_units" value="netcdf/attribute/@name=geospatial_vertical_units"/>
  <attribute name="geospatial_vertical_resolution" value="netcdf/attribute/@name=geospatial_vertical_resolution" type="float"/>
  <attribute name="geospatial_vertical_positive" value="netcdf/attribute/@name=geospatial_vertical_positive"/>
  <attribute name="time_coverage_duration" value="netcdf/attribute/@name=time_coverage_duration"/>
  <attribute name="time_coverage_resolution" value="netcdf/attribute/@name=time_coverage_resolution"/>
  <attribute name="acknowledgment" value="netcdf/attribute/@name=acknowledgment"/>
  <group name="contributor" uuid="UUID">
    <attribute name="objectType" value="acdd:ResponsibleParty"/>
    <attribute name="role" value="netcdf/attribute/@name=contributor_role"/>
    <attribute name="individualName" value="netcdf/attribute/@name=contributor_name"/>
    <attribute name="organisationName" value="netcdf/attribute/@name=contributor_organization"/>
    <attribute name="electronicMailAddress" value="netcdf/attribute/@name=contributor_email"/>
    <group name="onlineResource" uuid="UUID">
      <attribute name="objectType" value="acdd:OnlineResource"/>
      <attribute name="linkage" value="netcdf/attribute/@name=contributor_url"/>
      <attribute name="name" value="A title for the URL"/>
      <attribute name="description" value="A description of the URL"/>
      <attribute name="function" value="information"/>
    </group>
  </group>
  <!--<attribute name="project" value="netcdf/attribute/@name=project1,netcdf/attribute/@name=project2"/>-->
  <group name="project" uuid="UUID">
    <attribute name="objectType" value="gmd:MD_Keyword"/>
    <attribute name="type" value="project"/>
    <attribute name="keyword" value="Conventions for HDF"/>
    <group name="projectKeywordThesaurus" uuid="UUID">
      <attribute name="objectType" value="acdd:Citation"/>
      <attribute name="title" value="Title for project keyword thesaurus"/>
      <group name="revision">
        <attribute name="objectType" value="acdd:Date"/>
        <attribute name="date" value="2011-06-06"/>
        <attribute name="dateType" value="revision"/>
      </group>
    </group>
  </group>
  <attribute name="history" value="netcdf/attribute/@name=history"/>
  <group name="history" uuid="UUID">
    <group name="processStep" uuid="UUID">
      <attribute name="objectType" value="gmi:LE_ProcessStep"/>
      <attribute name="description" value="A description of the processing step"/>
      <attribute name="dateTime" value=""/>
      <group name="processor" uuid="UUID">
        <attribute name="objectType" value="acdd:ResponsibleParty"/>
        <attribute name="role" value="processor"/>
        <attribute name="individualName" value="The name of a processing person"/>
        <attribute name="organisationName" value="The name of a processing organization"/>
        <attribute name="positionName" value="The name of a processing position"/>
        <attribute name="electronicMailAddress" value="The email address of the processor"/>
      </group>
      <attribute name="source" value="UUID,UUID,UUID"/>
      <group name="processingInformation" uuid="UUID">
        <attribute name="objectType" value="gmi:LE_Processing"/>
        <attribute name="identifier" value="A unique identifier for the processing"/>
        <group name="algorithm">
          <attribute name="description"
            value="A brief description of the algorithm used in this step"/>
          <group name="citation" uuid="UUID">
            <attribute name="objectType" value="acdd:Citation"/>
            <attribute name="title" value="The title of the algorithm document"/>
            <attribute name="identifier" value="A unique identifier for the algorithm"/>
            <group name="creation_date" uuid="UUID">
              <attribute name="objectType" value="acdd:Date"/>
              <attribute name="date" value="A date associated with the algorithm"/>
              <attribute name="dateType" value="The type of the date"/>
            </group>
            <group name="citedResponsibleParty" uuid="UUID">
              <attribute name="objectType" value="acdd:ResponsibleParty"/>
              <attribute name="role" value="The role of a responsible party"/>
              <attribute name="individualName" value="The name of a responsible party"/>
            </group>
          </group>
        </group>
      </group>
      <attribute name="output" value="UUID,UUID,UUID"/>
    </group>
  </group>
  <!-- Other Attributes -->
  <attribute name="processing_level" value="netcdf/attribute/@name=processing_level"/>
  <attribute name="license" value="netcdf/attribute/@name=license"/>
  <attribute name="cdm_data_type" value="netcdf/attribute/@name=cdm_data_type"/>
  <dimension name="altitude" length="/netcdf/dimension/@name=altitude/@length"/>
  <dimension name="lat" length="/netcdf/dimension/@name=lat/@length"/>
  <dimension name="lon" length="/netcdf/dimension/@name=lon/@length"/>
  <dimension name="time" length="/netcdf/dimension/@name=time/@length"/>
  <variable name="lat" shape="lat" type="double">
    <attribute name="coverage_content_type" value="coordinate"/>
    <attribute name="_CoordinateAxisType" value="Lat"/>
    <attribute name="actual_range" type="double" value="-90.0 90.0"/>
    <attribute name="coordsys" value="geographic"/>
    <attribute name="fraction_digits" type="int" value="4"/>
    <attribute name="long_name" value="Latitude"/>
    <attribute name="point_spacing" value="even"/>
    <attribute name="standard_name" value="latitude"/>
    <attribute name="units" value="degrees_north"/>
    <attribute name="axis" value="Y"/>
  </variable>
  <variable name="lon" shape="lon" type="double">
    <attribute name="coverage_content_type" value="coordinate"/>
    <attribute name="_CoordinateAxisType" value="Lon"/>
    <attribute name="actual_range" type="double" value="0.0 360.0"/>
    <attribute name="coordsys" value="geographic"/>
    <attribute name="fraction_digits" type="int" value="4"/>
    <attribute name="long_name" value="Longitude"/>
    <attribute name="point_spacing" value="even"/>
    <attribute name="standard_name" value="longitude"/>
    <attribute name="units" value="degrees_east"/>
    <attribute name="axis" value="X"/>
  </variable>
  <variable name="time" shape="time" type="double">
    <attribute name="coverage_content_type" value="coordinate"/>
    <attribute name="actual_range" type="double" value="1.3121568E9 1.3121568E9"/>
    <attribute name="fraction_digits" type="int" value="0"/>
    <attribute name="long_name" value="Centered Time"/>
    <attribute name="units" value="seconds since 1970-01-01T00:00:00Z"/>
    <attribute name="standard_name" value="time"/>
    <attribute name="axis" value="T"/>
    <attribute name="_CoordinateAxisType" value="Time"/>
  </variable>
  <variable name="altitude" shape="altitude" type="double">
    <attribute name="actual_range" type="double" value="0.0 0.0"/>
    <attribute name="fraction_digits" type="int" value="0"/>
    <attribute name="long_name" value="Altitude"/>
    <attribute name="positive" value="up"/>
    <attribute name="standard_name" value="altitude"/>
    <attribute name="units" value="m"/>
    <attribute name="axis" value="Z"/>
    <attribute name="_CoordinateAxisType" value="Height"/>
    <attribute name="_CoordinateZisPositive" value="up"/>
  </variable>
  <variable name="variable_1" type="netcdf/variable/@type" shape="netcdf/variable/@shape">
    <attribute name="units" value="netcdf/variable/attribute/@name=units"/>
    <attribute name="long_name" value="netcdf/variable/attribute/@name=long_name"/>
    <attribute name="standard_name" value="netcdf/variable/attribute/@name=standard_name"/>
    <attribute name="coverage_content_type" value="physicalMeasurement"/>
  </variable>
  <variable name="variable_2" type="netcdf/variable2/@type" shape="netcdf/variable2/@shape">
    <attribute name="long_name" value="netcdf/variable2/attribute/@name=long_name"/>
    <attribute name="standard_name" value="netcdf/variable2/attribute/@name=standard_name"/>
  </variable>
  <variable name="qualityVariable_1" type="netcdf/qualityVariable1/@type"
    shape="netcdf/qualityVariable1/@shape">
    <attribute name="units" value="netcdf/qualityVariable1/attribute/@name=units"/>
    <attribute name="long_name" value="netcdf/qualityVariable1/attribute/@name=long_name"/>
    <attribute name="standard_name" value="netcdf/qualityVariable1/attribute/@name=standard_name"/>
  </variable>
  <variable name="qualityVariable_2" type="netcdf/qualityVariable2/@type"
    shape="netcdf/qualityVariable2/@shape">
    <attribute name="units" value="netcdf/qualityVariable2/attribute/@name=units"/>
    <attribute name="long_name" value="netcdf/qualityVariable2/attribute/@name=long_name"/>
    <attribute name="standard_name" value="netcdf/qualityVariable2/attribute/@name=standard_name"/>
    <attribute name="coverage_content_type" value="qualityInformation"/>
  </variable>
  <variable name="modelResult_1" type="netcdf/qualityVariable1/@type"
    shape="netcdf/modelResult1/@shape">
    <attribute name="units" value="netcdf/qualityVariable1/attribute/@name=units"/>
    <attribute name="long_name" value="netcdf/qualityVariable1/attribute/@name=long_name"/>
    <attribute name="standard_name" value="netcdf/qualityVariable1/attribute/@name=standard_name"/>
    <attribute name="coverage_content_type" value="modelResult"/>
  </variable>
</netcdf>

Both of these examples are first drafts. They will certainly be improved with input from the group.

ISO Translation Notes

The translation between the Attribute Conventions for Data Discovery is subject to a number of assumptions or conventions described here.

People

The ACDD includes several types of people:

ACDD Attributes ISO Locations
creator_name, creator_email, creator_url, institution citation/citedResponsibleParty role=originator, point of contact, and metadata contact
contributor_name, contributor_role citation/citedResponsibleParty role=originator (may need adjustment)
publisher_name, publisher_email, publisher_url distributor and Data Center keyword
project Project keyword, aggregation information (initiative type = project)

Keywords

The ACDD includes several attributes that make sense as keywords in ISO:

ACDD Attributes ISO Locations
keywords theme keywords with thesaurus given by the keywords_vocabulary attribute
project Project keyword with unknown thesaurus and aggregation information (initiative type = project)
publisher_name Data Center keyword with unknown thesaurus
standard_names for parameters theme keywords with thesaurus = standard_name_vocabulary
publisher_name, publisher_email, publisher_url distributor and Data Center keyword

Translation Revisions

Several changes were introduced into Version 2.0.2 of the stylesheet for transforming NcML to ISO in order to improve the rubric score for the resulting ISO metadata. The changes included:

  1. Including netcdf/@location in transform as distribution onlineResource
  2. Added tagname to writeResponsibleParty so that responsibleParties with

different UML roles could be supported (i.e. contact vs. distributor)

  1. Added urlName and urlDescription to writeResponsibleParty to add

content to the onlineResource

  1. Moved publisher from citation to distributor and included publisher_name as a dataCenter keyword.
  2. Added project as a keyword with type=project
  3. Added distributionInfo section to ISO if publisher or location exist.

Determining an Order of Precedence

There can be conflicting information available from different sources within the THREDDS and CDM data models. The diagram below seeks to determine an order of precedence for what is recorded in the ncISO metadata when those attributes conflict. Metadataprecedence.png

A key part of this discussion is the ability to see identify potentially conflicting metdata between the differenc sources within THREDDS and NetCDF. Below we propose using groups to identify in the NCML what sources contain the relevant metadata that will be used in the ISO translation.

<?xml version="1.0" encoding="UTF-8"?>
<netcdf xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://www.unidata.ucar.edu/namespaces/netcdf/ncml-2.2 ../XSD/ncml-2.2.xsd"
 xmlns="http://www.unidata.ucar.edu/namespaces/netcdf/ncml-2.2"
 location="http://localhost:8080/thredds/dodsC/test/crm_v1.nc">
    
    <!-- Metadata from the netCDF or NCML file global attributes -->    
    <attribute name="Conventions" value="CF-1.4" />
    <attribute name="title" value="crm_v1.grd" />
    <attribute name="history" value="xyz2grd -R-80/-64/40/48 -I3c -Gcrm_v1.grd" />
    <attribute name="GMT_version" value="4.5.1 [64-bit]" />
    <attribute name="creator_name" value="David Neufeld"/>
    <attribute name="creator_email" value="David.Neufeld@noaa.gov"/>    
    <attribute name="geospatial_lon_units" value="degrees_east" />
    <attribute name="geospatial_lat_units" value="degrees_north" />
    <attribute name="geospatial_lon_min" type="float" value="-80.0" />
    <attribute name="geospatial_lon_max" type="float" value="-64.0" />    
    <attribute name="geospatial_lat_max" type="float" value="48.0" />
    <attribute name="geospatial_lat_min" type="float" value="40.0" />
    <attribute name="geospatial_lon_resolution" type="double" value="8.33E-4" />
    <attribute name="geospatial_lat_resolution" type="double" value="8.33E-4" />
    
    <!-- Metadata calculated from the netCDF file axes based on CF conventions -->
    <group name="CFMetadata">
      <attribute name="geospatial_lon_min" value="-80.0" type="float" />
      <attribute name="geospatial_lat_min" value="40.0" type="float" />
      <attribute name="geospatial_lon_max" value="-64.0" type="float" />
      <attribute name="geospatial_lat_max" value="48.0" type="float" />
      <attribute name="geospatial_lon_units" value="degrees_east" />    
      <attribute name="geospatial_lat_units" value="degrees_north" />
      <attribute name="geospatial_lon_resolution" value="8.332899328159992E-4" />
      <attribute name="geospatial_lat_resolution" value="8.332465368190813E-4" />
    </group>
    
    <!-- Metadata from the THREDDS catalog dataset -->
    <group name="THREDDSMetadata">
        <attribute name="id" value="crm_v1" />
        <attribute name="creator_name" value="David Neufeld"/>
        <attribute name="creator_email" value="David.Neufeld@noaa.gov"/>    
        <attribute name="data_distribution" value="http://localhost:8080/thredds/dodsC/test/crm_v1.nc" />
        <attribute name="wms_service" value="http://localhost:8080//thredds/wms/crm/crm_vol9.nc" />
        <attribute name="wcs_service" value="http://localhost:8080//thredds/wcs/crm/crm_vol9.nc" />
    </group>    
        
    <!-- Metadata from the ncISO service -->
    <group name="NCISOMetadata">
      <attribute name="metadata_creation" value="2011-04-19" />
    </group>
    
    <dimension name="x" length="19201" />
    <dimension name="y" length="9601" />
    
    <variable name="z" shape="y x" type="float">
        <attribute name="long_name" value="z" />
        
        <attribute name="_FillValue" type="float" value="NaN" />
        <attribute name="actual_range" type="double" value="-2754.39990234375 1903.0" />
        <attribute name="units" value="meters" />
        <attribute name="positive" value="up" />
    </variable>
    <variable name="x" shape="x" type="double">
        <attribute name="long_name" value="x" />
        <attribute name="actual_range" type="double" value="-80.0 -64.0" />
        <attribute name="units" value="degrees_east" />
        
        <attribute name="_CoordinateAxisType" value="Lon" />
    </variable>
    <variable name="y" shape="y" type="double">
        <attribute name="long_name" value="y" />
        <attribute name="actual_range" type="double" value="40.0 48.0" />
        <attribute name="units" value="degrees_north" />
        <attribute name="_CoordinateAxisType" value="Lat" />
    </variable>
</netcdf>