Re: Paper on OpenDAP

Hi Ethan-

Ethan Davis wrote:

I just wanted to dig a bit deeper into the BUFR issue.

Does anyone know of a Java library for reading BUFR data?

No.  I thought the nj22 team was going to write one. ;-)

I looked around a bit but didn't find anything. The reason I ask is that the netCDF-java 2.2 library (nj22) has an interface for allowing other data formats to be read through the nj22 API. We've used this to add reading of several non-netcdf formats to nj22 (GRIB-1, GRIB-2, GINI, NIDS, NEXRAD level II, e.g.). If there is a java library out there it might not be too hard to add BUFR reading to nj22.

There are a couple of issues with BUFR.  One is that it is not like
GRIB in that a BUFR file may have point observations, trajectories,
winds, etc.  I'm not sure how the IOServiceProvider interface does at
figuring out which type of data type to create.

A second, major problem with BUFR is that it is like GML.  Although
there is a standard format, there are no standard vocabularies
for what the data look like.  One of the biggest problems is getting
all the tables for a particular dataset (worse than GRIB).

The interface is ucar.nc2.IOServiceProvider. We probably need to work on the documentation but there are several example implementations in the nj22 code. If anyone wants to take a look at this, we could advise and (as time permits) assist. Once an IOSP was done, the TDS could serve the data out through OPeNDAP.

Would the IOSP layer allow you to read in one BUFR file as
point data and another as a trajectory or is it "datatype"
specific?

Since the NWS is moving toward sending METARs in BUFR format,
we'll need something soon.

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
        "Time makes everyone interesting, even YOU!"
*************************************************************