If your data is not in a format with an existing server, you have two options. First, you can describe your data using the FreeForm data description language. Once you can describe your data with FreeForm, you can use the FreeForm server to make your data available. The second option would be to write a new server for your data format. The difficulty of this task would depend on the complexity of your data format. For developing a server in C++, see the Programmer's Guide and the Programmer's Reference and the tutorial Writing a Server for more information. For developing a server in Java, see the OPeNDAP Java JavaDocs. Please contact us at support@unidata.ucar.edu to discuss the options before you begin.
The data of OPeNDAP server's response is encoded using the XDR standard (eXternal Data Representation), and packed into the second part of the response document. For more information on XDR, see Internet RFC 1014. For further details, see OPeNDAP Programmer's Guide Section A.1.3.
Available OPeNDAP clients are listed on our "Available OPeNDAP Clients" web page. Many of the available clients come OPeNDAP enabled. Several of them need to be relinked with the OPeNDAP libraries.
Any application that can dereference a URL can be used as a simple OPeNDAP client. For instance, a standard web browser like Netscape or Internet Explorer can be used to look at various aspects of a OPeNDAP dataset. See our description of how to access OPeNDAP data with a browser.
Several spreadsheet applications (e.g., MS Excel and the StarOffice spreadsheet) can also be used as clients. They still do not have any specific knowledge of the special capabilities of the servers but are more data savvy than completely genereic Web clients. See our description of how to access data from an OPeNDAP server with a spreadsheet.
This problem can be solved by upgrading to the latest version of the client you are using. You can check on the version of the server you are accessing in several ways.
Here's an example of the output old clients will display when handed data in one of the new data types (this example is from loaddods in Matlab):
>> loaddods('http://dcz/etc/nph-ff/data/ff/test1.dat')
Reading: http://dcz/etc/nph-ff/data/ff/test1.dat
Constraint:
In the dataset descriptor object:
Expected a varaible declaration
(e.g., Int32 i;). Make sure that the
variable name is not a reserved word
(Byte, Int32, Float64, String, Url
Structure, Sequence or Grid - all
forms, byte, Byte and BYTE, are the same)
Could not parse data DDS.
???
Error in ==> /usr/local/DODS/src/writeval-2.23/loaddods.mexsol
This problem can be solved by upgrading to the latest version of the client you are using. You can check on the version of the server you are accessing in several ways.
Here's an example of the output old clients will display when handed data in one of the new data types (this example is from loaddods in Matlab):
>> loaddods('http://dcz/etc/nph-ff/data/ff/test1.dat')
Reading: http://dcz/etc/nph-ff/data/ff/test1.dat
Constraint:
In the dataset descriptor object:
Expected a varaible declaration
(e.g., Int32 i;). Make sure that the
variable name is not a reserved word
(Byte, Int32, Float64, String, Url
Structure, Sequence or Grid - all
forms, byte, Byte and BYTE, are the same)
Could not parse data DDS.
???
Error in ==> /usr/local/DODS/src/writeval-2.23/loaddods.mexsol
For a given URL (e.g., http://test.opendap.org/dap/data/nc/coads_climatology.nc) and a given variable in that data set (e.g., SST), you would ask for a those data to be returned as ASCII using the following:
http://test.opendap.org/dap/data/nc/coads_climatology.nc.ascii?SST.
Note that you can take the base URL (http://test.opendap.org/dap/data/nc/coads_climatology.nc) and append '.html' to it and get a web page that provides a way to see the names of the variables in a data file, a way to build up more complex constraints interactively and to get those data in several different formats, including ASCII and NetCDF, from any recent DAP server such as Hyrax.
Another way to get data as a NetCDF file is to use a client that can access OPeNDAP data and knows how to output netCDF files. A simple example is the NCO (NetCDF Operators) package like this:
ncks http://test.opendap.org/dap/data/nc/coads_climatology.nc?SST out.nc
The NCO package supplies various command line tools for manipulating netCDF files and can be made OPeNDAP aware. See our "Available OPeNDAP Clients" web page for more information on NCO.
Notes:
* NCO tools can also be used to dump data in ASCII (like the OPeNDAP '.asc' extension) or IEEE binary format.
* In this example, the client expects to be passed a DAP URL, so the response format component is not used (i.e., ''coads_climatology.nc'' is used with a DAP-aware client like NCO, while ''coads_climatology.nc.ascii'' is used with a browser that does not contain special code to process the DAP URL).
Copyright 2008-2012 OPeNDAP, Inc.
