I agree with you @Debora about the Octave support.
Octave is a pretty good clone, but handling hdf5 files is pretty rudimentary and openEMS relies on this file format to store and exchange field data to matlab/octave.
To read hdf5 files, matlab uses the functions: hdf5info and hdf5read. Octave does not have this functions at all.
I'd seriously look at trying to implement your own versions in that case. Hopefully get it committed to the Octave source code, but if not, as a .m file.
Instead octave can load/save hdf5 files for its own data (Matlab can not), but does not support all features of hdf5 unfortunately, especially attributes.
I'm thinking about writing an oct-file reading the openEMS hdf5 data...