The Dataset URL specifies the external name of an OPeNDAP dataset. These are mapped to internal datasets specified in the fileAccess elements, which may be other OPeNDAP datasets, or files internally accessible to the Aggregation Server. (For 0.6 these must be NetCDF files, but the Aggregation Server could be extended to handle other types of files.) We will call these internal datasets and files internal files, (even though they are not always files) to avoid overloading the word "datasets" any further. The service that the Aggregation Server uses to access these internal files is called the internal service, to distinguish from the external service, which is the Aggregation Server itself.
The internal file location is specified by the concatenation of the internal service base and the fileAccess urlPath:
internal file URL = internalService.base + fileAccess.urlPath
The internal service is specified by the serviceName attribute of the aggregation or fileAccess element, as in Example 7. The service elements can be placed in any parent dataset, including the top-level dataset:
Example 7
<dataset name="JoinNew Example" urlPath="htnsst">
<service name="GSO" serviceType="DODS"
base="http://opendap.org/cgi-bin/nph-dsp/"/>
<service name="GSO-derived" serviceType="NetCDF"
base="file:///E:/data/grids/GSO/"/>
<metadata metadataType="Aggregation">
<aggregation serviceName="GSO" variable="time" type="JoinNew"
dateFormat="yyyy/M/d:HH:mm:ss z">
<fileAccess urlPath="htnsst/1985/k2828.htn"
coord="1985/1/1:18:28:28 GMT"/>
<fileAccess urlPath="htnsst/1985/k1750.htn_d.Z"
coord="1985/1/2:18:17:50 GMT"/>
<fileAccess serviceName="GSO-derived"
urlPath="1985/k85003180718.nc"
coord="1985/1/3:18:07:18 GMT"/>
</aggregation>
</metadata>
</dataset>
In Example 7, the first two internal files of the aggregation come from the "GSO" OPeNDAP service, and the third from the "GSO-derived" NetCDF service.