Benno Blumenthal wrote:
John Caron wrote:
Benno Blumenthal wrote:
John Caron wrote:
Hi benno:
sorry its taken so long to reply, ive been on vacation.
the agg server does in fact send back the entire configuration
file, which is a valid catalog. the trick is that the aggregation
info is inside a metadata element. this info is useable only by the
server itself, so you should ignore it. you should instead access
the dataset through the server itself, using the dataset URL in the
normal way sorry thats so confusing.
Yes and no. The catalog is correct
http://nomads.gfdl.noaa.gov:8080/thredds/dodsC/catalogConfig.xml
But if you compare it to
http://nomads.gfdl.noaa.gov:8080/thredds/dodsC/
you see a lot of stuff is missing. I think the problem is that the
catalogConfig.xml file has lines like
<!--&deccen_gps_01_ocn;-->
<!--&deccen_gps_01_atm;-->
<!--&deccen_gps_02_ocn;-->
<!--&deccen_gps_02_atm;-->
<!--&deccen_gps_03_ocn;-->
<!--&deccen_gps_03_atm;-->
<!--&deccen_ipcc_a2_01_ocn;-->
<!--&deccen_ipcc_a2_01_atm;-->
<!--&deccen_ctrl_06_ocn;-->
<!--&deccen_ctrl_06_atm;-->
-
<!--
&ipcc_CM2_0_PIcntr_atmos;
&ipcc_CM2_0_h1_atmos;
&ipcc_CM2_0_h2_atmos;
&ipcc_CM2_0_h3_atmos;
&ipcc_CM2_0_Commit_atmos;
&ipcc_CM2_0_SRESA2_atmos;
&ipcc_CM2_0_1to2x_atmos;
&ipcc_CM2_0_1to4x_atmos;
-->
which it interprets locally as includes to get the full structure.
From the outside, I don't get the includes, thus I am missing most
of the information.
Benno
Yes, i see what you mean. I hadnt thought about the external entity
problem (sigh).
I think you should be able to use:
http://nomads.gfdl.noaa.gov:8080/thredds/dodsC/catalog.xml
to get the "external view" of the catalog.
I still run into problems. For example, if I go to read
<dataset name="IPCC H1 vars">
<service name="IPCC H1" serviceType="DODS"
base="http://data1.gfdl.noaa.gov/cgi-bin/nph-nc/dods-data/gfdl_cm2_0/CM2Q-d2_1861-2000-AllForc_h1/pp/atmos/ts/monthly/"/>
<dataset name="IPCC H1 all" urlPath="ipcc_h1_all">
<metadata metadataType="Aggregation"/>
</dataset>
</dataset>
My thredds reader tries to use service IPCC H1 and it fails because
ipcc_h1_all is not there. I think the service is supposed to be
"this", e.g.
http://nomads.gfdl.noaa.gov:8080/thredds/dodsC/ipcc_h1_all.dds
Am I messing up service inheritance?
ok heres the relevent pieces of that catalog:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE catalog SYSTEM
"http://www.unidata.ucar.edu/projects/THREDDS/xml/InvCatalog.0.6.dtd">
<catalog xmlns="http://www.unidata.ucar.edu/thredds" xmlns:xlink="http://www.w3.org/1999/xlink"
name="GFDL Aggregation Server Catalog" version="0.6">
<dataset name="GFDL Aggregation Server Catalog Top-level dataset" dataType="Grid"
serviceName="this">
<service name="this" serviceType="DODS" base="" />
<dataset name="IPCC H1 vars">
<service name="IPCC H1" serviceType="DODS"
base="http://data1.gfdl.noaa.gov/cgi-bin/nph-nc/dods-data/gfdl_cm2_0/CM2Q-d2_1861-2000-AllForc_h1/pp/atmos/ts/monthly/"
/>
<dataset name="IPCC H1 all" urlPath="ipcc_h1_all">
<metadata metadataType="Aggregation" />
</dataset>
</dataset>
...
The containing dataset sets serviceName="this", this is inherited by
<dataset name="IPCC H1 all" urlPath="ipcc_h1_all">, and is not
overridden. The fact that the dataset also declares a service "IPCC
H1" doesnt matter, its likely in there as a "local service" used by the
server internally.
though I cannot quite read that one either, probably because of a bug
in my program.
I just discovered a bug in my client code too. In fact, its actually
caused by a bug in the AggServer code, which declares a top level variable
Float64 plev;
but it should be
Dimension plev = 17;
Float64 plev( plev);
The DDS is technically correct, however. I wonder if you are choking on
the same thing?
Benno