Difference between revisions of "Attribute Convention for Data Discovery 1-2 Working"
Line 83: | Line 83: | ||
= Mappings ACDD to other metadata dialects = | = Mappings ACDD to other metadata dialects = | ||
http://wiki.esipfed.org/index.php/Attribute_Convention_for_Data_Discovery_%28ACDD%29_Mappings | http://wiki.esipfed.org/index.php/Attribute_Convention_for_Data_Discovery_%28ACDD%29_Mappings | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
=Recommended= | =Recommended= |
Revision as of 08:34, July 15, 2013
Version and Status
This version is designated as Version 1.2 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.
- converage_content_type
- Information about the content of the variable, valid values are image, thematicClassification, physicalMeasurement, auxiliaryInformation, qualityInformation, referenceInformation, modelResult, coordinate.
John Got This Far (So He's Done!)
Mappings ACDD to other metadata dialects
http://wiki.esipfed.org/index.php/Attribute_Convention_for_Data_Discovery_%28ACDD%29_Mappings
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"] | |||
acknowledgement | A 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" |
Modified | Responsible 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
- the citation object includes several other types of objects: responsibleParties and dates.
- 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
- 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.
- 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:
- Including netcdf/@location in transform as distribution onlineResource
- Added tagname to writeResponsibleParty so that responsibleParties with
different UML roles could be supported (i.e. contact vs. distributor)
- Added urlName and urlDescription to writeResponsibleParty to add
content to the onlineResource
- Moved publisher from citation to distributor and included publisher_name as a dataCenter keyword.
- Added project as a keyword with type=project
- 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.
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>