Skip to content

Commit dae4adc

Browse files
authored
Merge pull request #102 from lmichel/dal-review
Dal review
2 parents b068b41 + ca4089d commit dae4adc

26 files changed

+124
-127
lines changed

.github/workflows/preview.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ on:
1818
branches:
1919
- master
2020
- wd-v1.0
21-
- apps-review
21+
- dal-review
2222
- pr-1.0
2323

2424
jobs:

doc/MANGO.tex

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -157,7 +157,8 @@ \subsection{Role within the VO Architecture}
157157
\end{figure}
158158

159159
Fig.~\ref{fig:archdiag} shows the role this document plays within the
160-
IVOA architecture \citep{2010ivoa.rept.1123A}. This model reuses existing data models like Measure and Coords, and PhotDM. Implementations can use the TAP protocol and distribute data model instances in VOTable.
160+
IVOA architecture \citep{2010ivoa.rept.1123A}. This model reuses existing data models like Measure and Coords, and PhotDM.
161+
Implementations can use DAL protocols (e.g. TAP, Simple Cone Search) and distribute data model instances in VOTable.
161162
UCD, VOUnits and Vocabularies are also re-used.
162163

163164
\section{Representing observed astronomical objects : Use Cases and Requirements}
@@ -242,22 +243,22 @@ \section{Model Overview}
242243
\begin{figure}
243244
\includegraphics[width=1.0\textwidth]{../model/overview.png}
244245
\caption{Model overview}
245-
\label{overview}
246+
\label{fig:overview}
246247
\end{figure}
247248

248-
249-
The root class of the model \texttt{MANGOObject} has only
249+
The model architecture is shown in Fig \ref{fig:overview}.
250+
The root class, \texttt{MangoObject}, has only
250251
one mandatory attribute, an \texttt{identifier}.
251252
Identifiers should be unique within a collection, e.g. a data table, although
252253
this feature is not required by the model.
253254

254-
In addition to its identifier, \texttt{MANGOObject} objects have 2 components:
255+
In addition to its identifier, \texttt{MangoObject} objects have 2 components:
255256

256257
\begin{itemize}[noitemsep,topsep=0pt,parsep=0pt,partopsep=0pt]
257258

258-
\item \texttt{dataOrigin} (origin of the \texttt{MANGOObject}) : The structure of this class is based on
259+
\item \texttt{dataOrigin} (origin of the \texttt{MangoObject}) : The structure of this class is based on
259260
the recommendations of the DCP interest group \footnote{https://ivoa.net/documents/DataOrigin/index.html}.
260-
\item \texttt{propertyDock} (place holder for all the \texttt{MANGOObject} properties) :
261+
\item \texttt{propertyDock} (place holder for all the \texttt{MangoObject} properties) :
261262
This is an open-ended collection.
262263
Mango properties inherit from the base class \texttt{Property},
263264
which contains everything necessary to identify both their nature and their role.
@@ -329,7 +330,7 @@ \subsubsection{MANGO and MIVOT: 2 Strategies for Structuring Tabular Data}
329330

330331
MANGO is used to represent catalogue data which are typically provided in tabular
331332
form by TAP services \citep{2019ivoa.spec.0927D}
332-
or other DAL nodes (one of the reference implementation is based on a Vizier SCS).
333+
or other DAL nodes (one of the reference implementation is based on a VizieR SCS).
333334
The linking between MANGO instances and table row elements is provided by MIVOT annotations.
334335
There are two possible strategies for establishing this mapping:
335336

doc/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ DOCNAME = MANGO
77
DOCVERSION = 1.0
88

99
# Publication date, ISO format; update manually for "releases"
10-
DOCDATE = 2025-12-18
10+
DOCDATE = 2026-01-22
1111

1212
# What is it you're writing: NOTE, WD, PR, REC, PEN, or EN
1313
DOCTYPE = PR

doc/ivoatexmeta.tex

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
% GENERATED FILE -- edit this in the Makefile
22
\newcommand{\ivoaDocversion}{1.0}
3-
\newcommand{\ivoaDocdate}{2025-12-18}
4-
\newcommand{\ivoaDocdatecode}{20251218}
3+
\newcommand{\ivoaDocdate}{2026-01-22}
4+
\newcommand{\ivoaDocdatecode}{20260122}
55
\newcommand{\ivoaDoctype}{PR}
66
\newcommand{\ivoaDocname}{MANGO}
77
\renewcommand{\ivoaBaseURL}{https://www.ivoa.net/documents/MANGO}

doc/model.tex

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -132,13 +132,13 @@ \section{Model: mango }
132132
\textbf{vodml-id: DataLink.content\_type} \newline
133133
\textbf{type: \hyperref[sect:ivoa]{ivoa:string}} \newline
134134
\textbf{multiplicity: 1} \newline
135-
mime type of the content the link returns (see DataLink 1.1)
135+
Provides the mime type of the content the link returns (see DataLink 1.1)
136136

137137
\subsubsection{DataLink.access\_url}
138138
\textbf{vodml-id: DataLink.access\_url} \newline
139139
\textbf{type: \hyperref[sect:ivoa]{ivoa:anyURI}} \newline
140140
\textbf{multiplicity: 1} \newline
141-
contains an URL for downloading a single resource. There is no restriction on the type of resource accessed by the links.
141+
Contains an URL for downloading a single resource. There is no restriction on the type of resource accessed by the links.
142142

143143
\subsubsection{DataLink.content\_qualifier}
144144
\textbf{vodml-id: DataLink.content\_qualifier} \newline
@@ -150,7 +150,7 @@ \section{Model: mango }
150150
\textbf{vodml-id: DataLink.local\_semantics} \newline
151151
\textbf{type: \hyperref[sect:ivoa]{ivoa:string}} \newline
152152
\textbf{multiplicity: 1} \newline
153-
Allows for identification of corresponding rows for different IDs in the same DataLink service where the combination of semantics, content\_type and content\_qualifier is not sufficient to identify them (see DataLink 1.1).
153+
Allows for link identification where the combination of semantics, content\_type and content\_qualifier is not sufficient (see DataLink 1.1).
154154

155155
\subsection{DateTime}
156156
\label{sect:DateTime}
@@ -178,7 +178,7 @@ \section{Model: mango }
178178

179179

180180
\label{sect:EpochPosition}
181-
This class (fig \ref{fig:EpochPosition}) is a flattened view of objects/concepts from the Astronomical Measurements Model \citep{2022ivoa.specQ1004R} that have been put together to form a consistent description of the position of an object moving over time. It consists of a celestial position, a proper motion, a radial velocity and a parallax and their associated errors encapsulated into the \texttt{EpochPositionErrors} class. The values of these properties are pulled from the underlying Astronomical Coordinates and Coordinate Systems model \citep{2022ivoa.spec.1004R} At a high level the properties map as follows: \begin{itemize} \item celestial position -> \texttt{meas:Position} \item proper motion -> \texttt{meas:ProperMotion} \item radial velocity -> \texttt{meas.Velocity} \item parallax -> no suitable counterpart at this time \end{itemize} All components use the same coordinate systems for both time and space coordinates. \begin{itemize} \item Both position and proper motion reuse \texttt{coords:LonLatPoint} elements. \item The space coordinate system is imported from \texttt{coords:spaceSys}. \item The time coordinate system is imported from \texttt{coords:simeSys}. \end{itemize} It is recommended to use the \texttt{ObsDate} field to store the epoch of the observation instead of the \texttt{epoch} field of \texttt{coords:spaceSys}. There are 2 reasons for this: \begin{itemize} \item Using the epoch of \texttt{coords:spaceSys} requires to work with the \texttt{coords:CustomRefLocation} class to carry the reference location. This class does not support the standard reference locations such as e.g. BARYCENTER. \item the observation date can be read in a column and therefore change with each data row. I this case, it cannot be stored as an element of the space coordinate system but as an \texttt{EPochPosition} attribute. \end{itemize} All components have their own units which must be consistent with each other. This consistency is not enforced by the model. Possible correlations between \texttt{EpochPosition} parameters are handled by the \texttt{EpochPositionCorrelations} class. Errors along the different axes are grouped in the \texttt{EpochPositionErrors} class. In some cases the errors might conflict with the correlations: \begin{itemize} \item \texttt{Ellipse} errors on position or proper motion must not be used together with the \texttt{longitudeLatitude} (or \texttt{pmLongitudePmLatitude}) correlation fields. In fact, using elliptical errors implies a correlation between the two spatial axes which must not conflict with the correlations defined in \texttt{EpochPositionCorrelations}. \end{itemize}
181+
This class (fig \ref{fig:EpochPosition}) is a flattened view of objects/concepts from the Astronomical Measurements Model \citep{2022ivoa.specQ1004R} that have been put together to form a consistent description of the position of an object moving over time. It consists of a celestial position, a proper motion, a radial velocity and a parallax and their associated errors encapsulated into the \texttt{EpochPositionErrors} class. The values of these properties are pulled from the underlying Astronomical Coordinates and Coordinate Systems model \citep{2022ivoa.spec.1004R} At a high level the properties map as follows: \begin{itemize} \item celestial position -> \texttt{meas:Position} \item proper motion -> \texttt{meas:ProperMotion} \item radial velocity -> \texttt{meas.Velocity} \item parallax -> no suitable counterpart at this time \end{itemize} All components use the same coordinate systems for both time and space coordinates. \begin{itemize} \item Both position and proper motion reuse \texttt{coords:LonLatPoint} elements. \item The space coordinate system is imported from \texttt{coordsSpaceSys}. \item The time coordinate system is imported from \texttt{coords:TimeSys}. \end{itemize} It is recommended to use the \texttt{ObsDate} field to store the epoch of the observation instead of the \texttt{epoch} field of \texttt{coords:SpaceSys}. There are 2 reasons for this: \begin{itemize} \item Using the epoch of \texttt{coords:SpaceSys} requires to work with the \texttt{coords:CustomRefLocation} class to carry the reference location. This class does not support the standard reference locations such as e.g. BARYCENTER. \item The observation date can be read in a column and therefore change with each data row. In this case, it cannot be stored as an element of the space coordinate system but as an \texttt{EpochPosition} attribute. \end{itemize} All components have their own units which must be consistent with each other. This consistency is not enforced by the model. Possible correlations between \texttt{EpochPosition} parameters are handled by the \texttt{EpochPositionCorrelations} class. Errors along the different axes are grouped in the \texttt{EpochPositionErrors} class. In some cases the errors might conflict with the correlations: \begin{itemize} \item \texttt{Ellipse} errors on position or proper motion must not be used together with the \texttt{longitudeLatitude} (or \texttt{pmLongitudePmLatitude}) correlation fields. In fact, using elliptical errors implies a correlation between the two spatial axes which must not conflict with the correlations defined in \texttt{EpochPositionCorrelations}. \end{itemize}
182182

183183
\subsubsection{EpochPosition.longitude}
184184
\textbf{vodml-id: EpochPosition.longitude} \newline
@@ -428,13 +428,13 @@ \section{Model: mango }
428428

429429
\subsection{Property}
430430
\label{sect:Property}
431-
Class holder for a \textit{flavor} of property’ ie: there should be a Property subclass for each \textit{flavor} of Property being hosted. The property types are not limited to “physical or calculated” (eg: flags, assigned labels) This class specifies both type and role of the property, and hosts the property instance itself.
431+
Class holder for a \textit{flavor} of property, i.e., there should be a Property subclass for each \textit{flavor} of Property being hosted. The property types are not limited to “physical or calculated” (eg: flags, assigned labels) This class specifies both type and role of the property, and hosts the property instance itself.
432432

433433
\subsubsection{Property.semantics}
434434
\textbf{vodml-id: Property.semantics} \newline
435435
\textbf{type: \hyperref[sect:VocabularyTerm]{mango:VocabularyTerm}} \newline
436436
\textbf{multiplicity: 0..1} \newline
437-
Reference to a semantic concept giving the nature of the property or of the set made of the property and its associated properties. The semantics field contains a URI for a concept that describes the meaning of the property. This attribute is intended to be machine-readable and to assist automated link selection, presentation, and usage. The value is always interpreted as a URI; relative URIs (Berners-Lee and Fielding et al., 2005) are completed using the base URI of the core DataLink vocabulary, \url{http://www.ivoa.net/rdf/datalink/core}. Terms from this vocabulary must always be written as relative URIs. This means that for concepts from the core vocabulary, the value in the semantics fields always starts with a hash. (datalink1.1). The semantics concept applies to a single property or to the set made of the property and its associated properties (e.g. position and flag).
437+
Reference to a semantic concept giving the nature of the property or of the set made of the property and its associated properties (e.g. position and flag). This attribute is intended to be machine-readable and to assist automated property presentation, and usage. The value is always interpreted as a URI; relative URIs are completed using the base URI of the core UAT vocabulary, \url{http://www.ivoa.net/rdf/uat} (see \ref{sect:VocabularyTerm}).
438438

439439
\subsubsection{Property.description}
440440
\textbf{vodml-id: Property.description} \newline
@@ -512,7 +512,7 @@ \section{Model: mango }
512512

513513
\subsection{iso}
514514
\label{sect:iso}
515-
Primitive type for observation dates expressed as an ISO Date (e.g. "2025-08-07T09:29:14").
515+
Primitive type for observation dates expressed as an ISO-8601 Date (e.g. "2025-08-07T09:29:14").
516516

517517
\subsection{mjd}
518518
\label{sect:mjd}
@@ -533,9 +533,9 @@ \section{Model: mango }
533533
\begin{itemize}
534534

535535
\item[\textbf{SMOC}]: \textbf{vodml-id:} FootprintSerialization.SMOC \newline
536-
\textbf{description:} Label indicating that the footprint has been serialized as a SMOC \citep{2022ivoa.spec.0727F}. SMOC should be in equatorial ICRS. This overrides the attached space coordinate system (\texttt{spaceSys} reference). When using this serialisation, \texttt{spaceSys} can be ignored.
536+
\textbf{description:} Label indicating that the footprint has been serialized as a SMOC \citep{2022ivoa.spec.0727F}. SMOC should be in equatorial ICRS. This overrides \texttt{mango:Footprint.spaceSys} reference which can be ignored when using this serialisation.
537537
\item[\textbf{STC-S}]: \textbf{vodml-id:} FootprintSerialization.STC-S \newline
538-
\textbf{description:} Label indicating that the footprint has been serialized as a STC-S string (see \url{https://www.ivoa.net/documents/STC-S/20130917/index.html}). SMOC should be in equatorial ICRS. This overrides the attached space coordinate system (\texttt{spaceSys} reference). When using this serialisation, \texttt{spaceSys} can be ignored.
538+
\textbf{description:} Label indicating that the footprint has been serialized as a STC-S string (see \url{https://www.ivoa.net/documents/STC-S/20130917/index.html}). The STC-S space coordinate system overrides the \texttt{mango:Footprint.spaceSys} reference which can be ignored when using this serialisation. Although the STC-S standard has been an IVOA draft for many years, it is still used by certain services, which justifies MANGO's support for it.
539539
\item[\textbf{POLYGON}]: \textbf{vodml-id:} FootprintSerialization.POLYGON \newline
540540
\textbf{description:} Label indicating that the footprint has been serialized as a polygon as defined in \cite{2017ivoa.spec.0517D} section 3.3.7. Using the polygon serialization requires the space coordinate system to be defined.
541541
\end{itemize}

0 commit comments

Comments
 (0)