Skip to content

Missing access_urls for THREDDS (v5) with NetCDFSubset point and grid #932

@mishaschwartz

Description

@mishaschwartz

Background

THREDDS v5+ support both grid and point NetCDFSubset services (https://docs.unidata.ucar.edu/tds/current/userguide/adding_ncss.html#serving-datasets-with-ncss). If both are enabled for a dataset then there will be two services with the same serviceType of NetcdfSubset. For example:

<service name="ncssGrid" serviceType="NetcdfSubset" base="/thredds/ncss/grid/" />
<service name="ncssPoint" serviceType="NetcdfSubset" base="/thredds/ncss/point/" />

Problem

This causes problems when loading the access_urls for this dataset since access_urls is a dictionary whose keys are the serviceType. Since serviceType is not unique then only the grid or point service (whichever is loaded last) will be available:

>>> c = TDSCatalog("https://pavics.ouranos.ca/twitcher/ows/proxy/thredds/catalog/birdhouse/testdata/xclim/cmip6/catalog.xml")
>>> d = c.datasets[0]
>>> d.access_urls["NetcdfSubset"]
'https://pavics.ouranos.ca/twitcher/ows/proxy/thredds/ncss/point/birdhouse/testdata/xclim/cmip6/sic_SImon_CCCma-CanESM5_ssp245_r13i1p2f1_2020.nc'

Note that the catalog entry does contain entries for both grid and point services.

Expected output

I expect that I'd be able to see both of the grid and point netcdfsubset services for this dataset.

Additional details

  • Which platform: Linux
  • Versions:
    • python: 3.13.2
    • siphon: 0.10.0

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions