上の文法によれば、 最も小さな有効なNetCDF fileで次元、変数、属性を持たない、従ってデータを持たないものを導くことができます。空の NetCDFファイルのCDL表現は次のようになります:
netcdf empty { }
この 空のNetCDFファイルは32バイトの大きさで、 CDL表現から `ncgen -b empty.cdl' を使って空NetCDFファイルを生成して確認することが出来ます。この空ファイルはそれがNetCDF 1版のファイルであることを示す4バイトの”マジックナンバー”である `C' , `D' , `F' , `\001' で始まります。続いて、記録数・次元の空配列・グローバル属性の空配列・変数の空配列を表わす7つの32ビット0が後にきます。
以下は、次のUnixコマンドを使ってビッグエンディアンマシン上で生成されたファイルの(編集済みの)ダンプです。
od -xcs empty.nc
ファイルの16バイトの各部分は4行で表示されています。最初の行はバイトを16進数表示し、 2行目はを文字表示しています。3行目は2バイトごとにグループ化して、それを符号付16ビット整数として表示しています。 4行目は(手作業で追加されたものであるが)バイトをNetCDF要素及び値として解釈したものを表示している。
4344 4601 0000 0000 0000 0000 0000 0000
C D F 001 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0
17220 17921 00000 00000 00000 00000 00000 00000
[magic number ] [ 0 records ] [ 0 dimensions (ABSENT) ]
0000 0000 0000 0000 0000 0000 0000 0000
\0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0
00000 00000 00000 00000 00000 00000 00000 00000
[ 0 global atts (ABSENT) ] [ 0 variables (ABSENT) ]
もう少し意味のある例として、このような CDLを考えてみましょう。
netcdf tiny {
dimensions:
dim = 5;
variables:
short vx(dim);
data:
vx = 3, 1, 4, 1, 5 ;
}
これは92バイトNetCDFファイルに対応します。このファイルの変数済みのダンプは下記のようになります。
4344 4601 0000 0000 0000 000a 0000 0001
C D F 001 \0 \0 \0 \0 \0 \0 \0 \n \0 \0 \0 001
17220 17921 00000 00000 00000 00010 00000 00001
[magic number ] [ 0 records ] [NC_DIMENSION ] [ 1 dimension ]
0000 0003 6469 6d00 0000 0005 0000 0000
\0 \0 \0 003 d i m \0 \0 \0 \0 005 \0 \0 \0 \0
00000 00003 25705 27904 00000 00005 00000 00000
[ 3 char name = "dim" ] [ size = 5 ] [ 0 global atts
0000 0000 0000 000b 0000 0001 0000 0002
\0 \0 \0 \0 \0 \0 \0 013 \0 \0 \0 001 \0 \0 \0 002
00000 00000 00000 00011 00000 00001 00000 00002
(ABSENT) ] [NC_VARIABLE ] [ 1 variable ] [ 2 char name =
7678 0000 0000 0001 0000 0000 0000 0000
v x \0 \0 \0 \0 \0 001 \0 \0 \0 \0 \0 \0 \0 \0
30328 00000 00000 00001 00000 00000 00000 00000
"vx" ] [1 dimension ] [ with ID 0 ] [ 0 attributes
0000 0000 0000 0003 0000 000c 0000 0050
\0 \0 \0 \0 \0 \0 \0 003 \0 \0 \0 \f \0 \0 \0 P
00000 00000 00000 00003 00000 00012 00000 00080
(ABSENT) ] [type NC_SHORT] [size 12 bytes] [offset: 80]
0003 0001 0004 0001 0005 8001
\0 003 \0 001 \0 004 \0 001 \0 005 200 001
00003 00001 00004 00001 00005 -32767
[ 3] [ 1] [ 4] [ 1] [ 5] [fill ]