gmantele / vollt

Java libraries implementing the IVOA protocol: ADQL, UWS and TAP
http://cdsportal.u-strasbg.fr/taptuto/
29 stars 28 forks source link

Allow array-like types in UDF declarations #143

Open mbtaylor opened 1 year ago

mbtaylor commented 1 year ago

DaCHS declares some UDFs with parameter or return values of array type, e.g.:

ivo_histogram(val REAL, lower REAL, upper REAL, nbins INTEGER) -> INTEGER[]

Such declarations are currently rejected by FunctionDef.parse() because of the array type reference, so such UDFs are treated as unknown. I appreciate that VOLLT does not support arrays at present (see #138) and also that ADQL does not define any syntax for array declaration. However it would be nice (for me) if such declarations could be parsed and marked supported in the FeatureSet, even if the parameter type or return type is not understood. Then at least the names and parameter counts of such UDFs could be validated in ADQL submitted to the ADQLParser.

I can imagine that in absence of proper array support, such a change might be either (a) very easy or (b) very difficult. If (b), no problem! But if (a) maybe you could consider it.