EIDA / mediatorws

EIDA NG Mediator/Federator web services
GNU General Public License v3.0
6 stars 6 forks source link

Proposed support of optional parameters for station and dataselect queries #100

Closed kaestli closed 4 years ago

kaestli commented 4 years ago

a) STATION support the following parameters, as they are supported by all end nodes:

support the parameter, but do not add it to end node requests:

do not support the following parameters:

b) DATASELECT: support the parameter, bud do not add to end node requests:

do not support the following parameters:

(full overview: https://docs.google.com/spreadsheets/d/1hZ8ipG83xDxBbOVzO_oiG3OItoRCPIO1pvutOkbAfyI/edit?usp=sharing)

damb commented 4 years ago

@kaestli,

for fdsnws-station endpoint requests the format query parameter needs to be forwarded to the DCs. If not doing so format will always fall back do the default i.e. xml.

For fdsnws-dataselect the default is format=miniseed. Hence, it may be skipped.

kaestli commented 4 years ago

Yes, sure, obviousely. I have corrected this in the overview above.

kaestli commented 4 years ago

Note: all EIDA nodes currently use the same ORFEUS software to provide wfcatalog, in the same version (1.0.018). Thus, supported optional parameters and metrices seem to be the same, corresponding to, e.g., http://www.orfeus-eu.org/eidaws/wfcatalog/1/application.wadl However, note that this WADL does actually not describe all available request parameters: it skips the parameters with comparison suffixes (see specification document http://www.orfeus-eu.org/documents/WFCatalog_Specification-v0.22.pdf, page 8)

damb commented 4 years ago

For fdsnws-dataselect the default is format=miniseed. Hence, it may be skipped.

Is there a good reason why the format parameter shouldn't be explicit?

damb commented 4 years ago

Note, that the nodata query parameter wasn't included, anyway (referring to v0.9.6).

kaestli commented 4 years ago

on format (in dataselect): The response format is miniseed anyway. However, support of the parameter by an endnode is optional, and (dependent on the correct treatment of non-implemented optional parameters) a data center not supporting it may return http 400 if it is included. (currently, the only data center of EIDA not supporting the format parameter is RESIF, and RESIF disregards unsupported optional parameters silently. Thus, at the time being, there is no practical difference). I just thought it might be more future proof not sending a parameter which in the best case has no influence, and in the worst case causes an error)

damb commented 4 years ago

Ok. Both solutions are fine for me. In general, I rather prefer an explicit approach (API defaults might change in future).

However, support of the parameter by an endnode is optional, and (dependent on the correct treatment of non-implemented optional parameters) a data center not supporting it may return http 400 if it is included.

When monitoring eida-federator logs this issue is detected, easily.