Due to the current gap in continued funding from the U.S. National Science Foundation (NSF), the NSF Unidata Program Center has temporarily paused most operations. See NSF Unidata Pause in Most Operations for details.
Hi, R. Bauer asked: > yesterday I sended an inquiry why netCDF 3.4 will not accept signs like > '()[]' and so on in the > short names. > > During reading your info material on your internet-site we found that's > it is really described as this. But unfortunately on an older version > for unix (aix) 2.4 this was working. > > Unfortunately do we have a lot of files using this "()[]". > > Do we have a chance to get these functionality back again? Sorry I didn't get a chance to answer this yesterday. With netCDF 3.x, we changed the characters permitted in names for netCDF variables, dimensions, and attributes, because users had complained that unrestricted names permitted by the library were inconsistent with the CDL restrictions enforced by the ncgen and ncdump utilities. The new netCDF 3.x restriction is in the netCDF-3 User's Guide under "Section 2.1.1 Naming Conventions" and also in "Appendix D, NetCDF 2 Transition Guide" in both the Fortran and C User's Guides: ... In the previous library, there was no checking that the characters used in the name of a netCDF object were compatible with CDL restrictions. The ncdump and ncgen utilities that use CDL permit only alphanumeric characters, "_" and "-" in names. Now this restriction is also enforced by the library for creation of new dimensions, variables, and attributes. Previously existing components with less restrictive names will still work OK. (See, for example, <http://www.unidata.ucar.edu/packages/netcdf/guidec/guidec-20.html>). So if you have existing netCDF files with other characters in names, for example "()[]", the 3.x library should be able to read them, but it will not permit creating new names with such characters in them. If you need to circumvent the restriction it is possible to just take the name test out of the library source code and recompile it, but if you do this, realize that ncgen users may have trouble reading your files or understanding the output from ncdump on your files. The change requires a simple modification to the NC_check_name() function in libsrc/string.c to permit the additional characters you want and then rebuilding. With version 3.4, we relaxed the name restriction slightly to permit periods, ".", in the names of netCDF (and CDL) components. --Russ _____________________________________________________________________ Russ Rew UCAR Unidata Program russ@xxxxxxxxxxxxxxxx http://www.unidata.ucar.edu
netcdfgroup
archives: