[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[netCDF #JZN-949284]: NC_CHAR coordinates via DAP
- Subject: [netCDF #JZN-949284]: NC_CHAR coordinates via DAP
- Date: Fri, 08 Oct 2010 13:10:18 -0600
Dennis,
I think the issue Charlie is concerned with is whether it's possible for
the DAP client to support a kind of netCDF coordinate variable in common
use, with character-array values coordinates. A numeric coordinate,
such as "latitude", typically has single values of a primitive type,
such as float, and the values of a grid over Colorado might be 34.0,
35.0, ..., 43.0. A string coordinate, such as "month", typically has
string values modeled as character arrays, such as "jan", "feb", ...,
"dec".
The use of such string-valued coordinates is discussed in the CF
Conventions, where they are also called "labels":
http://cf-pcmdi.llnl.gov/documents/cf-conventions/1.4/cf-conventions.html#labels
The netCDF Best Practices document has, in the section on coordinate
variables, this definition:
A two-dimensional variable of type char is a string-valued coordinate
variable if it has the same name as its first dimension, e.g.: char
time( time, time_len); all of its strings must be unique.
Apparently NCO understands string-valued coordinate variables or
"labels" and treats them like other coordinate variables.
--Russ
> The netcdf dap code supports NC_CHAR (modulo bugs, of course).
> The transparency issue is tricky. If you mean does the result coming
> out of the netcdf dap code look the same as the original .nc file,
> then no. The two versions will vary in a number of ways because the mapping
> into dap and then out of dap is not completely transparent.
>
> One place in particular where this occurs is when the dap uses its string typ
> e
> (look at this url in your browser
> http://motherlode.ucar.edu:8080/thredds/dodsC/testdods/in.nc.dds?fl_dmn
> )
>
> Since netcdf-3 has no string type, the string is converted to an NC_CHAR arra
> y.
> The string as stored in that array may be truncated.
>
> There is an additional problem with the data set your provided.
> If you do a wget on this url:
> http://motherlode.ucar.edu:8080/thredds/dodsC/testdods/in.nc.dods?fl_dmn
> you will get this:
> ------------------------------
> Dataset {
> String fl_dmn[fl_dmn = 3];
> } testdods/in.nc;
>
> Data:
> Error {
> code = 500;
> message = "[C cannot be cast to [Lopendap.dap.BaseType;";
> };
> ---------------------
> So indeed, the data is not readable. That error is coming from the server.
> Why that error occurs, I do not know yet.
> (Ethan?).
>
> Other, non-string data is apparently readable.
>
> =Dennis Heimbigner
> Unidata
>
>
> Ticket Details
> ===================
> Ticket ID: JZN-949284
> Department: Support netCDF
> Priority: Normal
> Status: Open
> Link: https://www.unidata.ucar.edu/esupport/staff/index.php?_m=tickets&_a=vi
> ewticket&ticketid=12210
Ticket Details
===================
Ticket ID: JZN-949284
Department: Support netCDF
Priority: Normal
Status: Open