Prev Up Next Index
Go backward to 1.1 Peeking at Data
Go up to 1 What To Do With A DODS URL
Go forward to 1.3 An Easier Way

1.2 Sequence Data

Gridded data works well for satellite images, model data, and data compilations such as the Reynolds data we've just looked at. Other data, such as data measured at a specific site, is not so readily stored in that form. DODS provides a data type called a Sequence to store this kind of data.

A Sequence can be thought of as a relational data table, with each column representing a different data value, and each row representing a different data "instance." For example, an ocean temperature profile can be stored as a Sequence of pressure and temperature pairs, and a weather station's data can be stored as a Sequence with time in one column, and each weather variable occupying another column.  

Let's look at a couple of Sequences. The first one is a collection of CTD data (hydrographic data, including temperature, pressure, salinity, and so on): 

http://dods.gso.uri.edu/cgi-bin/nph-jg/rlctd

The DAS (append .das to the URL) for this data is pretty uninformative, telling us only that all the data are stored as strings:

 

A DAS for Sequence data.

On the other hand, a lot of the information we would get from the DAS is actually encoded in the data itself, which you can see by looking at the data's DDS (append .dds to the URL):  

A DDS for Sequence data.

We can get some idea of the data coverage by asking for some of the time and location data, with a URL like this:

...rlctd.asc?cruiseid,station,year_s,month_s,day_s,lat_s,lon_s

This produces a response shown here.

 

The rlctd dates and locations

After reviewing the data in the last request, perhaps we decide we only want to see data from one of the cruises listed, or maybe only data from the month of May. We can add a selection clause to the constraint expression to select only that data. For example:  

...rlctd.asc?cruiseid,station,year_s,month_s,day_s,lat_s,lon_s&month_s=5

This produces a table containing all the rows from the last example where the month datum is May. Click here to see that table.

Selection clauses can be stacked endlessly against a URL, allowing all the flexibility most people need to sample data files. Here's an example of a URL that requests all the oxygen data in the file taken in May at a specific depth range:

...rlctd.asc?o2&month_s=5&pres>50&pres<100

The first clause in a constraint expression has a name, too. It is the projection clause. This is the list of variables that you wish to have returned, subject to the constraint of the selection clause. In the previous example, the projection clause consiste only of the o2 variable. In the one before that, the list was longer, containing 7 variables. 


Tom Sgouros, 2004/07/07

Prev Up Next