HDF5 File Signature |
- This field contains a constant value and can be used to
+ |
+ This field contains a constant value and can be used to
quickly identify a file as being an HDF5 file. The
constant value is designed to allow easy identification of
an HDF5 file and to allow certain types of data corruption
to be detected. The file signature of an HDF5 file always
contains the following values:
+
-
+
+
- decimal |
+ Decimal: |
137 |
72 |
68 |
@@ -360,33 +377,33 @@ TABLE.desc TD { }
- hexadecimal |
- 89 |
- 48 |
- 44 |
- 46 |
- 0d |
- 0a |
- 1a |
- 0a |
+ Hexadecimal: |
+ 89 |
+ 48 |
+ 44 |
+ 46 |
+ 0d |
+ 0a |
+ 1a |
+ 0a |
- ASCII C Notation |
- \211 |
- H |
- D |
- F |
- \r |
- \n |
- \032 |
- \n |
+ ASCII C Notation: |
+ \211 |
+ H |
+ D |
+ F |
+ \r |
+ \n |
+ \032 |
+ \n |
- This signature both identifies the file as an HDF5 file
+ This signature both identifies the file as an HDF5 file
and provides for immediate detection of common
file-transfer problems. The first two bytes distinguish
HDF5 files on systems that expect the first two bytes to
@@ -400,10 +417,15 @@ TABLE.desc TD { }
under MS-DOS. The final line feed checks for the inverse
of the CR-LF translation problem. (This is a direct
descendent of the PNG file
- signature.)
+ signature.)
+
+
+ This field is present in version 0+ of the superblock.
+
+
-
+
Version Number of the Super Block |
This value is used to determine the format of the
@@ -413,13 +435,16 @@ TABLE.desc TD { }
determine how the information in the super block is
formatted.
- The only value currently valid in this field is '0', which
- indicates that the super block is formatted as described above.
+
+ Values of 0 and 1 are defined for this field.
+
+
+ This field is present in version 0+ of the superblock.
|
-
+
Version Number of the File Free-space Information |
This value is used to determine the format of the
@@ -429,10 +454,13 @@ TABLE.desc TD { }
indicates that the free space index is formatted as described
below.
+
+ This field is present in version 0+ of the superblock.
+
|
-
+
Version Number of the Root Group Symbol Table Entry |
This value is used to determine the format of the
@@ -446,10 +474,13 @@ TABLE.desc TD { }
indicates that the root group symbol table entry is formatted as
described below.
+
+ This field is present in version 0+ of the superblock.
+
|
-
+
Version Number of the Shared Header Message Format |
This value is used to determine the format of the
@@ -463,26 +494,41 @@ TABLE.desc TD { }
indicates that shared header messages are formatted as
described below.
+
+ This field is present in version 0+ of the superblock.
+
|
-
+
Size of Offsets |
- This value contains the number of bytes used to store
+ |
+ This value contains the number of bytes used to store
addresses in the file. The values for the addresses of
objects in the file are offsets relative to a base address,
usually the address of the super block signature. This
allows a wrapper to be added after the file is created
- without invalidating the internal offset locations. |
+ without invalidating the internal offset locations.
+
+
+ This field is present in version 0+ of the superblock.
+
+
-
+
Size of Lengths |
- This value contains the number of bytes used to store
- the size of an object. |
+
+ This value contains the number of bytes used to store
+ the size of an object.
+
+
+ This field is present in version 0+ of the superblock.
+
+ |
-
+
Group Leaf Node K |
Each leaf node of a group B-tree will have at
@@ -494,27 +540,34 @@ TABLE.desc TD { }
See the description of B-trees below.
+
+ This field is present in version 0+ of the superblock.
+
|
-
+
Group Internal Node K |
- Each internal node of a group B-tree will have
- at least K pointers to other nodes but not more than 2K
- pointers. If the group has only one internal
- node then it might have fewer than K pointers.
+ Each internal node of a group B-tree will have at
+ least this many entries but not more than twice this
+ many. If the group has only one internal
+ node then it might have fewer entries.
This value must be greater than zero.
See the description of B-trees below.
+
+ This field is present in version 0+ of the superblock.
+
|
-
+
File Consistency Flags |
- This value contains flags to indicate information
+ |
+ This value contains flags to indicate information
about the consistency of the information contained
within the file. Currently, the following bit flags are
defined:
@@ -533,39 +586,79 @@ TABLE.desc TD { }
normal access to a file and only set after the file's
consistency is guaranteed by the library or a
consistency utility.
+
+
+ This field is present in version 0+ of the superblock.
+
|
-
+
+ Indexed Storage Internal Node K |
+
+ Each internal node of a indexed storage B-tree will have at
+ least this many entries but not more than twice this
+ many. If the group has only one internal
+ node then it might have fewer entries.
+
+ This value must be greater than zero.
+
+ See the description of B-trees below.
+
+
+ This field is present in version 1+ of the superblock.
+
+ |
+
+
+
Base Address |
- This is the absolute file address of the first byte of
+ |
+ This is the absolute file address of the first byte of
the HDF5 data within the file. The library currently
constrains this value to be the absolute file address
of the super block itself when creating new files;
future versions of the library may provide greater
flexibility. Unless otherwise noted,
all other file addresses are relative to this base
- address. |
+ address.
+
+
+ This field is present in version 0+ of the superblock.
+
+
-
+
Address of Global Free-space Index |
- Free-space management is not yet defined in the HDF5
+ |
+ Free-space management is not yet defined in the HDF5
file format and is not handled by the library.
Currently this field always contains the
undefined address.
+
+
+ This field is present in version 0+ of the superblock.
+
+ |
-
+
End of File Address |
- This is the relative file address of the first byte past
+ |
+ This is the relative file address of the first byte past
the end of all HDF5 data. It is used to determine whether a
file has been accidently truncated and as an address where
file data allocation can occur if space from the free list is
- not used. |
+ not used.
+
+
+ This field is present in version 0+ of the superblock.
+
+
-
+
Driver Information Block Address |
This is the relative file address of the file driver
@@ -574,17 +667,26 @@ TABLE.desc TD { }
driver information block then this entry should be the
undefined address.
+
+ This field is present in version 0+ of the superblock.
+
|
-
+
Root Group Symbol Table Entry |
- This is the symbol table entry
+ |
+ This is the symbol table entry
of the root group, which serves as the entry point into
- the group graph for the file. |
+ the group graph for the file.
+
+
+ This field is present in version 0+ of the superblock.
+
+
-
+
@@ -594,62 +696,69 @@ TABLE.desc TD { }
order to reopen a file. The format of the file driver information
block is:
-
-
-
-
- Driver Information Block
+
+
-
-
-
-
- Field Name |
- Description |
+
+
+
+
+ Field Name |
+ Description |
-
+
Version |
- The version number of the driver information block. The
- file format documented here is version zero. |
+
+ The version number of the driver information block. The
+ file format documented here is version zero.
+
+ |
-
+
Driver Information Size |
- The size in bytes of the Driver Information part of this
- structure. |
+
+ The size in bytes of the Driver Information part of this
+ structure.
+
+ |
-
+
Driver Identification |
- This is an eight-byte ASCII string without null
+ |
+ This is an eight-byte ASCII string without null
termination which identifies the driver and version number
of the Driver Information block. The predefined drivers
supplied with the HDF5 library are identified by the
@@ -658,6 +767,8 @@ TABLE.desc TD { }
the original version then the last letter(s) of the
identification will be replaced by a version number in
ASCII.
+
+
For example, the various versions of the family driver
will be identified by NCSAfami , NCSAfam0 ,
NCSAfam1 , etc.
@@ -665,10 +776,13 @@ TABLE.desc TD { }
to eight characters. Subsequent identifiers will be created by
substituting sequential numerical values for the final character,
starting with zero.)
-
+
+
Identification for user-defined drivers
is arbitrary but should be unique and avoid the four character
- prefix "NCSA". |
+ prefix "NCSA".
+
+
@@ -679,7 +793,7 @@ TABLE.desc TD { }
H5FD_sb_decode functions.
-
+
@@ -708,97 +822,100 @@ TABLE.desc TD { }
Aside from that difference, internal nodes and leaf nodes
are identical.
-
-
-
-
- B-tree Nodes
+
+
+
-
+
-
(Items marked with an 'O' the above table are
of the size specified in "Size of Offsets.")
-
|
-
+
-
-
-
-
- Field Name |
- Description |
+
+
+
+
+ Field Name |
+ Description |
-
+
Signature |
- The ASCII character string "TREE " is
+ |
+ The ASCII character string "TREE " is
used to indicate the
beginning of a B-link tree node. This gives file
consistency checking utilities a better chance of
- reconstructing a damaged file. |
+ reconstructing a damaged file.
+
+
-
+
Node Type |
- Each B-link tree points to a particular type of data.
+ |
+ Each B-link tree points to a particular type of data.
This field indicates the type of data as well as
implying the maximum degree K of the tree and
the size of each Key field.
-
-
+
+
+
- Node Type |
- Description |
+ Node Type |
+ Description |
0 |
@@ -812,57 +929,73 @@ TABLE.desc TD { }
-
+
Node Level |
- The node level indicates the level at which this node
+ |
+ The node level indicates the level at which this node
appears in the tree (leaf nodes are at level zero). Not
only does the level indicate whether child pointers
point to sub-trees or to data, but it can also be used
to help file consistency checking utilities reconstruct
- damanged trees. |
+ damanged trees.
+
+
Entries Used |
- This determines the number of children to which this
+ |
+ This determines the number of children to which this
node points. All nodes of a particular type of tree
have the same maximum degree, but most nodes will point
to less than that number of children. The valid child
pointers and keys appear at the beginning of the node
and the unused pointers and keys appear at the end of
the node. The unused pointers and keys have undefined
- values. |
+ values.
+
+
Address of Left Sibling |
- This is the relative file address of the left sibling of
+ |
+ This is the relative file address of the left sibling of
the current node. If the current
node is the left-most node at this level then this field
- is the undefined address. |
+ is the undefined address.
+
+
Address of Right Sibling |
- This is the relative file address of the right sibling of
+ |
+ This is the relative file address of the right sibling of
the current node. If the current
node is the right-most node at this level then this
- field is the undefined address. |
+ field is the undefined address.
+
+
Keys and Child Pointers |
- Each tree has 2K+1 keys with 2K
+ |
+ Each tree has 2K+1 keys with 2K
child pointers interleaved between the keys. The number
of keys and child pointers actually containing valid
values is determined by the node's Entries Used field.
If that field is N then the B-link tree contains
- N child pointers and N+1 keys. |
+ N child pointers and N+1 keys.
+
+
Key |
- The format and size of the key values is determined by
+ |
+ The format and size of the key values is determined by
the type of data to which this tree points. The keys are
ordered and are boundaries for the contents of the child
pointer; that is, the key values represented by child
@@ -870,37 +1003,42 @@ TABLE.desc TD { }
N+1. Whether the interval is open or closed on
each end is determined by the type of data to which the
tree points.
-
+
+
+
The format of the key depends on the node type.
For nodes of node type 0 (group nodes), the key is formatted as
follows:
-
-
- A single field of Size of Lengths
- bytes |
+
+
+ A single field of Size of Lengths
+ bytes: |
Indicates the byte offset into the local heap
for the first object name in the subtree which
- that key describes. |
+ that key describes.
+
-
+
+
+
For nodes of node type 1 (chunked raw data nodes), the key is
formatted as follows:
-
-
- Bytes 1-4 |
+
+
+ Bytes 1-4: |
Size of chunk in bytes. |
-
- Bytes 4-8 |
+
+ Bytes 4-8: |
Filter mask, a 32-bit bitfield indicating which
filters have been applied to that chunk. |
-
- N 64-bit fields |
+
+ N 64-bit fields: |
A 64-bit index indicating the offset of the
chunk within the dataset where N is the number
of dimensions of the dataset. For example, if
@@ -911,7 +1049,8 @@ TABLE.desc TD { }
|
-
+
+
@@ -931,27 +1070,27 @@ TABLE.desc TD { }
-
+
Conceptually, each B-tree node looks like this:
-
- key[0] | |
- child[0] | |
- key[1] | |
- child[1] | |
- key[2] | |
- ... | |
- ... | |
- key[N-1] | |
- child[N-1] | |
+ key[0] | |
+ child[0] | |
+ key[1] | |
+ child[1] | |
+ key[2] | |
+ ... | |
+ ... | |
+ key[N-1] | |
+ child[N-1] | |
key[N] |
+
where child[i] is a pointer to a sub-tree (at a level
above Level 0) or to data (at Level 0).
@@ -1006,67 +1145,76 @@ TABLE.desc TD { }
contains K symbols and the other contains
K+1 symbols.
-
-
-
-
- Group Node (A Leaf of a B-tree)
+
+
-
-
-
-
- Field Name |
- Description |
+
+
+
+
+ Field Name |
+ Description |
-
+
Signature |
- The ASCII character string "SNOD " is
+ |
+ The ASCII character string "SNOD " is
used to indicate the
beginning of a group node. This gives file
consistency checking utilities a better chance of
- reconstructing a damaged file. |
+ reconstructing a damaged file.
+
+
-
+
Version Number |
- The version number for the group node. This
+ |
+ The version number for the group node. This
document describes version 1. (There is no version '0'
- of the group node) |
+ of the group node)
+
+
-
+
Number of Symbols |
- Although all group nodes have the same length,
+ |
+ Although all group nodes have the same length,
most contain fewer than the maximum possible number of
symbol entries. This field indicates how many entries
contain valid data. The valid entries are packed at the
beginning of the group node while the remaining
- entries contain undefined values. |
+ entries contain undefined values.
+
+
-
+
Group Entries |
Each symbol has an entry in the group node.
@@ -1074,10 +1222,11 @@ TABLE.desc TD { }
There are 2K entries in each group node, where
K is the "Group Leaf Node K" value from the
super block.
+
|
-
+
@@ -1088,124 +1237,138 @@ TABLE.desc TD { }
include space for caching certain constant metadata from the
object header.
-
-
-
-
- Group Entry
+
+
+
-
+
-
(Items marked with an 'O' the above table are
of the size specified in "Size of Offsets.")
-
|
-
+
-
-
-
-
- Field Name |
- Description |
+
+
+
+
+ Field Name |
+ Description |
-
+
Name Offset |
- This is the byte offset into the group local
+ |
+ This is the byte offset into the group local
heap for the name of the object. The name is null
- terminated. |
+ terminated.
+
+
-
+
Object Header Address |
- Every object has an object header which serves as a
+ |
+ Every object has an object header which serves as a
permanent location for the object's metadata. In addition
to appearing in the object header, some metadata can be
- cached in the scratch-pad space. |
+ cached in the scratch-pad space.
+
+
-
+
Cache Type |
- The cache type is determined from the object header.
+ |
+ The cache type is determined from the object header.
It also determines the format for the scratch-pad space:
-
-
- 0 |
+
+
+ Type: |
+ Description: |
+
+
+ 0 |
No data is cached by the group entry. This
is guaranteed to be the case when an object header
has a link count greater than one.
|
-
- 1 |
+
+ 1 |
Object header metadata is cached in the group
entry. This implies that the group
entry refers to another group.
|
-
- 2 |
+
+ 2 |
The entry is a symbolic link. The first four bytes
of the scratch-pad space are the offset into the local
heap for the link value. The object header address
will be undefined.
|
-
- N |
+
+ N |
Other cache values can be defined later and
libraries that do not understand the new values will
still work properly.
|
+
-
+
Reserved |
- These four bytes are present so that the scratch-pad
+ |
+ These four bytes are present so that the scratch-pad
space is aligned on an eight-byte boundary. They are
- always set to zero. |
+ always set to zero.
+
+
-
+
Scratch-pad Space |
- This space is used for different purposes, depending
+ |
+ This space is used for different purposes, depending
on the value of the Cache Type field. Any metadata
about a dataset object represented in the scratch-pad
space is duplicated in the object header for that
@@ -1213,13 +1376,17 @@ TABLE.desc TD { }
and the size of the dataspace for a dataset whose datatype
is atomic and whose dataspace is fixed and less than
four dimensions.
+
+
Furthermore, no data is cached in the group
entry scratch-pad space if the object header for
the group entry has a link count greater than
- one. |
+ one.
+
+
-
+
Format of the Scratch-pad Space
@@ -1235,216 +1402,235 @@ TABLE.desc TD { }
contains cached metadata for another object header
in the following format:
-
-
-
-
- Object Header Scratch-pad Format
+
+
+
-
+
-
(Items marked with an 'O' the above table are
of the size specified in "Size of Offsets.")
-
|
-
+
-
-
-
-
- Field Name |
- Description |
+
+
+
+
+ Field Name |
+ Description |
-
+
Address of B-tree |
- This is the file address for the root of the
- group's B-tree. |
+
+ This is the file address for the root of the
+ group's B-tree.
+
+ |
-
+
Address of Name Heap |
- This is the file address for the group's local
- heap, in which are stored the group's symbol names. |
+
+ This is the file address for the group's local
+ heap, in which are stored the group's symbol names.
+
+ |
-
+
- If the Cache Type field contains the value two
+ If the Cache Type field contains the value two
(2) , then the scratch-pad space
contains cached metadata for another symbolic link
in the following format:
-
-
-
-
- Symbolic Link Scratch-pad Format
+
+
-
-
-
-
- Field Name |
- Description |
+
+
+
+
+ Field Name |
+ Description |
-
+
Offset to Link Value |
- The value of a symbolic link (that is, the name of the
+ |
+ The value of a symbolic link (that is, the name of the
thing to which it points) is stored in the local heap.
This field is the 4-byte offset into the local heap for
- the start of the link value, which is null terminated. |
+ the start of the link value, which is null terminated.
+
+
-
+
- A heap is a collection of small heap objects. Objects can be
+ A heap is a collection of small heap objects. Objects can be
inserted and removed from the heap at any time.
The address of a heap does not change once the heap is created.
References to objects are stored in the group table;
the names of those objects are stored in the local heap.
+
-
-
-
-
- Local Heaps
+
+
+
-
+
-
(Items marked with an 'L' the above table are
of the size specified in "Size of Lengths.")
-
|
-
(Items marked with an 'O' the above table are
of the size specified in "Size of Offsets.")
-
|
-
+
-
-
- Field Name |
- Description |
+
+
+ Field Name |
+ Description |
-
+
Signature |
- The ASCII character string "HEAP "
+ |
+ The ASCII character string "HEAP "
is used to indicate the
beginning of a heap. This gives file consistency
checking utilities a better chance of reconstructing a
- damaged file. |
+ damaged file.
+
+
-
+
Version |
- Each local heap has its own version number so that new
+ |
+ Each local heap has its own version number so that new
heaps can be added to old files. This document
describes version zero (0) of the local heap.
+
+ |
-
+
Data Segment Size |
- The total amount of disk memory allocated for the heap
+ |
+ The total amount of disk memory allocated for the heap
data. This may be larger than the amount of space
required by the objects stored in the heap. The extra
- unused space in the heap holds a linked list of free blocks. |
+ unused space in the heap holds a linked list of free blocks.
+
+
-
+
Offset to Head of Free-list |
- This is the offset within the heap data segment of the
+ |
+ This is the offset within the heap data segment of the
first free block (or the
undefined address if there is no
- free block). The free block contains <Size of Lengths> bytes that
+ free block). The free block contains "Size of Lengths" bytes that
are the offset of the next free chunk (or the
- undefined address
- if this is the last free chunk) followed by <Size of Lengths>
- bytes that store the size of this free chunk. |
+ undefined address if this is the
+ last free chunk) followed by "Size of Lengths" bytes that store
+ the size of this free chunk.
+
+
-
+
Address of Data Segment |
- The data segment originally starts immediately after
+ |
+ The data segment originally starts immediately after
the heap header, but if the data segment must grow as a
result of adding more objects, then the data segment may
be relocated, in its entirety, to another part of the
- file. |
+ file.
+
+
@@ -1453,7 +1639,7 @@ TABLE.desc TD { }
- Each HDF5 file has a global heap which stores various types of
+ Each HDF5 file has a global heap which stores various types of
information which is typically shared between datasets. The
global heap was designed to satisfy these goals:
@@ -1462,23 +1648,19 @@ TABLE.desc TD { }
resulting in repeated file I/O requests. Since global heap
objects will typically be shared among several datasets, it is
probable that the object will be accessed repeatedly.
-
-
Collections of related global heap objects should result in
fewer and larger I/O requests. For instance, a dataset of
object references will have a global heap object for each
reference. Reading the entire set of object references
should result in a few large I/O requests instead of one small
I/O request for each reference.
-
-
It should be possible to remove objects from the global heap
and the resulting file hole should be eligible to be reclaimed
for other uses.
-
+
- The implementation of the heap makes use of the memory
+ The implementation of the heap makes use of the memory
management already available at the file level and combines that
with a new top-level object called a collection to
achieve Goal B. The global heap is the set of all collections.
@@ -1486,195 +1668,223 @@ TABLE.desc TD { }
each collection contains one or more global heap objects. For
the purposes of disk I/O and caching, a collection is treated as
an atomic object.
+
-
-
-
-
- A Global Heap Collection
+
+
-
-
-
-
- Field Name |
- Description |
+
+
+
+
+ Field Name |
+ Description |
-
+
Signature |
- The ASCII character string "GCOL "
+ |
+ The ASCII character string "GCOL "
is used to indicate the
beginning of a collection. This gives file consistency
checking utilities a better chance of reconstructing a
- damaged file. |
+ damaged file.
+
+
-
+
Version |
- Each collection has its own version number so that new
+ |
+ Each collection has its own version number so that new
collections can be added to old files. This document
describes version one (1) of the collections (there is no
version zero (0)).
+
+ |
-
+
Collection Data Size |
- This is the size in bytes of the entire collection
+ |
+ This is the size in bytes of the entire collection
including this field. The default (and minimum)
collection size is 4096 bytes which is a typical file
system block size and which allows for 170 16-byte heap
- objects plus their overhead. |
+ objects plus their overhead.
+
+
-
+
Global Heap Object 1 through N |
- The objects are stored in any order with no
- intervening unused space. |
+
+ The objects are stored in any order with no
+ intervening unused space.
+
+ |
-
+
Global Heap Object 0 |
- Global Heap Object 0 (zero), when present, represents the free space in
- the collection. Free space always appears at the end of
- the collection. If the free space is too small to store
- the header for Object 0 (described below) then the
- header is implied and the collection contains no free space.
+ |
+ Global Heap Object 0 (zero), when present, represents the free
+ space in the collection. Free space always appears at the end of
+ the collection. If the free space is too small to store the header
+ for Object 0 (described below) then the header is implied and the
+ collection contains no free space.
+
+ |
-
+
-
-
-
-
- Global Heap Object
+
+
+
-
+
-
(Items marked with an 'L' the above table are
of the size specified in "Size of Lengths.")
-
|
-
+
-
-
-
-
- Field Name |
- Description |
+
+
+
+
+ Field Name |
+ Description |
-
+
Object ID |
- Each object has a unique identification number within a
+ |
+ Each object has a unique identification number within a
collection. The identification numbers are chosen so that
new objects have the smallest value possible with the
exception that the identifier 0 always refers to the
object which represents all free space within the
- collection. |
+ collection.
+
+
-
+
Reference Count |
- All heap objects have a reference count field. An
+ |
+ All heap objects have a reference count field. An
object which is referenced from some other part of the
file will have a positive reference count. The reference
- count for Object 0 is always zero. |
+ count for Object 0 is always zero.
+
+
-
+
Reserved |
- Zero padding to align next field on an 8-byte
- boundary. |
+
+ Zero padding to align next field on an 8-byte boundary.
+
+ |
-
- Object Size | This is the size of the the fields
- above plus the object data stored for the object. The
- actual storage size is rounded up to a multiple of
- eight. |
+
+ Object Size |
+
+ This is the size of the the fields above plus the object data
+ stored for the object. The actual storage size is rounded up to a
+ multiple of eight.
+
+ |
-
+
Object Data |
- The object data is treated as a one-dimensional array
- of bytes to be interpreted by the caller. |
+
+ The object data is treated as a one-dimensional array
+ of bytes to be interpreted by the caller.
+
+ |
-
+
@@ -1686,7 +1896,7 @@ TABLE.desc TD { }
that pointer is currently required to be the
undefined address.
- The free-space index is not otherwise publicly defined at this time.
+ The format of the free-space index is not defined at this time.
+ Type: 0x0000
+ Length: varies
+ Status: Optional, may be repeated.
+ Purpose and Description: The NIL message is used to
+ indicate a message which is to be ignored when reading the header messages
+ for a data object.
+ [Possibly one which has been deleted for some reason.]
+ Format of Data: Unspecified.
+
- Type: 0x0001
- Length: Varies according to the number of dimensions,
- as described in the following table
- Status: The Simple Dataspace message is required
- and may not be repeated. This message is currently used with
- datasets and named dataspaces.
+ Type: 0x0001
+ Length: Varies according to the number of dimensions,
+ as described in the following table.
+ Status: The Simple Dataspace message is required
+ and may not be repeated.
- The Simple Dataspace message describes the number
+ The Simple Dataspace message describes the number
of dimensions and size of each dimension that the data object
has. This message is only used for datasets which have a
simple, rectilinear grid layout; datasets requiring a more
@@ -2002,8 +2253,8 @@ TABLE.desc TD { }
must use the Complex Dataspace message for expressing
the space the dataset inhabits.
(Note: The Complex Dataspace functionality is
- not yet implemented (as of HDF5 Release 1.2). It is not described
- in this document.)
+ not yet implemented. It is not described in this document.)
+
@@ -2436,9 +2687,6 @@ TABLE.desc TD { }
Grid Point Locations . .
|
-
-
- Need some good examples, this is complex!
-->
@@ -3167,11 +3415,6 @@ TABLE.desc TD { }
of dataset data, so the format will be determined by the dataset
format.
-
-
@@ -4095,11 +4338,6 @@ the file.
-
-
Type: 0x0011
| | | |