ConceptioArchiveOpen Geospatial Consortium (OGC)
Open Geospatial Consortium (OGC)open access

OGC Network Common Data Form (NetCDF) Core Encoding Standard (version 1.0) — OGC 10-090r3

Open Geospatial Consortium · Open Geospatial Consortium (OGC)
Open Geospatial Consortium (OGC) · Standards · License: Open Access
Open Source ↗Direct PDF ↓
commoncoredataencodingformgeospatialnetworkogc
ogc, geospatial, standard, open geospatial consortium, netcdf, ogc netcdf, 10-090r3, ogc 10-090r3, 1.0, network, common, data, form, core, encoding

OGC 10-090r3

Open Geospatial Consortium Date: 2011-04-05 Reference number of this OpenGIS® Project Document: OGC 10-090r3 OGC name of this OGC® project document: http://www.opengis.net/doc/IS/netcdf/1.0 Version: 1.0 Category: Candidate OpenGIS® Encoding Standard Editor: Ben Domenico

OGC Network Common Data Form (NetCDF) Core Encoding Standard version 1.0

Copyright © 2011 Open Geospatial Consortium To obtain additional rights of use visit http://www.opengeospatial.org/legal/.

Warning This document is an OGC Member approved international standard. This document is available on a royalty free, non-discriminatory basis. Recipients of this document are invited to submit, with their comments, notification of any relevant patent rights of which they are aware and to provide supporting documentation.

Document type: Document subtype: Document stage: Document language:

OpenGIS® Implementation Standard Encoding

Approved English

1

License Agreement Permission is hereby granted by the Open Geospatial Consortium, ("Licensor"), free of charge and subject to the terms set forth below, to any person obtaining a copy of this Intellectual Property and any associated documentation, to deal in the Intellectual Property without restriction (except as set forth below), including without limitation the rights to implement, use, copy, modify, merge, publish, distribute, and/or sublicense copies of the Intellectual Property, and to permit persons to whom the Intellectual Property is furnished to do so, provided that all copyright notices on the intellectual property are retained intact and that each person to whom the Intellectual Property is furnished agrees to the terms of this Agreement. If you modify the Intellectual Property, all copies of the modified Intellectual Property must include, in addition to the above copyright notice, a notice that the Intellectual Property includes modifications that have not been approved or adopted by LICENSOR. THIS LICENSE IS A COPYRIGHT LICENSE ONLY, AND DOES NOT CONVEY ANY RIGHTS UNDER ANY PATENTS THAT MAY BE IN FORCE ANYWHERE IN THE WORLD. THE INTELLECTUAL PROPERTY IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS NOTICE DO NOT WARRANT THAT THE FUNCTIONS CONTAINED IN THE INTELLECTUAL PROPERTY WILL MEET YOUR REQUIREMENTS OR THAT THE OPERATION OF THE INTELLECTUAL PROPERTY WILL BE UNINTERRUPTED OR ERROR FREE. ANY USE OF THE INTELLECTUAL PROPERTY SHALL BE MADE ENTIRELY AT THE USER’S OWN RISK. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR ANY CONTRIBUTOR OF INTELLECTUAL PROPERTY RIGHTS TO THE INTELLECTUAL PROPERTY BE LIABLE FOR ANY CLAIM, OR ANY DIRECT, SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM ANY ALLEGED INFRINGEMENT OR ANY LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR UNDER ANY OTHER LEGAL THEORY, ARISING OUT OF OR IN CONNECTION WITH THE IMPLEMENTATION, USE, COMMERCIALIZATION OR PERFORMANCE OF THIS INTELLECTUAL PROPERTY. This license is effective until terminated. You may terminate it at any time by destroying the Intellectual Property together with all copies in any form. The license will also terminate if you fail to comply with any term or condition of this Agreement. Except as provided in the following sentence, no such termination of this license shall require the termination of any third party end-user sublicense to the Intellectual Property which is in force as of the date of notice of such termination. In addition, should the Intellectual Property, or the operation of the Intellectual Property, infringe, or in LICENSOR’s sole opinion be likely to infringe, any patent, copyright, trademark or other right of a third party, you agree that LICENSOR, in its sole discretion, may terminate this license without any compensation or liability to you, your licensees or any other party. You agree upon termination of any kind to destroy or cause to be destroyed the Intellectual Property together with all copies in any form, whether held by you or by any third party. Except as contained in this notice, the name of LICENSOR or of any other holder of a copyright in all or part of the Intellectual Property shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Intellectual Property without prior written authorization of LICENSOR or such copyright holder. LICENSOR is and shall at all times be the sole entity that may authorize you or any third party to use certification marks, trademarks or other special designations to indicate compliance with any LICENSOR standards or specifications. This Agreement is governed by the laws of the Commonwealth of Massachusetts. The application to this Agreement of the United Nations Convention on Contracts for the International Sale of Goods is hereby expressly excluded. In the event any provision of this Agreement shall be deemed unenforceable, void or invalid, such provision shall be modified so as to make it valid and enforceable, and as so modified the entire Agreement shall remain in full force and effect. No decision, action or inaction by LICENSOR shall be construed to be a waiver of any rights or remedies available to it. None of the Intellectual Property or underlying information or technology may be downloaded or otherwise exported or reexported in violation of U.S. export laws and regulations. In addition, you are responsible for complying with any local laws in your jurisdiction which may impact your right to import, export or use the Intellectual Property, and you represent that you have complied with any regulations or registration procedures required by applicable law to make this license enforceable

ii

Copyright © 2012 Open Geospatial Consortium

OGC 10-090r3

Table of Contents 1

Scope

8

2

Conformance ............................................................................................................... 8

3

Normative references .................................................................................................. 8

4 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9 4.10 4.11 4.12 4.13 4.14 4.15 4.16 4.17 4.18 4.19 4.20 4.21 4.22

Terms and definitions ................................................................................................. 8 attribute ........................................................................................................................ 8 coordinate variable...................................................................................................... 9 data 9 data model .................................................................................................................... 9 data type ....................................................................................................................... 9 data value ..................................................................................................................... 9 dataset 9 dimension ..................................................................................................................... 9 domain .......................................................................................................................... 9 encoding ....................................................................................................................... 9 global attribute (dataset attribute) ............................................................................ 9 grid 10 metadata ..................................................................................................................... 10 model .......................................................................................................................... 10 netCDF ....................................................................................................................... 10 netCDF conventions .................................................................................................. 10 record ......................................................................................................................... 10 record dimension (unlimited length dimension) ..................................................... 11 shape 11 variable ....................................................................................................................... 11 variable attribute ....................................................................................................... 11 NetCDF-specific definitions...................................................................................... 11

5 5.1 5.2 5.3

Document Conventions ............................................................................................. 12 UML notation ............................................................................................................ 12 Data dictionary tables ............................................................................................... 12 Namespace prefix conventions ................................................................................. 12

6 6.1 6.2 6.3 6.4 6.5 6.5.1

NetCDF classic data model ....................................................................................... 12 NetCDF classic model overview ............................................................................... 12 NetCDF classic data model UML notation ............................................................. 13 Primitive data types .................................................................................................. 13 Variables .................................................................................................................... 13 Dimensions ................................................................................................................. 14 Attribute ..................................................................................................................... 14

Annex A: Conformance Class Abstract Test Suite (Normative). ...................................... 17 A.1 Conformance Test Class: netCDF Core .................................................................. 17 A.1.1 Requirement 1 ........................................................................................................... 17 A.1.2 Requirement 2 ........................................................................................................... 17 A.1.3 Requirement 3 ........................................................................................................... 18 A.1.4 Requirement 4 ........................................................................................................... 18 A.1.5 Requirement 5 ........................................................................................................... 18 A.1.6 Requirement 6 ........................................................................................................... 19 2

OGC 10-090r3

A.1.7 Requirement 7 ........................................................................................................... 19 A.1.8 Requirement 8 ........................................................................................................... 19 A.1.9 Requirement 9 ........................................................................................................... 20 A.1.10 Requirement 10 ......................................................................................................... 20 Annex B: Revision history..................................................................................................... 21

Figures

Page

Figure 1: netCDF classic data model .......................................................................................13

Tables Table 1 -- NetCDF-specific Definitions ..................................................................................11

3 © 2011 Open Geospatial Consortium

OGC 10-090r3

i. Abstract This document specifies the network Common Data Form (netCDF) core standard and extension mechanisms. The OGC netCDF encoding supports electronic encoding of geospatial data, specifically digital geospatial information representing space and time-varying phenomena.

NetCDF is a data model for array-oriented scientific data. A freely distributed collection of access libraries implementing support for that data model, and a machine-independent format are available. Together, the interfaces, libraries, and format support the creation, access, and sharing of multi-dimensional scientific data.

ii. Keywords Ogcdoc, netcdf, netcdf-core, multi-dimensional

4

OGC 10-090r3

iii. Preface This document specifies the core of the OGC netCDF encoding standard.

iv. Terms and definitions This document uses the specification terms defined in Subclause 5.3 of [OGC 06-121r8], which is based on the ISO/IEC Directives, Part 2, Rules for the structure and drafting of International Standards. In particular, the word “shall” (not “must”) is the verb form used to indicate a requirement to be strictly followed to conform to this standard.

v. Submitting organizations The following organizations submitted this Candidate Implementation Specification to the Open Geospatial Consortium Inc. •

IMAA-CNR Italy

METEO-FRANCE

Natural Environment Research Council (NERC)

Northrop Grumman Corporation

University Corporation for Atmospheric Research (UCAR)

US National Oceanic and Atmospheric Administration (NOAA)

vi. Submission contact points Name Ben Domenico Stefano Nativi

Organization UCAR Unidata University of Florence, CNR/IMAA

vii. Changes to the OpenGIS® Abstract Specification The OpenGIS® Abstract Specification does not require any changes to accommodate the technical contents of this (part of this) document.

viii.

Future work

Based on this netCDF core standard, several extensions are foreseen. An outline of how these extensions can be defined is provided in the CF-netCDF Primer, OGC-10-091r3. 5 © 2011 Open Geospatial Consortium

OGC 10-090r3

Foreword Attention is drawn to the possibility that some of the elements of this document may be the subject of patent rights. The Open Geospatial Consortium shall not be held responsible for identifying any or all such patent rights. Recipients of this document are requested to submit, with their comments, notification of any relevant patent claims or other intellectual property rights of which they may be aware that might be infringed by any implementation of the standard set forth in this document, and to provide supporting documentation.

6

OGC 10-090r3

Introduction The OGC netCDF encoding supports electronic encoding of geospatial data, specifically digital geospatial information representing space and time-varying phenomena. This document specifies the netCDF core; every netCDF encoding shall adhere to the mandatory requirements as specified in this standard.

NetCDF (network Common Data Form) is a data model for array-oriented scientific data. A freely distributed collection of access libraries implementing support for that data model, and a machine-independent format are available. Together, the interfaces, libraries, and format support the creation, access, and sharing of multi-dimensional scientific data. NetCDF data is intended to make possible the creation of collections of data that are: • • • • • •

Self-Describing: A netCDF dataset may include descriptive information about the data they contain. Hence a netCDF dataset may constitute a complete and independent unit with no need for external metadata. Portable: Computers with different ways of storing integers, characters, and floating point numbers can access netCDF data. Direct-access: A small subset of a large data set may be accessed efficiently, without first reading through all the preceding data. Appendable: Data may be appended to a properly structured netCDF file without copying the data set or redefining its structure. Sharable: One writer and multiple readers may simultaneously access the same netCDF file. Using parallel netCDF interfaces, multiple writers may write a file concurrently. Archivable: Access to current and earlier forms of netCDF data will be supported by current and future versions of the software.

The purpose of netCDF is to provide a data model, software libraries, and machineindependent data format for geoscience data. Together, the netCDF interfaces, libraries, and format support the creation, access, and sharing of scientific data. With suitable community conventions, netCDF can help improve interoperability among data providers, data users, and data services.

7 © 2011 Open Geospatial Consortium

OGC 10-090r3

OGC Abstract Specification: NetCDF Core

1

Scope

This OGC standard defines the netCDF data model and the core set of requirements to which every netCDF encoding must adhere. Extensions to the NetCDF core standard add further functionality to the core requirements. In particular, netCDF extensions to the core are required for specific encodings, such as the 64-bit Offset Format. This document indicates which extensions, at minimum, need to be considered in addition to the core for creating useful standards that can be implemented to meet interoperability requirements of domains and information communities. 2

Conformance

Standardization targets are netCDF implementations (currently: encodings). This document establishes a single requirements class, core, of http://www.opengis.net/spec/netcdf/1.0/req/core with a single pertaining conformance class, core, with URI http://www.opengis.net/spec/netcdf/1.0/conf/core. Requirements and conformance test URIs defined in this document are relative to http://www.opengis.net/spec/netcdf/1.0/. Annex A (normative) specifies conformance tests which shall be exercised by any encoded dataset claiming to implement an OGC netCDF encoding. 3

Normative references

The OGC NetCDF Core standard consists solely of this document. The complete standard is identified by OGC URI http://www.opengis.net/spec/netcdf/1.0. The document has OGC URI http://www.opengis.net/doc/IS/netcdf/1.0. 4

Terms and definitions

For the purposes of this document, the terms and definitions given in the above references apply. In addition, the following terms and definitions apply. 4.1

attribute

Attributes hold metadata. An attribute contains information about properties of a variable or an entire dataset. The usage of this term in the context of netCDF is given in Chapter 6. 8

OGC 10-090r3

4.2

coordinate variable

A coordinate variable is a variable that identifies a coordinate axis. 4.3

data

The ISO definition of data is the reinterpretable representation of information in a formalized manner suitable for communication, interpretation, or processing [ISO/IEC 2382-1]. 4.4

data model

A data model is a description of the organization of data in a manner that reflects an information structure [ISO/IEC 11179-1]. 4.5

data type

According to ISO, the definition of a data type is the specification of a value domain with operations allowed on values in this domain [ISO 19103]. The usage of this term in the context of netCDF is given in Chapter 6. 4.6

data value

According to OGC Observations and Measurements, a data value is the result of a specialized event called an observation. An observation is an act of observing a property or phenomenon, with the goal of producing an estimate of the value of the property [OGC 07-022r1]. 4.7

dataset

According to ISO, a dataset is an identifiable collection of data [ISO 19101]. 4.8

dimension

Dimensions are used to specify variable shapes, common grids, and coordinate systems. The usage of this term in the context of netCDF is given in Chapter 6. Note that certain specifications of common grids and coordinate systems are done in netCDF conventions which are beyond the scope of this netCDF core specification and are part of extension specifications. 4.9

domain

A domain is a well-defined set [ISO 19103]. 4.10 encoding

An encoding is a conversion of data into a series of codes [ISO 19118]. 4.11 global attribute (dataset attribute)

Global attributes apply to a whole data set and may be used to record properties of all the data in a file, such as processing history or conventions used. 9 © 2011 Open Geospatial Consortium

OGC 10-090r3 4.12 grid

A grid is a network composed of two or more sets of curves in which the members of each set intersect the members of the other sets in an algorithmic way [ISO 19123]. Note that certain specifications of common grids and coordinate systems are done in netCDF conventions which are beyond the scope of this netCDF core specification and are part of extension specifications. 4.13 metadata

Metadata is data about data [ISO 19115]. 4.14 model

A model is an abstraction of some aspects of reality [ISO 19109]. 4.15 netCDF

NetCDF (network Common Data Form) is a data model for array-oriented scientific data, a freely distributed collection of access libraries implementing support for that data model, and a machine-independent format. Together, the interfaces, libraries, and format support the creation, access, and sharing of scientific data. The classic model represents information in a netCDF data set using dimensions, variables, and attributes, to capture the meaning of array-oriented scientific data. Note that this document is the specification of the netCDF classic data model. The formal requirements are given in Chapter 6. 4.16 netCDF conventions

The mere use of netCDF is not sufficient to make data "self-describing" and meaningful to both humans and machines. The names of variables and dimensions should be meaningful and conform to any relevant conventions. Dimensions should have corresponding coordinate variables where sensible. Conventions provide a mechanism whereby a community can specify standard ways to represent quantities and coordinate systems within the simple framework provided by netCDF, using only dimensions, variables, attributes, and a limited set of six primitive types. Note that the specification of conventions is not covered in the core netCDF specification, but is left to be done in extension specifications. 4.17 record

A record is a finite, named collection of related items (objects or values). The usage of this term in the context of netCDF is given in Chapter 6.

10

OGC 10-090r3

4.18 record dimension (unlimited length dimension)

In the netCDF classic model, at most one dimension can have the unlimited length, which means variables can grow along that dimension. Record dimension is another term for an unlimited dimension. The usage of this term in the context of netCDF is given in Chapter 6. 4.19 shape

The shape of a variable is specified with a list of zero or more dimensions. The usage of this term in the context of netCDF is given in Chapter 6. 4.20 variable

A variable has a name, type, shape, attributes, and values. In face, much of the netCDF specification consists of defining the specific characteristics of variables. Variables hold data values. In the netCDF model, a variable can hold a multidimensional array of values of the same type. The usage of this term in the context of netCDF is given in Chapter 6. 4.21 variable attribute

Variable attributes record the properties of one variable. The usage of this term in the context of netCDF is given in Chapter 6. 4.22 NetCDF-specific definitions

The following table lists the definitions specific to the context of this specification. They are all of definition type “property.” The base URI to be used with the tokens is: http://www.opengis.net/def/property/netcdf/1.0/{URI_token}

Table 1 -- NetCDF-specific Definitions Defined Term

URI Token

Source Clause in this document: OGC 10-090

attribute

attribute

4.1

coordinate variable

coordinateVariable

4.2

dimension

dimension

4.6

global attribute

globalAttribute

4.11

11 © 2011 Open Geospatial Consortium

OGC 10-090r3

netCDF

netcdf

4.15

netCDF conventions

netcdfConventions

4.16

record

record

4.17

record dimension

recordDimension

4.18

shape

shape

4.19

variable

variable

4.20

variable attribute

variableAttribute

4.20

5

Document Conventions

5.1

UML notation

All the diagrams that appear in this specification are presented using the Unified Modeling Language (UML) static structure diagram, as described in Subclause 5.2 of OGC Web Services Common [OGC 06-121r8]. 5.2

Data dictionary tables

The UML model data dictionary is specified herein in a series of tables. The contents of the columns in these tables are described in Subclause 5.5 of [OGC 06-121r8]. The contents of these data dictionary tables are normative, including any table footnotes. 5.3

Namespace prefix conventions

Since there are no XML schemas used in this specification, there are no namespace mappings. It is possible that extensions may involve schemas, in which case the namespace mappings will be listed in those specification documents. 6

NetCDF classic data model

This Clause specifies the underlying data model for a netCDF classic dataset used in the further Clauses of this standard. 6.1

NetCDF classic model overview

The classic model represents information in a netCDF data set using dimensions, variables, and attributes, to capture the meaning of array-oriented scientific data. Figure 1 presents a UML diagram of the classic data model.

12

OGC 10-090r3

6.2

NetCDF classic data model UML notation

Figure 1: netCDF classic data model For a more comprehensive explanation of the netCDF data model, see the NetCDF User's Guide[1] or the online NetCDF Workshop for Developers and Data Providers [3]. Requirement 1 http://www.opengis.net/spec/netcdf/1.0/req/core/data-model-elements: NetCDF classic datasets shall represent information using dimensions, variables and attributes using the primitive data types as shown in the UML diagram in Figure 1. 6.3

Primitive data types

Requirement 2 http://www.opengis.net/spec/netcdf/1.0/req/core/primitive-data-types: Variables and attributes shall have one of six primitive data types: char, byte, short, int, float, double. 6.4

Variables

Variables hold data values. In the classic model, a variable can hold a multidimensional array of values of the same type. A variable has a name, type, shape, attributes, and values. The shape of a variable is specified with a list of zero or more dimensions: •

0 dimensions: a scalar variable with only one value.

1 dimension: a 1-D (vector) variable.

2 dimensions: a 2-D (matrix or grid) variable. 13

© 2011 Open Geospatial Consortium

OGC 10-090r3

...

N dimensions: a N-D (matrix or grid) variable.

A variable may have zero or more variable attributes. Requirement 3 http://www.opengis.net/spec/netcdf/1.0/req/core/variable-name-typevalue: A variable shall have a name, type, and data values. Requirement 4 http://www.opengis.net/spec/netcdf/1.0/req/core/variable-shape: The shape of a variable shall be specified with a list of zero or more dimensions. 6.5

Dimensions

Dimensions are used to specify variable shapes, common grids, and coordinate systems A dimension has a name and a length. Dimensions may be shared among variables, indicating a common grid. Dimensions may be associated with coordinate variables to identify coordinate axes. In the classic model, at most one dimension can have the unlimited length, which means variables can grow along that dimension. Record dimension is another term for an unlimited dimension. (In the enhanced model, multiple dimensions can have the unlimited length.) Note that certain specifications of common grids and coordinate systems are done in netCDF conventions which are beyond the scope of this netCDF core specification and are part of extension specifications. Likewise this core specification is confined to the netCDF classic data model so the specification of the enhanced model is left to an extension specification. Requirement 5 http://www.opengis.net/spec/netcdf/1.0/req/core/dimension-shapes: Dimensions shall specify variable shapes which may be shared as common grids. Requirement 6 http://www.opengis.net/spec/netcdf/1.0/req/core/dimension-namelength: A dimension shall have a name and a length. Requirement 7 http://www.opengis.net/spec/netcdf/1.0/req/core/record-dimension: At most one dimension (the record dimension) shall have unlimited length 6.5.1 Attribute

Attributes hold metadata. An attribute contains information about properties of a variable or an entire data set. Variable attributes may be used to specify properties such as units. Attributes that apply to a whole data set, also called global attributes, may be used to record properties of all the data in a file, such as processing history or conventions used. An attribute may have zero, one, or multiple values (1-D), but attributes cannot be multidimensional. 14

OGC 10-090r3

NetCDF conventions are defined primarily in terms of attributes. Thus the names of attributes are typically standardized in conventions rather than the names of variables. NetCDF conventions are specified in extensions to this core specification. An attribute may have zero, one, or multiple values (one dimensional). A netCDF dataset may have zero or more global attributes. Requirement 8 http://www.opengis.net/spec/netcdf/1.0/req/core/global-attributemetadata: Global attributes shall hold metadata about the entire dataset. Requirement 9 http://www.opengis.net/spec/netcdf/1.0/req/core/variable-attribute: A variable attribute shall hold metadata about one variable. Requirement 10 http://www.opengis.net/spec/netcdf/1.0/req/core/attribute-dimension: An attribute shall have at most one dimension.

15 © 2011 Open Geospatial Consortium

OGC 10-090r3

Bibliography

IETF RFC 2396, Uniform Resource Identifiers (URI): Generic Syntax. IETF, 1998 [ISO 19101, Geographic information -- Reference model. ISO, 2002] (Dataset) [ISO 19103, Geographic information -- Conceptual schema language, 2005 ] (Domain) [ISO 19115, Geographic information – Metadata, 2003] (Metadata) [ISO 19118, Geographic information – Encoding, 2005] (Encoding) [ISO 19123, Geographic information -- Schema for coverage geometry and functions, 2005] (Grid) [ISO/IEC 2382-1, Information technology -- Vocabulary -- Part 1: Fundamental terms, 1993] (Data and data type.) [OGC 07-022r1], Observations and Measurments – Part1 – Observation Schema. (Data value)

NASA ESDS-RFC-011v2.00 R. Rew, E. Hartnett, D. Heimbigner, E. Davis, J. Caron: NetCDF Classic and 64-bit Offset File Formats CF-netCDF Primer [OGC 10-091r3] http://www.esdswg.org/spg/rfc/esds-rfc-011/ESDS-RFC-011v2.00.pdf Unidata UCAR, NetCDF Reference Document, 2009 http://www.unidata.ucar.edu/netcdf/docs/ Unidata UCAR, NetCDF User Guide http://www.unidata.ucar.edu/netcdf/docs/netcdf.html Unidata UCAR, NetCDF Reference Implementations ftp://ftp.unidata.ucar.edu/pub/netcdf/netcdf.tar.gz

16

OGC 10-090r3

Annex A: Conformance Class Abstract Test Suite (Normative). A netCDF encoding must satisfy the following characteristics to be conformant with this specification. Note, however, that an encoding extension is needed in order to actually implement executable tests corresponding to these abstract tests.

A.1

Conformance Test Class: netCDF Core

Applies for conformance class netCDF with URI http://www.opengis.net/spec/netcdf/1.0/conf/core

A.1.1 Test ID

Requirement 1 Conformance Test for Requirement 1 http://www.opengis.net/spec/netcdf/1.0/conf/core/data-model-elements:

Test purpose

NetCDF classic datasets shall represent information using dimensions, variables and attributes using the primitive data types as shown in the UML diagram in Figure 1.

Test method

Open the dataset and check that it represents information using dimensions, variables and attributes using the primitive data types as shown in the UML diagram in Figure 1.

A.1.2 Test ID

Requirement 2 Conformance Test for Requirement 2 http://www.opengis.net/spec/netcdf/1.0/conf/core/primitive-data-types

Test purpose

Variables and attributes shall have one of six primitive data types: char, byte, short, int, float, double.

Test method

Open the dataset and check that all variables and attributes have one of six primitive data types: char, byte, short, int, float, double.

.

17 © 2011 Open Geospatial Consortium

OGC 10-090r3

A.1.3 Test ID

Requirement 3 Conformance Test for Requirement 3 http://www.opengis.net/spec/netcdf/1.0/conf/core/variable-name-typevalue

Test purpose

A variable shall have a name, type, and values.

Test method

Open the dataset and check that all variables have a name, type, and values.

A.1.4 Test ID

Requirement 4 Conformance Test for Requirement 4 http://www.opengis.net/spec/netcdf/1.0/conf/core/variable-shape

Test purpose

The shape of a variable shall be specified with a list of zero or more dimensions

Test method

Open the dataset and check that, for any variable for which there is a shape, the shape is specified with a list of zero or more dimensions.

A.1.5 Test ID

Requirement 5 Conformance Test for Requirement 5 http://www.opengis.net/spec/netcdf/1.0/conf/core/dimension-shapes

Test purpose

Dimensions shall specify variable shapes which may be shared as common grids.

Test method

Open the dataset and check that, for any variable for which there is a shape dimensions specify the variable shape.

18

OGC 10-090r3

A.1.6 Test ID

Requirement 6 Conformance Test for Requirement 6 http://www.opengis.net/spec/netcdf/1.0/conf/core/dimension-name-length

Test purpose

A dimension shall have a name and a length.

Test method

Open the dataset and check that all dimensions have a name and a length.

A.1.7 Test ID

Requirement 7 Conformance Test for Requirement 7 http://www.opengis.net/spec/netcdf/1.0/conf/core/record-dimension

Test purpose

At most one dimension (the record dimension) shall have unlimited length

Test method

Open the dataset and check that at most one dimension (the record dimension) has unlimited length.

A.1.8 Test ID

Requirement 8 Conformance Test for Requirement 8 http://www.opengis.net/spec/netcdf/1.0/conf/core/global-attribute-metadata

Test purpose

Global attributes shall hold metadata about the entire dataset

Test method

Open the dataset and check that any global attributes present hold metadata about the entire dataset..

19 © 2011 Open Geospatial Consortium

OGC 10-090r3

A.1.9 Test ID

Requirement 9 Conformance Test for Requirement 9 http://www.opengis.net/spec/netcdf/1.0/conf/core/variable-attribute

Test purpose

A variable attribute shall hold metadata about one variable

Test method

Open the dataset and check that each variable attribute holds metadata about one variable

A.1.10 Test ID

Requirement 10 Conformance Test for Requirement 10 http://www.opengis.net/spec/netcdf/1.0/conf/core/attribute-dimension

Test purpose

An attribute shall have at most one dimension.

Test method

Open the dataset and check that each attribute has at most one dimension.

„ end of ATS –

20

OGC 10-090r3

Annex B: Revision history Date

Release

Author

Paragraph modified All

Description

2010-08-27

1.0.0

Ben Domenico, Stefano Nativi

2010-10-20

1.0.1

Bruce Wright and Ben Domenico

4, 4.21, 6.4, 6.5, 6.5.1, A.1.3, A.1.5, A.1.10, A.1.13

Added one definition, removed unnecessary requirements and corresponding conformance tests.

2010-12-28

1.0.2

Ben Domenico

4.22

Added sentence specifying base URI for definitions. Reformatted section so URIs appear on separate lines for clarity

2010-12-28

1.0.2

Ben Domenico

6.,Annex A

Added leading “.” to relative URIs.

2010-12-28

1.0.2

Ben Domenico

2,3

Changed URI references according to recommendations of OGC Naming Authority

2010-12-28

1.0.2

Ben Domenico

Table of Contents

Updated Table of Contents to get page numbers correct after edits.

2011-01-07

1.0.2

Ben Domenico

5.3

Removed Table 2: Namespace mappings table because no schemas are used in this specification

2011-01-22

1.0.2

Carl Reed

Various

Prepare for publication as OGC standard

2011-02-16

1.0.2

Ben Domenico

Various

Prepare for publication

Created

21 © 2011 Open Geospatial Consortium

Related documents

Record · ID 601128 · SHA-256 b3ea1bdcd906029b
Conceptio Open Knowledge Archive — every document is proof-bundled with source, license, and retrieval metadata.