ivoa-std / MANGO

Model for Annotating Generic Objects in VOTables
2 stars 8 forks source link

Error types and relation to Measurement model Uncertainty #60

Open mcdittmar opened 1 month ago

mcdittmar commented 1 month ago

These comments are on version (commit 27c4bd3) and follow #59.

In this model:

This would create a bit of a cascade, since Mango currently has all of the relevant error types for this use case extending PropertyError so that they have the confidenceLevel attribute.. however

If confidenceLevel were moved into meas:Uncertainty, the only Error items needed in Mango would be the ErrorCorrMatrix and ErrorCovMatrix objects.. unless these are decided to be properly generic for migration to Measurements, but I think that is another topic.

lmichel commented 3 weeks ago

PropertyError: extends Meas:Uncertainty with "confidenceLevel"

We should add a distribution attribute (poisson, gaussian,... ) along with the confidence level.

lmichel commented 3 weeks ago

confidenceLevel should be proposed as an update to the Meas:Uncertainty type

This has been proposed by François Xavier Pineau (@fxpineau) in the RFC1 (post from 2019-09-24). This proposal has been discarded because it didn't cover any model use-case (see thread). On the other hand, it's part of the MANGO's use-cases. It's certainly a shame, but I don't think there's anything to be gained by starting a process to update Meas before MANGO is adopted. It would take an enormous amount of time for a hypothetical gain.

lmichel commented 3 weeks ago

mango:error.Symmetric1D is equivalent to meas:Symmetrical

Yes, this is a way to implement the model view we were talking about at last running meeting. These Mango classes import concepts from Meas and apply them in its own context.

lmichel commented 3 weeks ago

mango:error.Ellipse is equivalent to meas:Ellipse

mango:ellipse is not exactly equivalent to meas:ellipse in a sense that the latter attaches roles (major axis vs minor axis) to vector coordinates (Ellipse.semiAxis card=2), whereas MANGO use explicit attributes for each of the axes. After playing with MIVOT, it turned out that the attribute approach is easier to use.

However, MANGO imports Meas's definitions and uses them in its own context, so that both models keep compliant .