diff options
Diffstat (limited to 'doc')
-rw-r--r-- | doc/html/ddl.html | 717 |
1 files changed, 339 insertions, 378 deletions
diff --git a/doc/html/ddl.html b/doc/html/ddl.html index 655ef96..bcf6346 100644 --- a/doc/html/ddl.html +++ b/doc/html/ddl.html @@ -1,498 +1,459 @@ -<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN"> +<!doctype html public "-//w3c//dtd html 4.0 transitional//en"> <html> <head> - <title>DDL for HDF5</title> + <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"> + <meta name="GENERATOR" content="Mozilla/4.73 [en] (WinNT; I) [Netscape]"> + <title>DDL for HDF5</title> </head> - <body bgcolor="#FFFFFF"> - <hr> -<center> -<table border=0 width=98%> -<tr><td valign=top align=left> - <a href="H5.intro.html">Introduction to HDF5</a> <br> - <a href="RM_H5Front.html">HDF5 Reference Manual</a> <br> - <a href="index.html">Other HDF5 documents and links</a> <br> - <!-- +<center><table BORDER=0 WIDTH="98%" > +<tr> +<td ALIGN=LEFT VALIGN=TOP><a href="H5.intro.html">Introduction to HDF5</a> +<br><a href="RM_H5Front.html">HDF5 Reference Manual</a> +<br><a href="index.html">Other HDF5 documents and links</a> +<br><!-- <a href="Glossary.html">Glossary</a><br> - --> -</td> -<td valign=top align=right> - And in this document, the - <a href="H5.user.html"><strong>HDF5 User's Guide:</strong></a> - <br> - <a href="Files.html">Files</a> - <a href="Datasets.html">Datasets</a> - <a href="Datatypes.html">Datatypes</a> - <a href="Dataspaces.html">Dataspaces</a> - <a href="Groups.html">Groups</a> - <br> - <a href="References.html">References</a> - <a href="Attributes.html">Attributes</a> - <a href="Properties.html">Property Lists</a> - <a href="Errors.html">Error Handling</a> - <br> - <a href="Filters.html">Filters</a> - <a href="Palettes.html">Palettes</a> - <a href="Caching.html">Caching</a> - <a href="Chunking.html">Chunking</a> - <a href="MountingFiles.html">Mounting Files</a> - <br> - <a href="Performance.html">Performance</a> - <a href="Debugging.html">Debugging</a> - <a href="Environment.html">Environment</a> - DDL - <br> - <a href="Ragged.html">Ragged Arrays</a> -</td></tr> -</table> -</center> -<hr> - - -<h1>DDL in BNF for HDF5</h1> - - -<h2>1. Introduction</h2> - -This document contains the data description language (DDL) for an HDF5 file. -The description is in Backus-Naur Form. - -<h2>2. Explanation of Symbols</h2> + --></td> + +<td ALIGN=RIGHT VALIGN=TOP>And in this document, the <b><a href="H5.user.html">HDF5 +User's Guide:</a></b> +<br><a href="Files.html">Files</a> <a href="Datasets.html">Datasets</a> +<a href="Datatypes.html">Datatypes</a> <a href="Dataspaces.html">Dataspaces</a> +<a href="Groups.html">Groups</a> +<br><a href="References.html">References</a> <a href="Attributes.html">Attributes</a> +<a href="Properties.html">Property Lists</a> <a href="Errors.html">Error +Handling</a> +<br><a href="Filters.html">Filters</a> <a href="Palettes.html">Palettes</a> +<a href="Caching.html">Caching</a> <a href="Chunking.html">Chunking</a> +<a href="MountingFiles.html">Mounting Files</a> +<br><a href="Performance.html">Performance</a> <a href="Debugging.html">Debugging</a> +<a href="Environment.html">Environment</a> DDL +<br><a href="Ragged.html">Ragged Arrays</a></td> +</tr> +</table></center> +<hr> +<h1> +DDL in BNF for HDF5</h1> + +<h2> +1. Introduction</h2> +This document contains the data description language (DDL) for an HDF5 +file. The description is in Backus-Naur Form. +<h2> +2. Explanation of Symbols</h2> This section contains a brief explanation of the symbols used in the DDL. +<pre> ::= defined as + <tname> a token with the name tname + <a> | <b> one of <a> or <b> + <a><font size=-2>opt</font> zero or one occurrence of <a> + <a>* zero or more occurrence of <a> + <a>+ one or more occurrence of <a> + TBD To Be Decided</pre> -<PRE> - ::= defined as - <tname> a token with the name tname - <a> | <b> one of <a> or <b> - <a><FONT SIZE=1.7>opt</FONT> zero or one occurrence of <a> - <a>* zero or more occurrence of <a> - <a>+ one or more occurrence of <a> - TBD To Be Decided -</pre> - -<h2>3. The DDL</h2> +<h2> +3. The DDL</h2> <dir> -<pre> -<file> ::= HDF5 <file_name> { <file_super_block><FONT SIZE=1.7>opt</FONT> <root_group> } +<pre><file> ::= HDF5 <file_name> { <file_super_block><font size=-2>opt</font> <root_group> } -<file_name> ::= <identifier> +<file_name> ::= <identifier> -<file_super_block> ::= BOOT_BLOCK { <super_block_content> } +<file_super_block> ::= BOOT_BLOCK { <super_block_content> } -<super_block_content> ::= TBD +<super_block_content> ::= TBD -<root_group> ::= GROUP "/" { <unamed_datatype>* <object_id><FONT SIZE=1.7>opt</FONT> <group_attribute>* <group_member>* } +<root_group> ::= GROUP "/" { <unamed_datatype>* <object_id><font size=-2>opt</font> <group_attribute>* <group_member>* } -<unamed_datatype> ::= DATATYPE <unamed_type_name> { <compound_type> } +<unamed_datatype> ::= DATATYPE <unamed_type_name> { <compound_type> } -<unamed_type_name> ::= the assigned name for unamed type is in the form of - #oid1:oid2, where oid1 and oid2 are the object ids of the type +<unamed_type_name> ::= the assigned name for unamed type is in the form of + #oid1:oid2, where oid1 and oid2 are the object ids of the type -<compound_type> ::= <member_type_def>+ +<compound_type> ::= <member_type_def>+ -<member_type_def> ::= <scalar_type_def> | <array_type_def> +<member_type_def> ::= <scalar_type_def> | <array_type_def> -<scalar_type_def> ::= <atomic_type> <field_name> ; +<scalar_type_def> ::= <atomic_type> <field_name> ; -<atomic_type> ::= <integer> | <float> | <time> | <string> | <bitfield> | <opaque> | - <reference> | <enum> +<atomic_type> ::= <integer> | <float> | <time> | <string> | <bitfield> | <opaque> | + <reference> | <enum> -<integer> ::= H5T_STD_I8BE | H5T_STD_I8LE | H5T_STD_I16BE | H5T_STD_I16LE | H5T_STD_I32BE | - H5T_STD_I32LE | H5T_STD_I64BE | H5T_STD_I64LE | H5T_STD_U8BE | - H5T_STD_U8LE | H5T_STD_U16BE | H5T_STD_U16LE | H5T_STD_U32BE | - H5T_STD_U32LE | H5T_STD_U64BE | H5T_STD_U64LE | H5T_NATIVE_CHAR | - H5T_NATIVE_UCHAR | H5T_NATIVE_SHORT | H5T_NATIVE_USHORT | - H5T_NATIVE_INT | H5T_NATIVE_UINT | H5T_NATIVE_LONG | H5T_NATIVE_ULONG | - H5T_NATIVE_LLONG | H5T_NATIVE_ULLONG +<integer> ::= H5T_STD_I8BE | H5T_STD_I8LE | H5T_STD_I16BE | H5T_STD_I16LE | H5T_STD_I32BE | + H5T_STD_I32LE | H5T_STD_I64BE | H5T_STD_I64LE | H5T_STD_U8BE | + H5T_STD_U8LE | H5T_STD_U16BE | H5T_STD_U16LE | H5T_STD_U32BE | + H5T_STD_U32LE | H5T_STD_U64BE | H5T_STD_U64LE | H5T_NATIVE_CHAR | + H5T_NATIVE_UCHAR | H5T_NATIVE_SHORT | H5T_NATIVE_USHORT | + H5T_NATIVE_INT | H5T_NATIVE_UINT | H5T_NATIVE_LONG | H5T_NATIVE_ULONG | + H5T_NATIVE_LLONG | H5T_NATIVE_ULLONG -<float> ::= H5T_IEEE_F32BE | H5T_IEEE_F32LE | H5T_IEEE_F64BE | H5T_IEEE_F64LE | - H5T_NATIVE_FLOAT | H5T_NATIVE_DOUBLE | H5T_NATIVE_LDOUBLE +<float> ::= H5T_IEEE_F32BE | H5T_IEEE_F32LE | H5T_IEEE_F64BE | H5T_IEEE_F64LE | + H5T_NATIVE_FLOAT | H5T_NATIVE_DOUBLE | H5T_NATIVE_LDOUBLE -<time> ::= TBD +<time> ::= TBD -<string> ::= { STRSIZE <strsize> ; - STRPAD <strpad> ; - CSET <cset> ; - CTYPE <ctype> ; } +<string> ::= { STRSIZE <strsize> ; + STRPAD <strpad> ; + CSET <cset> ; + CTYPE <ctype> ; } -<strsize> ::= an integer +<strsize> ::= an integer -<strpad> ::= H5T_STR_NULLTERM | H5T_STR_NULLPAD | H5T_STR_SPACEPAD +<strpad> ::= H5T_STR_NULLTERM | H5T_STR_NULLPAD | H5T_STR_SPACEPAD -<cset> ::= H5T_CSET_ASCII +<cset> ::= H5T_CSET_ASCII -<ctype> ::= H5T_C_S1 | H5T_FORTRAN_S1 +<ctype> ::= H5T_C_S1 | H5T_FORTRAN_S1 -<bitfield> ::= TBD +<bitfield> ::= TBD -<opaque> ::= TBD +<opaque> ::= { -<reference> ::= H5T_REFERENCE +<reference> ::= H5T_REFERENCE -<field_name> ::= <identifier> +<field_name> ::= <identifier> -<array_type_def> ::= <atomic_type> <field_name> <dim_sizes> ; +<array_type_def> ::= <atomic_type> <field_name> <dim_sizes> ; -<dim_sizes> ::= [dimsize1][dimsize2]..., where dimsize1, dimsize2 are integers +<dim_sizes> ::= [dimsize1][dimsize2]..., where dimsize1, dimsize2 are integers -<group_attribute> ::= <attribute> +<group_attribute> ::= <attribute> -<attribute> ::= ATTRIBUTE <attr_name> { <datatype> - <dataspace> - <object_id><FONT SIZE=1.7>opt</FONT> - <data><FONT SIZE=1.7>opt</FONT> } -// <datatype> and <dataspace> must appear before <data>. +<attribute> ::= ATTRIBUTE <attr_name> { <datatype> + <dataspace> + <object_id><font size=-2>opt +</font> <data><font size=-2>opt</font> } +// <datatype> and <dataspace> must appear before <data>. -<attr_name> ::= <identifier> +<attr_name> ::= <identifier> -<datatype> ::= DATATYPE { <atomic_type> } | - DATATYPE { <compound_type> } | - DATATYPE { <named_type> } +<datatype> ::= DATATYPE { <atomic_type> } | + DATATYPE { <compound_type> } | + DATATYPE { <named_type> } -<enum> ::= H5T_ENUM { <integer>; <enum_def>+ } +<enum> ::= H5T_ENUM { <integer>; <enum_def>+ } -<enum_def> ::= <enum_symbol> <enum_val>; +<enum_def> ::= <enum_symbol> <enum_val>; -<enum_symbol> ::= <identifier> +<enum_symbol> ::= <identifier> -<enum_val> ::= an integer; +<enum_val> ::= an integer; -<named_type> ::= <path_name> +<named_type> ::= <path_name> -<path_name> ::= <identifier> +<path_name> ::= <identifier> -<dataspace> ::= DATASPACE { SCALAR } | - DATASPACE { SIMPLE <current_dims> / <max_dims> } | - DATASPACE { COMPLEX <ds_definition>+ } - DATASPACE { <dataspace_name> } | +<dataspace> ::= DATASPACE { SCALAR } | + DATASPACE { SIMPLE <current_dims> / <max_dims> } | + DATASPACE { COMPLEX <ds_definition>+ } + DATASPACE { <dataspace_name> } | -<current_dims> ::= (<i>i<FONT SIZE=1.0>1</i></FONT>, <i>i<FONT SIZE=1.0>2</i></FONT>, ... ), where <i>i<FONT SIZE=1.0>k</i></FONT> is an integer, <i>k</i> = 1,2,... +<current_dims> ::= (<i>i<font size=-2>1</font></i>, <i>i<font size=-2>2</font></i>, ... ), where <i>i<font size=-2>k</font></i> is an integer, <i>k</i> = 1,2,... -<max_dims> ::= (<i>i<FONT SIZE=1.0>1</i></FONT>, <i>i<FONT SIZE=1.0>2</i></FONT>, ... ) where <i>i<FONT SIZE=1.0>k</i></FONT> is an integer or H5S_UNLIMITED +<max_dims> ::= (<i>i<font size=-2>1</font></i>, <i>i<font size=-2>2</font></i>, ... ) where <i>i<font size=-2>k</font></i> is an integer or H5S_UNLIMITED -<ds_definition> ::= TBD +<ds_definition> ::= TBD -<dataspace_name> ::= <identifier> +<dataspace_name> ::= <identifier> -<data> ::= DATA { <scalar_space_data> | <simple_space_data> | <complex_space_data> } - -<scalar_space_data> ::= <atomic_scalar_data> | <compound_scalar_data> +<data> ::= DATA { <scalar_space_data> | <simple_space_data> | <complex_space_data> } + +<scalar_space_data> ::= <atomic_scalar_data> | <compound_scalar_data> -<atomic_scalar_data> :: = <integer_data> | <float_data> | <time_data> | <string_data> | - <bitfield_data> | <opaque_data> | <enum_data> | <reference_data> +<atomic_scalar_data> :: = <integer_data> | <float_data> | <time_data> | <string_data> | + <bitfield_data> | <opaque_data> | <enum_data> | <reference_data> -<integer_data> ::= an integer +<integer_data> ::= an integer -<float_data> ::= a floating point number +<float_data> ::= a floating point number -<time_data> ::= TBD +<time_data> ::= TBD -<string_data> ::= a string -// A string is enclosed in double quotes. +<string_data> ::= a string +// A string is enclosed in double quotes. // If a string is displayed on more than one line, string concatenate operator '//'is used. -<bitfield_data> ::= TBD +<bitfield_data> ::= TBD -<opaque_data> ::= TBD +<opaque_data> ::= { H5T_OPAQUE; <opaque_tag>; }</pre> -<enum_data> ::= <enum_symbol> -//maybe will be <enum_symbol> in the future +<pre><opaque_tag> ::= OPAQUE_TAG <identifier> -<reference_data> ::= <object_ref_data> | <data_region_data> | NULL +<enum_data> ::= <enum_symbol> +//maybe will be <enum_symbol> in the future -<object_ref_data> ::= <object_type> <object_num> +<reference_data> ::= <object_ref_data> | <data_region_data> | NULL -<object_type> ::= DATASET | GROUP | DATATYPE +<object_ref_data> ::= <object_type> <object_num> -<object_id> ::= OBJECTID { <object_num> } +<object_type> ::= DATASET | GROUP | DATATYPE -<object_num> ::= an integer:an integer | an integer +<object_id> ::= OBJECTID { <object_num> } -<data_region_data> ::= H5T_STD_REF_DSETREG <object_num> {<data_region_data_info>, - <data_region_data_info>, ...} +<object_num> ::= an integer:an integer | an integer -<data_region_data_info> ::= <region_info> | <point_info> +<data_region_data> ::= H5T_STD_REF_DSETREG <object_num> {<data_region_data_info>, + <data_region_data_info>, ...} -<region_info> ::= (<lower_bound>:<upper_bound>, <lower_bound>:<upper_bound>, ...) +<data_region_data_info> ::= <region_info> | <point_info> -<lower_bound> ::= an integer +<region_info> ::= (<lower_bound>:<upper_bound>, <lower_bound>:<upper_bound>, ...) -<upper_bound> ::= an integer +<lower_bound> ::= an integer -<point_info> ::= (an integer, an integer, ...) +<upper_bound> ::= an integer -<compound_scalar_data> ::= { [ <member_data> ], [ <member_data> ], ... } +<point_info> ::= (an integer, an integer, ...) -<member_data> ::= <atomic_scalar_data> | <atomic_simple_data> +<compound_scalar_data> ::= { [ <member_data> ], [ <member_data> ], ... } -<atomic_simple_data> :: = <atomic_element>, <atomic_element>, ... +<member_data> ::= <atomic_scalar_data> | <atomic_simple_data> -<atomic_element> ::= <atomic_scalar_data> +<atomic_simple_data> :: = <atomic_element>, <atomic_element>, ... -<simple_space_data> :: = <atomic_simple_data> | <compound_simple_data> +<atomic_element> ::= <atomic_scalar_data> -<compound_simple_data> ::= <compoud_element>, <compound_element>, ... +<simple_space_data> :: = <atomic_simple_data> | <compound_simple_data> -<compound_element> ::= <compound_scalar_data> +<compound_simple_data> ::= <compoud_element>, <compound_element>, ... -<complex_space_data> ::= TBD +<compound_element> ::= <compound_scalar_data> -<group_member> ::= <named_datatype> | <named_dataspace> | <group> | <dataset> | - <softlink> +<complex_space_data> ::= TBD -<named_datatype> ::= DATATYPE <type_name> { <compound_type> } +<group_member> ::= <named_datatype> | <named_dataspace> | <group> | <dataset> | + <softlink> -<type_name> ::= <identifier> +<named_datatype> ::= DATATYPE <type_name> { <compound_type> } -<named_dataspace> ::= TBD +<type_name> ::= <identifier> -<group> ::= GROUP <group_name> { <hardlink> } | - GROUP <object_id><FONT SIZE=1.7>opt</FONT> <group_name> { <group_attribute>* <group_member>* } - -<group_name> ::= <identifier> +<named_dataspace> ::= TBD -<hardlink> ::= HARDLINK <path_name> +<group> ::= GROUP <group_name> { <hardlink> } | + GROUP <object_id><font size=-2>opt</font> <group_name> { <group_attribute>* <group_member>* } + +<group_name> ::= <identifier> -<dataset> ::= DATASET <dataset_name> { <hardlink> } | - DATASET <dataset_name> { <datatype> - <dataspace> - <storagelayout><FONT SIZE=1.7>opt</FONT> - <compression><FONT SIZE=1.7>opt</FONT> - <dataset_attribute>* - <object_id><FONT SIZE=1.7>opt</FONT> - <data><FONT SIZE=1.7>opt</FONT> } -// Tokens within {} can be in any order as long as <data> and <dataset_attribute> -// are after <datatype> and <dataspace>. +<hardlink> ::= HARDLINK <path_name> -<dataset_name> ::= <identifier> +<dataset> ::= DATASET <dataset_name> { <hardlink> } | + DATASET <dataset_name> { <datatype> + <dataspace> + <storagelayout><font size=-2>opt +</font> <compression><font size=-2>opt +</font> <dataset_attribute>* + <object_id><font size=-2>opt +</font> <data><font size=-2>opt</font> } +// Tokens within {} can be in any order as long as <data> and <dataset_attribute> +// are after <datatype> and <dataspace>. -<storagelayout> :: = STORAGELAYOUT <contiguous_layout> | - STORAGELAYOUT <chunked_layout> | - STORAGELAYOUT <compact_layout> | - STORAGELAYOUT <external_layout> +<dataset_name> ::= <identifier> -<contiguous_layout> ::= {CONTIGUOUS} // default +<storagelayout> :: = STORAGELAYOUT <contiguous_layout> | + STORAGELAYOUT <chunked_layout> | + STORAGELAYOUT <compact_layout> | + STORAGELAYOUT <external_layout> -<chunked_layout> ::= {CHUNKED <dims> } +<contiguous_layout> ::= {CONTIGUOUS} // default -<dims> ::= (<i>i<FONT SIZE=1.0>1</i></FONT>, <i>i<FONT SIZE=1.0>2</i></FONT>, ... ), <i>i<FONT SIZE=1.0>k</i></FONT> is an integer, <i>k</i> = 1,2,... +<chunked_layout> ::= {CHUNKED <dims> } -<compact_layout> ::= TBD +<dims> ::= (<i>i<font size=-2>1</font></i>, <i>i<font size=-2>2</font></i>, ... ), <i>i<font size=-2>k</font></i> is an integer, <i>k</i> = 1,2,... -<external_layout> ::= {EXTERNAL <external_file>+ } +<compact_layout> ::= TBD -<external_file> ::= (<file_name> <offset> <size>) +<external_layout> ::= {EXTERNAL <external_file>+ } -<offset> ::= an integer +<external_file> ::= (<file_name> <offset> <size>) -<size> ::= an integer +<offset> ::= an integer -<compression> :: = COMPRESSION { TBD } +<size> ::= an integer -<dataset_attribute> ::= <attribute> +<compression> :: = COMPRESSION { TBD } -<softlink> ::= SOFTLINK <softlink_name> { LINKTARGET <target> } +<dataset_attribute> ::= <attribute> -<softlink_name> ::= <identifier> +<softlink> ::= SOFTLINK <softlink_name> { LINKTARGET <target> } -<target> ::= <identifier> +<softlink_name> ::= <identifier> -<identifier> ::= string -// character '/' should be used with care. +<target> ::= <identifier> -</PRE> -</dir> +<identifier> ::= string +// character '/' should be used with care. +</pre> +</dir> -<h2>4. An Example of an HDF5 File in DDL</h2> +<h2> +4. An Example of an HDF5 File in DDL</h2> <dir> -<PRE> -HDF5 "example.h5" { +<pre>HDF5 "example.h5" { GROUP "/" { - ATTRIBUTE "attr1" { - DATATYPE { - { STRSIZE 17; - STRPAD H5T_STR_NULLTERM; - CSET H5T_CSET_ASCII; - CTYPE H5T_C_S1; - } - } - DATASPACE { SCALAR } - DATA { - "string attribute" - } - } - DATASET "dset1" { - DATATYPE { H5T_STD_I32BE } - DATASPACE { SIMPLE ( 10, 10 ) / ( 10, 10 ) } - DATA { - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, - 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 - } - } - DATASET "dset2" { - DATATYPE { - H5T_STD_I32BE "a"; - H5T_IEEE_F32BE "b"; - H5T_IEEE_F64BE "c"; - } - DATASPACE { SIMPLE ( 5 ) / ( 5 ) } - DATA { - { - [ 1 ], - [ 0.1 ], - [ 0.01 ] - }, - { - [ 2 ], - [ 0.2 ], - [ 0.02 ] - }, - { - [ 3 ], - [ 0.3 ], - [ 0.03 ] - }, - { - [ 4 ], - [ 0.4 ], - [ 0.04 ] - }, - { - [ 5 ], - [ 0.5 ], - [ 0.05 ] - } - } - } - GROUP "group1" { - DATASET "dset3" { - DATATYPE { - "/type1" - } - DATASPACE { SIMPLE ( 5 ) / ( 5 ) } - DATA { - { - [ 0, 1, 2, 3 ], - [ 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, - 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, - 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, - 0.4, 0.4, 0.4, 0.4, 0.4, 0.4, - 0.5, 0.5, 0.5, 0.5, 0.5, 0.5 ] - }, - { - [ 0, 1, 2, 3 ], - [ 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, - 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, - 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, - 0.4, 0.4, 0.4, 0.4, 0.4, 0.4, - 0.5, 0.5, 0.5, 0.5, 0.5, 0.5 ] - }, - { - [ 0, 1, 2, 3 ], - [ 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, - 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, - 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, - 0.4, 0.4, 0.4, 0.4, 0.4, 0.4, - 0.5, 0.5, 0.5, 0.5, 0.5, 0.5 ] - }, - { - [ 0, 1, 2, 3 ], - [ 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, - 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, - 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, - 0.4, 0.4, 0.4, 0.4, 0.4, 0.4, - 0.5, 0.5, 0.5, 0.5, 0.5, 0.5 ] - }, - { - [ 0, 1, 2, 3 ], - [ 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, - 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, - 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, - 0.4, 0.4, 0.4, 0.4, 0.4, 0.4, - 0.5, 0.5, 0.5, 0.5, 0.5, 0.5 ] - } - } - } - } - GROUP "group2" { - HARDLINK "/group1" - } - SOFTLINK "slink1" { - LINKTARGET "somevalue" - } - DATATYPE "type1" { - H5T_STD_I32BE "a"[4]; - H5T_IEEE_F32BE "b"[5][6]; - } + ATTRIBUTE "attr1" { + DATATYPE { + { STRSIZE 17; + STRPAD H5T_STR_NULLTERM; + CSET H5T_CSET_ASCII; + CTYPE H5T_C_S1; + } + } + DATASPACE { SCALAR } + DATA { + "string attribute" + } + } + DATASET "dset1" { + DATATYPE { H5T_STD_I32BE } + DATASPACE { SIMPLE ( 10, 10 ) / ( 10, 10 ) } + DATA { + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, + 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 + } + } + DATASET "dset2" { + DATATYPE { + H5T_STD_I32BE "a"; + H5T_IEEE_F32BE "b"; + H5T_IEEE_F64BE "c"; + } + DATASPACE { SIMPLE ( 5 ) / ( 5 ) } + DATA { + { + [ 1 ], + [ 0.1 ], + [ 0.01 ] + }, + { + [ 2 ], + [ 0.2 ], + [ 0.02 ] + }, + { + [ 3 ], + [ 0.3 ], + [ 0.03 ] + }, + { + [ 4 ], + [ 0.4 ], + [ 0.04 ] + }, + { + [ 5 ], + [ 0.5 ], + [ 0.05 ] + } + } + } + GROUP "group1" { + DATASET "dset3" { + DATATYPE { + "/type1" + } + DATASPACE { SIMPLE ( 5 ) / ( 5 ) } + DATA { + { + [ 0, 1, 2, 3 ], + [ 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, + 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, + 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, + 0.4, 0.4, 0.4, 0.4, 0.4, 0.4, + 0.5, 0.5, 0.5, 0.5, 0.5, 0.5 ] + }, + { + [ 0, 1, 2, 3 ], + [ 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, + 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, + 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, + 0.4, 0.4, 0.4, 0.4, 0.4, 0.4, + 0.5, 0.5, 0.5, 0.5, 0.5, 0.5 ] + }, + { + [ 0, 1, 2, 3 ], + [ 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, + 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, + 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, + 0.4, 0.4, 0.4, 0.4, 0.4, 0.4, + 0.5, 0.5, 0.5, 0.5, 0.5, 0.5 ] + }, + { + [ 0, 1, 2, 3 ], + [ 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, + 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, + 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, + 0.4, 0.4, 0.4, 0.4, 0.4, 0.4, + 0.5, 0.5, 0.5, 0.5, 0.5, 0.5 ] + }, + { + [ 0, 1, 2, 3 ], + [ 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, + 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, + 0.3, 0.3, 0.3, 0.3, 0.3, 0.3, + 0.4, 0.4, 0.4, 0.4, 0.4, 0.4, + 0.5, 0.5, 0.5, 0.5, 0.5, 0.5 ] + } + } + } + } + GROUP "group2" { + HARDLINK "/group1" + } + SOFTLINK "slink1" { + LINKTARGET "somevalue" + } + DATATYPE "type1" { + H5T_STD_I32BE "a"[4]; + H5T_IEEE_F32BE "b"[5][6]; + } } -} -</pre> +}</pre> </dir> - <hr> -<center> -<table border=0 width=98%> -<tr><td valign=top align=left> - <a href="H5.intro.html">Introduction to HDF5</a> <br> - <a href="RM_H5Front.html">HDF5 Reference Manual</a> <br> - <a href="index.html">Other HDF5 documents and links</a> <br> - <!-- +<center><table BORDER=0 WIDTH="98%" > +<tr> +<td ALIGN=LEFT VALIGN=TOP><a href="H5.intro.html">Introduction to HDF5</a> +<br><a href="RM_H5Front.html">HDF5 Reference Manual</a> +<br><a href="index.html">Other HDF5 documents and links</a> +<br><!-- <a href="Glossary.html">Glossary</a><br> - --> -</td> -<td valign=top align=right> - And in this document, the - <a href="H5.user.html"><strong>HDF5 User's Guide:</strong></a> - <br> - <a href="Files.html">Files</a> - <a href="Datasets.html">Datasets</a> - <a href="Datatypes.html">Datatypes</a> - <a href="Dataspaces.html">Dataspaces</a> - <a href="Groups.html">Groups</a> - <br> - <a href="References.html">References</a> - <a href="Attributes.html">Attributes</a> - <a href="Properties.html">Property Lists</a> - <a href="Errors.html">Error Handling</a> - <br> - <a href="Filters.html">Filters</a> - <a href="Palettes.html">Palettes</a> - <a href="Caching.html">Caching</a> - <a href="Chunking.html">Chunking</a> - <a href="MountingFiles.html">Mounting Files</a> - <br> - <a href="Performance.html">Performance</a> - <a href="Debugging.html">Debugging</a> - <a href="Environment.html">Environment</a> - DDL - <br> - <a href="Ragged.html">Ragged Arrays</a> -</td></tr> -</table> -</center> - + --></td> + +<td ALIGN=RIGHT VALIGN=TOP>And in this document, the <b><a href="H5.user.html">HDF5 +User's Guide:</a></b> +<br><a href="Files.html">Files</a> <a href="Datasets.html">Datasets</a> +<a href="Datatypes.html">Datatypes</a> <a href="Dataspaces.html">Dataspaces</a> +<a href="Groups.html">Groups</a> +<br><a href="References.html">References</a> <a href="Attributes.html">Attributes</a> +<a href="Properties.html">Property Lists</a> <a href="Errors.html">Error +Handling</a> +<br><a href="Filters.html">Filters</a> <a href="Palettes.html">Palettes</a> +<a href="Caching.html">Caching</a> <a href="Chunking.html">Chunking</a> +<a href="MountingFiles.html">Mounting Files</a> +<br><a href="Performance.html">Performance</a> <a href="Debugging.html">Debugging</a> +<a href="Environment.html">Environment</a> DDL +<br><a href="Ragged.html">Ragged Arrays</a></td> +</tr> +</table></center> <hr> <address> -<a href="mailto:hdfhelp@ncsa.uiuc.edu">HDF Help Desk</a> -</address> - -Last modified: 14 October 1999 +<a href="mailto:hdfhelp@ncsa.uiuc.edu">HDF Help Desk</a></address> +<br>Last modified: 14 October 1999 </body> </html> |