Attribute Metadata Conventions
Introduction
This section describes the netCDF metadata attributes which are associated with compliant FAAM datasets. Metadata attributes are specified as global, group, or variable level, and are either optional or required for compliance.
General Guidance
Dates and datetimes should be provided in ISO 8601 format, and should be given in UTC where possible. Preferred formats are:
yyyy-mm-ddTHH:MM:SSZ
for datetimesyyyy-mm-dd
for dates
Global Attributes
Required Global Attributes
Conventions
- [string] The conventions followed by this data. Example: CF-1.9 ACDD-1.3acknowledgement
- [string] The acknowledgement for use of this data. Should read: Airborne data was obtained using the BAe-146-301 Atmospheric Research Aircraft [ARA] flown by Airtask Ltd and managed by FAAM Airborne Laboratory, jointly operated by UKRI and the University of Leeds for FAAM data. Example: Airborne data was obtained using the BAe-146-301 Atmospheric Research Aircraft [ARA] flown by Airtask Ltd and managed by FAAM Airborne Laboratory, jointly operated by UKRI and the University of Leedscreator_address
- [string] The address of the FAAM offices. Should read: Building 146, Cranfield University, College Road, Cranfield, Bedford. MK43 0AL. UK. for FAAM data. Example: Building 146, Cranfield University, College Road, Cranfield, Bedford. MK43 0AL. UK.creator_email
- [string] The email address of the data creator, or a generic FAAM email. Example: creator@faam.ac.ukcreator_institution
- [string] The institute responsible for the creation of the data. Should read: FAAM Airborne Laboratory for FAAM data. Example: FAAM Airborne Laboratorycreator_name
- [string] The name of the person or institute responsible for this data. Example: A. N. Othercreator_type
- [string] The type of creator. Should be one of person, institution, position. Example: persondate
- [string] Date of the flight. Example: 1970-01-01date_created
- [string] ISO:8601 date/time file created, ideally yyyy-mm-ddTHH:MM:SSZ. Equivalent to revision_date. Example: 1970-01-01T06:00:00Zflight_date
- [string] Date of the flight. Example: 1970-01-01flight_number
- [string] The flight number. Example: a001geospatial_bounds
- [string] A well-known text representation of the flight envelope. Example:geospatial_bounds_crs
- [string] Coordinate reference system for geospatial attributes. Example: EPSG:4979geospatial_lat_max
- [number] Maximum latitude of the flight. Example: 60.0geospatial_lat_min
- [number] Minimum latitude of the flight. Example: 50.0geospatial_lat_units
- [string] The units for geospatial_lat_* attributes. Example: degree_northgeospatial_lon_max
- [number] Maximum longitude of the flight. Example: 10.0geospatial_lon_min
- [number] Minimum longitude of the flight. Example: -10.0geospatial_lon_units
- [string] The units for geospatial_lon_* attributes. Example: degree_eastgeospatial_vertical_max
- [number] The maximum altitude of the flight. Example: 10000.0geospatial_vertical_min
- [number] The minimum altitude of the flight. Example: 100.0geospatial_vertical_units
- [string] Vertical units associated with geospatial_vertical_* attributes. Example: mgeospatial_vertical_positive
- [string] Positive direction of geospatial_vertical_* attributes. Example: upid
- [string] filename without extension, needs to be globally unique w/ naming_authority. Example: core[-type]_faam_<yyyymmdd>[_vNNN]_rN[_Nhz]institution
- [string] The institute responsible for the creation of this data. Should read: FAAM Airborne Laboratory for FAAM data. Example: FAAM Airborne Laboratorykeywords
- [string] A comma separated list of keywords from the GCMD. Example: keyword1, keyword2keywords_vocabulary
- [string] Controlled vocabulary for keywords. Should read Global Change Master Directory (GCMD). Example: Global Change Master Directory (GCMD)license
- [string] The license for this data. Should read: UK Government Open Licence agreement - http://www.nationalarchives.gov.uk/doc/open-government-licence. Example: UK Government Open Licence agreement - http://www.nationalarchives.gov.uk/doc/open-government-licencemetadata_link
- [string] A link to a release of a controlled vocabulary of metadata attributes. Example: https://github.com/FAAM-146/faam-data/releases/tag/vX.Ynaming_authority
- [string] The authority responsible for naming this data. Should read uk.ac.faam. Example: uk.ac.faamplatform
- [string] Platform name of the FAAM aircraft. Should read: FAAM BAe-146-301 Atmospheric Research Aircraft. Example: FAAM BAe-146-301 Atmospheric Research Aircraftplatform_type
- [string] Platform type: aircraft. Example: aircraftproject
- [string] The project a flight was for. Expected to be of the form <project_acronym> - <project_name>. Example: PROJECT: A project with a long titlepublisher_email
- [string] The email address of the data publisher. Example: support@ceda.ac.ukpublisher_institution
- [string] The institution responsible for publishing data. Should read: CEDA. Example: CEDApublisher_type
- [string] Type of entity responsible for publishing data. Should be institution. Example: institutionpublisher_url
- [string] The URL of the data publisher. Should be https://www.ceda.ac.uk. Example: https://www.ceda.ac.ukreferences
- [string] A list of references relevant to the file. Example: https://www.faam.ac.uk https://www.ceda.ac.ukrevision_date
- [string|string] The date this revision created. Analogous to date_created. Example: 1970-01-01T06:00:00Zrevision_number
- [integer] The revision number of the dataset. Starts at 0, increments by 1 for each revision. Example: 0source
- [string] A description of the source of the data. An instrument where this makes sense, otherwise a description of how data obtained. Example: description of how data obtainedstandard_name_vocabulary
- [string] A vocabulary of standard names. Expected to be a CF standard name table, e.g. CF Standard Name Table v78. Example: CF Standard Name Table v7summary
- [string] A brief summary of the data. Example: Data obtained on FAAM aircraft during flight a001time_coverage_duration
- [string] The duration of the data, in ISO8601 duration format. Example: PT1Htime_coverage_start
- [string] The start time of the data in the file, in ISO8601 format. Example: 1970-01-01T00:00:00Ztime_coverage_end
- [string] The end time of the data in the file, in ISO8601 format. Example: 1970-01-01T01:00:00Ztitle
- [string] A brief title for the dataset. Example: Data from flight a001uuid
- [string] V3 UUID: MD5 hash of id+date_created. Example: 9bceaff5-9991-85c6-bca5-d8c0393dc60d
Optional Global Attributes
calibration_date
- [string|null] Calibration date, where this applies to all file contents. Example: 1970-01-01calibration_information
- [string|null] Calibration information, where this applies all file contents. Example: Calibrated at lab X using method Ycalibration_url
- [string|null] Permanent URI or DOI linking to calibration info, where this applies to all file contents. Example: dx.doi.org/00.0000/0000000comment
- [string|null] Comment about data. Example: A comment about the dataconstants_file
- [string|null] Name of external file providing input to processing software. Example: flight-cst_faam_19700101_r0_a001.yamlcreator_url
- [string|null] Institutional URL or researcher ORCID URL. Example: https://orcid.org/0000-0000-0000-0000deployment_mode
- [string|null] Mode of deployment. Should always be “air”. Example: airexternal_variables
- [string|null] Blank separated list of variables used from an external file. Example: PS_RVSM TAT_DI_Rhistory
- [string|null] Logs modifications to file since production. Example: 1970-01-01T00:00:00Z some_prog -i myfile -o myfileinstrument
- [string|null] Where all data id from a single instrument. Currently freeform, controlled instrument vocab to follow. Example: Some instrumentinstrument_description
- [string|null] Where all data are from a single instrument. Textual description. Example: X type instrument, measuring Y using method Zinstrument_location
- [string|null] Where all data are from a single instrument. Location of instrument on aircraft. Example: Instrument locationinstrument_manufacturer
- [string|null] Where all data are from a single instrument. Instrument manufacturer. Example: Instrument Manufacturing Ltd.instrument_model
- [string|null] Where all data are from a single instrument. Instrument model. Example: Model 1.2.3instrument_serial_number
- [string|null] Where all data are from a single instrument. Instrument serial number. Example: SN123instrument_software
- [string|null] Where all data are from a single instrument. Name of software deployed on instrument. Example: Instrument software nameinstrument_software_version
- [string|null] Where all data are from a single instrument. Version of software deployed on instrument. Example: v1.2.3notes
- [string|null] Notes on this data file. For more detailed info than comment. Example: Some longer form notes about this fileprocessing_software_commit
- [string|null] Commit hash for processing software in vcs. Example: 2a83fc2394bprocessing_software_doi
- [string|null] DOI of the processing doftware release, if available. Example: dx.doi.org/00.0000/0000000processing_software_url
- [string|null] URL pointing to processing software source code, if available. Example: https://github.com/my-user/my_repoprocessing_software_version
- [string|null] Version of processing software. Example: v1.2.3project_acronym
- [string|null] Project acronym. Example: PROJECTproject_name
- [string|null] Full project name. Example: A long project nameproject_principal_investigator
- [string|null] Name(s) of project PIs. Comma separated if more than one. Example: A. N. Otherproject_principal_investigator_email
- [string|null] Email address(es) of project PIs. Comma separated if more than one. Example: a.n.other@institute.ac.ukproject_principal_investigator_url
- [string|null] ORCID URL(s) of project PIs. Comma separated if more than one. Example: https://orcid.org/0000-0000-0000-0000revision_comment
- [string|null] Brief description of changes between revisions. Example: Corrected processing of variable X by doing Ysource_files
- [string|null] List of source files used in the processing of this data product. Example: file1.ext file2.exttime_coverage_resolution
- [string|null] Resolution of data, where this is uniform across the file. Example: 1Sprocessing_level
- [string|null] Processing level of data, where it is uniform for all data in the file. Example: 2
Group Attributes
Required Group Attributes
Optional Group Attributes
calibration_date
- [string|null] Calibration date, where this applies to whole group. Example: 1970-01-01calibration_information
- [string|null] Calibration information, where this applies whole group. Example: Calibrated at lab X using method Ycalibration_url
- [string|null] Permanent URI or DOI linking to calibration info, where this applies to whole group. Example: dx.doi.org/00.0000/0000000comment
- [string|null] Comment about data. Example: A comment about the datainstrument
- [string|null] Currently freeform, controlled instrument vocab to follow. Example: Some instrumentinstrument_description
- [string|null] Textual description. Example: X type instrument, measuring Y using method Zinstrument_location
- [string|null] Location of instrument on aircraft. Example: Instrument locationinstrument_manufacturer
- [string|null] Instrument manufacturer. Example: Instrument Manufacturing Ltd.instrument_model
- [string|null] Instrument model. Example: Model 1.2.3instrument_serial_number
- [string|null] Instrument serial number. Example: SN123instrument_software
- [string|null] Name of softeare deployed on instrument. Example: Instrument software nameinstrument_software_version
- [string|null] Version of software deployed on instrument. Example: v1.2.3notes
- [string|null] Notes on this group. For more detailed info than comment. Example: Some longer form notes about this filesource_files
- [string|null] List of source files used in the processing of this group. Example: file1.ext file2.extreferences
- [string|null] A list of references relevant to the group. Example: https://www.faam.ac.uk https://www.ceda.ac.ukprocessing_level
- [string|null] Processing level of data, where it is uniform for all data in the group. Example: 2source
- [string|null] A description of the source of the data. An instrument where this makes sense, otherwise a description of how data obtained. Example: description of how data obtainedsummary
- [string|null] A brief summary of the data. Example: Data obtained on FAAM aircraft during flight a001
Variable Attributes
Required Variable Attributes
_FillValue
- [integer|number] The prefill/missing data value. Example: -9999coverage_content_type
- [string] ISO 19115-1 code. One of image, thematicClassification, physicalMeasurement, auxiliaryInformation, qualityInformation, referenceInformation, modelResult, coordinate. Example: physicalMeasurementfrequency
- [integer] The frequency of the data. Where this is >1, will typically correspond to an spsNN dimension. Example: 1long_name
- [string] A longer, descriptive name for the variable. Example: Temperature from deiced temperature probeunits
- [string] Valid UDUNITS unit. Where a standard_name is given, must be equivalent to canonical units. Example: K
Optional Variable Attributes
axis
- [string|null] Axis for coordinate variables. Should be one of X, Y, Z, T. Example: Xactual_range
- [array|null] A length 2 array, of the same datatype as the variable, giving the maximum and minimum valid values. Example: [0, 1]add_offset
- [number|integer|null] Offset for packing. Default is 0. Example: 0ancillary_variables
- [string|null] Optional in no ancillary variables, otherwise required. Ancillary variables e.g. flags, uncertainties. Example: PS_RVSM TAT_DI_Rcalendar
- [string|null] Required for the time coordinate variable. Should be one of standard, gregorian. Example: standardcalibration_date
- [string|null] Calibration date, where this applies to variable. Example: 1970-01-01calibration_information
- [string|null] Calibration information, where this applies variable. Example: Calibrated at lab X using method Ycalibration_url
- [string|null] Permanent URI or DOI linking to calibration info, where this applies to variable. Example: dx.doi.org/00.0000/0000000comment
- [string|null] Comment about data. Example: A comment about the datacoordinates
- [string|null] Blank separated list of coordinate variables. Example: latitude longitude altitude timeflag_masks
- [array|integer|null] Allowed flag mask values. Required for bitmask style flags. Example: [1, 2, 4]flag_meanings
- [string|null] Blank separated list of flag meanings. Required for flag variables. Example: data_good possible_minor_issue possible_major_issueflag_values
- [array|integer|null] Allowed flag values. Required for classic flags. Example: [0, 1, 2]instrument_description
- [string|null] Textual description of instrument. Example: X type instrument, measuring Y using method Zinstrument_location
- [string|null] Where variable is derived from a single instrument. Location of instrument on aircraft. Example: Instrument locationinstrument_manufacturer
- [string|null] Where variable is derived from a single instrument. Instrument manufacturer. Example: Instrument Manufacturing Ltd.instrument_model
- [string|null] Where variable is derived from a single instrument. Instrument model number. Example: Model 1.2.3instrument_serial_number
- [string|null] Where variable is derived from a single instrument. Instrument serial number. Example: SN123instrument_software
- [string|null] Where variable is derived from a single instrument. Name of software deploed on instrument. Example: Instrument software nameinstrument_software_version
- [string|null] Where all data in the group are from a single instrument. Version of software deployed on instrument. Example: v1.2.3sensor_manufacturer
- [string|null] Similar to instrument_manufacturer, but where the item is more accurately described as a sensor. Example: Sensor Manufacturing Ltd.sensor_model
- [string|null] Similar to instrument_model, but where the item is more accurately described as a sensor. Example: Model 1.2.3sensor_serial_number
- [string|null] Where variable is derived from a single sensor, similar to instrument_serial_number. Sensor serial number. Example: SN123sensor_type
- [string|null] The type of sensor fitted, where different sensor types may be used to produce the same measurement. A canonical example of this is the type of temperature sensor in the Rosemount housings. Example: platepositive
- [string|null] Applies to vertical coordinate. Should be “up” if included. Example: upscale_factor
- [number|integer|null] Scale for packing. Default is 1. Example: 1standard_name
- [string|null] See CF standard names list. Should be used whenever possible. Example: air_temperaturevalid_max
- [number|integer|null] Recommended where feasible. Where both valid_min and valid_max make sense, valid_range is preferred. Example: 1valid_min
- [number|integer|null] Recommended where feasible. Where both valid_min and valid_max make sense, valid_range is preferred. Example: 0valid_range
- [array|null] A length 2 array of the same datatype as the variable, giving minimum and maximum valid values. Example: [0, 1]processing_level
- [string|null] Processing level of variable data. Example: 2