Coder Social home page Coder Social logo

Comments (7)

AliceBalfanz avatar AliceBalfanz commented on September 28, 2024

And once I get the dataset from the cds store
The variables are again called differently than in the request! Quite confusing and incosistent.

image

from xcube-cds.

pont-us avatar pont-us commented on September 28, 2024

Isn't this a duplicate of #15 ?

from xcube-cds.

AliceBalfanz avatar AliceBalfanz commented on September 28, 2024

Isn't this a duplicate of #15 ?

Looks like it, but we do not use the UI at all anymore. So how about closing 15 and adress this issue here?

from xcube-cds.

pont-us avatar pont-us commented on September 28, 2024

Looks like it, but we do not use the UI at all anymore. So how about closing 15 and adress this issue here?

OK, I can copy-paste the relevant content from #15 (there isn't much).

from xcube-cds.

pont-us avatar pont-us commented on September 28, 2024

Some background, adapted from comments at #15 :

The CDS API doesn't have unified variable names between the request and the result -- in some cases, e.g. in the soil moisture data set, there isn't even a one-to-one mapping between the two sets of variables. the CDS store plugin generally tries to provide a thin interface to the CDS API (i.e. manipulates the requests and results as little as possible). Of course it would be possible to expand the scope of the plugin to rename variables and unify the two schemes, but that's quite a lot of implementation and maintenance effort. We should discuss whether this ought to be a design goal for the plugin (and for other data store plugins).

Comment from 2021-02-21: After discussion today: still no clear resolution on how we should proceed with this, so I'm leaving the bug open but not actively working on it.

from xcube-cds.

pont-us avatar pont-us commented on September 28, 2024

To expand on the earlier comments above: data_vars in the return value of describe_data for a data store describes the values you can expect to see in the returned dataset. The parameters you can use in the request are not described under data_vars but under open_params_schema (which you can also get by calling get_open_data_params_schema), and there is no guarantee that the parameters schema will contain a list of variable names which corresponds exactly with those in the returned dataset. Indeed, there isn't even a guarantee that there will be a list of variable names in the parameter schema at all (e.g. it might be a one-variable dataset that therefore doesn't need to to explicitly specify the variables).

In the CDS store, the parameter schema is taken as directly as possible from the parameter schema of the CDS backend itself, so e.g. for reanalysis-era5-land, the user can browse around at https://cds.climate.copernicus.eu/cdsapp#!/dataset/reanalysis-era5-land-monthly-means?tab=form and use the same parameter names in their xcube request.

from xcube-cds.

pont-us avatar pont-us commented on September 28, 2024

Plan, after internal discussion: expand the parameter schema and implementation to include, as an alternative to variable_names, an additional parameter era5_variable_names, where the caller can specify the requested variable names using the ERA5 identifiers (matching the names in the returned dataset) instead of the CDS identifiers. Implementation should be fairly straightforward, since the store already has a table to map between these identifiers.

from xcube-cds.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.