Special attention To Alberto Re: SODA erratum 3 proposal

alberto micol amicol.ivoa at googlemail.com
Tue Feb 14 16:30:28 CET 2023


Before answering Francois’ request for my comments,
I need to ask a question to Mark.

I do agree with you, Mark, that using scalar MIN and MAX values 
for a xtype=“interval" element is the least surprising semantics,
but...

Votable 1.4 seems to require that the MIN and MAX <VALUES> must be of the same arraysize as the parent parameter.
Indeed ASTROPY complains if the arraysizes of the VALUES MIN and MAX are not the same as for the PARAM:
WARNING: E02: ?:?:?: E02: Incorrect number of elements in array. Expected multiple of 2, got 1 [astropy.io.votable.converters]

I understand VOTable 1.5 is supposed to change this; the new text reads:
> When the parent of a VALUES element does have an xtype, special rules apply;
> clients should only try to parse limits of xtyped fields when they know the xtype.

The text “when they know the xtype” confuses me quite a bit. What does that mean in practice? For example:
How will a validator understand how to validate a votable with MIN/MAX VALUES expressed with arraysizes different than its parent element,
as suggested for the MIN MAX of an interval ? 

One could even write: 
<PARAM arraysize=“2” xtype=“interval” name=“BAND”…>
<VALUES>
 <MIN arraysize=“” …>
 <MAX arraysize=“55” …>
</VALUES>
</PARAM>
Votable 1.5 seems to allow such possibility !
In which case the validator will need to simply omit any check on those MIN MAX values, right?
That does not seem particularly healthy.

Unless…

I could speculate further, but I spare you for now my “unless…”, and duly wait for your answer.

Thanks Mark,
Alberto

> On 14 Feb 2023, at 11:52, BONNAREL FRANCOIS <francois.bonnarel at astro.unistra.fr> wrote:
> 
> Hi all,
> I agree that MIN with a 2D array doesn't make much sense and doesn't provide useful information.
> 
> For MAX  the 2D array could be enough for the maximum extent of the bounds as Pat says.
> 
> However, I am ready to go to the single value MIN/MAX and restricting the Erratum to a single clarification referencing VOTable 1.5 (can we do that ?). I think Dali-next  may be too far from recommendation to be  referred.
> 
> BUt before doing that I would like Alberto's comment. he was the first one to point this issue a couple of years ago, when ESO was implementing SODA (a great success of this spec !!!)
> 
> Cheers
> François
> 
> Le 14/02/2023 à 11:00, Mark Taylor a écrit :
>> On Tue, 14 Feb 2023, Markus Demleitner wrote:
>> 
>>> Hi Pat,
>>> 
>>> On Mon, Feb 13, 2023 at 10:35:27AM -0800, Patrick Dowler wrote:
>>>> I feel like the change in wording in WD-VOTable means that DALI (where
>>>> xtype="interval" is defined) could (could have) defined min/max behaviour
>>>> to be more like that pointed out by Adrian in the PyVO context. That is:
>>>> use a 2D array value for MAX to specify the minimum bounding interval.
>>> But why would want to introduce magic behaviour (over the standard
>>> array interpretation) when we don't absolutely need to (which
>>> arguably is the case when we do geometries as we ended up doing
>>> them)?
>>> 
>>>> So in my opinion MIN/MAX scalars like we already have, a MAX array (bounds)
>>>> would work, WD-VOTable defers to the xtype-definition but seems to allow
>>>> both (in principle), and DALI needs to be clarified.
>>> True -- but I'd generally argue the fewer special rules the better.
>>> Call it Occam's Editor :-)
>> I agree, with what (I think) Markus is saying, and also what James
>> said earlier: scalar MIN and MAX values applying to both elements
>> of the interval seem like the least surprising semantics for those
>> values to me.
>> 
>> --
>> Mark Taylor  Astronomical Programmer  Physics, Bristol University, UK
>> m.b.taylor at bristol.ac.uk          http://www.star.bristol.ac.uk/~mbt/
> 
> 



More information about the dal mailing list