Re: How to get all metadata

Hi Curtis-

Overall, I think you've hit the nail on the head.  Just a few comments:

Curtis Rueden wrote:
If I understand your question correctly, I have been thinking about this issue recently.

Some types of metadata are built in to the system. Units, coordinate systems and error estimate propagation are all part of the VisAD Data model. However, I suspect what you mean by "metadata" is the auxiliary information (other than pixel data) embedded within a file. Unfortunately, support for reading this type of information is not fully implemented (although the VisAD API supports it).

There are two ways VisAD can handle file metadata:

1) Sometimes the file form adapter includes relevant metadata as part of the data object. You can determine whether this is happening in the VisAD SpreadSheet by bringing up the Edit Mappings dialog, and taking a look at the MathType. If it is big and complex, chances are that it represents a large tuple containing both pixel data and various metadata parameters. I believe (although I am not certain) that the netCDF Plain form behaves this way. Unfortunately, I don't think the FITS form does.

The netCDF adpater does not provide access to all the metadata.
Where possible it incorporates metadata (e.g. variable attributes)
into the Data object (units, scale/offset, valid range), but does
not give you direct access to these values (i.e., what have these
values been scaled by).  The big "ommission" is access to the
global attributes.  I've been thinking about how this might be
done. (see below).

2) To generalize the file metadata concept, I recently created an optional interface for VisAD file form adapters: visad.data.MetadataReader. It allows the file form to provide a Hashtable containing all metadata extracted from the file, represented as key/value pairs. (Of course, what this metadata is completely depends on the file format.) I have implemented MetadataReader for the file form adapters in visad.data.bio, but most other file forms do not yet support it. Whether it gets implemented for other formats will depend on user interest and VisAD developers' time availability.

Guess I missed that checkin.  When I get a chance, I'll see
if that would work for the netCDF stuff.

Don
*************************************************************
Don Murray                               UCAR Unidata Program
dmurray@xxxxxxxxxxxxxxxx                        P.O. Box 3000
(303) 497-8628                              Boulder, CO 80307
http://www.unidata.ucar.edu/staff/donm
"There's someone in my head, but it's not me"    Roger Waters
*************************************************************