Spectral Data Model V2.0 working draft
Mark Cresitello-Dittmar
mdittmar at head.cfa.harvard.edu
Thu Oct 25 10:10:35 PDT 2012
My notes from meeting with Mireille Louys to review the SpectralDM 2.0 draft
against ObsCore and Char 2.0. Specifically the UType set.
Only got through comparison of Spectral and ObsCore, but Char 2.0 is in close
agreement with that, so we should not have an issue. It is agreed that we
should go through the Char 2.0 comparison before releasing.
General
+ Spectral model does not list generic 'CharAxis' utypes.. only the named types.
Since it the spectral model works exclusively with the named types
(e.g. SpectralAxis), this is not considered an issue.
+ Clarify Axis Requirements diagrams. and title. The inclusion of
“BackgroundModel” to the Char side of the diagram when it is not (ever) allowed
is confusing. In addition, modify the title to better indicate that this
diagram shows axis requirements and not a relation of elements.
+ One comment already received on the model is the use of xmlns namespace
declaration, and the term “namespace” in general. To serve the desire to retain
a connection between the serialization and the corresponding model, the
following enhancement to Dataset.DataModel is suggested.
* Dataset must allow 0:* (at least 2) DataModel objects to identify both core
model and 'extended' model content.
* Dataset.DataModel.Name
Dataset.DataModel.Prefix
Dataset.DataModel.uri
Comparison with ObsCore utypes
Char.*Axis.Calibration:
+ ObsCore uses “calibStatus”
+ Spectral has the same enumeration set for each axis, while some values (like
'normalized') applies only to the observable axis (FluxAxis)
Char.*Axis.StatError:
+ ObsCore uses the full STC hierarchy for the value (StatError.refval.value).
By simplifying the utype to the base element, there is no opportunity for
extending in the future. It is strongly suggested that we add the depth
for the value attribute. The model CAN still require that the units of
these attributes MUST be the same as the corresponding value, and not define
the utypes, but the list would become more consistent.
Char.*Axis.Coverage.Bounds.Start/Stop
+ ObsCore uses stc 'limits' structure below 'bounds' to represent the interval.
In this case, the simplified Start|Stop convention is preferable.
+ However, the description can be enhanced to specify the relationship to
Min|Max as expressed in the attribute UCDs.
Char.SpectralAxis.Resolution.refVal
+ This is more in agreement than StatError. It should be noted that the
ObsCore model uses this same utype for the time and spatial axes, so has
this difference itself.
Char.SpectralAxis.ResolPower.refval
+ Spectral model utype is wrong.. missing “Resolution” level and so does not
agree with text. The corrected utype matches ObsCore.
DataID.DatasetID
+ ObsCore uses ObservationID, but the Spectral value seems more appropriate.
Curation.Date
+ When ObsCore adopted these elements, this attribute became 'releaseDate'.
It is not certain that any action is suggested here.
Spectral vs Characterization 2.0
SamplingPrecision
+ This node name is simplified to 'Sampling' in Char 2.0, which is a change
from earlier versions.
Q: Spectral is currently baselined to agree as much as possible with
Char 1.?. I would suggest leaving this as is until a minor update reconciles
the the model against the updated Char, but we may want to go straight for
this, which means a review of the Section 3.0 against the new model.
More information about the dm
mailing list