Skip to content
Merged
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
71 changes: 32 additions & 39 deletions DALI.tex
Original file line number Diff line number Diff line change
Expand Up @@ -580,9 +580,9 @@ \section{Data Types and Literal Values}
\label{sec:xtypes}
In this section we specify how values are to be expressed. These literal values
are used as input or output from DAL services: as parameter values when
invoking simple services, as data values in response documents (e.g. VOTable),
invoking services, as data values in response documents (e.g. VOTable),
etc. We define some general purpose values for the \xmlel{xtype} attribute of
the VOTable \xmlel{FIELD} and \xmlel{PARAM} elements for simple
the VOTable \xmlel{FIELD} and \xmlel{PARAM} elements for simple
structured values: \emph{timestamp}, \emph{interval},
\emph{hms}, \emph{dms},
\emph{point}, \emph{circle}, \emph{range}, \emph{polygon}, \emph{moc},
Expand All @@ -596,23 +596,13 @@ \section{Data Types and Literal Values}

\subsection{Numbers}
Integer and real numbers must be represented in a manner consistent with the
specification for numbers in VOTable \citep{2019ivoa.spec.1021O}.
specification for numbers in VOTable \citep{2019ivoa.spec.1021O}. When used as
values in service parameters, the serialization for \xmlel{TABLEDATA} must be used.

\subsection{Boolean}
Boolean values must be represented in a manner consistent with the
specification
for Boolean in XML Schema Datatypes \citep{std:XSD2}. The values 0 and false
are equivalent. The values 1 and true are equivalent.

\begin{verbatim}
FOO=1
FOO=true
\end{verbatim}

\begin{verbatim}
BAR=0
BAR=false
\end{verbatim}
specification for boolean in VOTable \citep{2019ivoa.spec.1021O}. When used as
values in service parameters, the serialization for \xmlel{TABLEDATA} must be used.

\subsection{Timestamp}
Date and time values must be represented using the convention established for
Expand Down Expand Up @@ -668,7 +658,7 @@ \subsection{Timestamp}
defaulting to UTC.

Timestamp values serialised on VOTable or in service parameters must have the following metadata in
the \xmlel{FIELD} element: \verb|datatype="char"|, \verb|arraysize="*"|,
\xmlel{FIELD} and/or \xmlel{PARAM} elements: \verb|datatype="char"|, \verb|arraysize="*"|,
\verb|xtype="timestamp"|; the arraysize may be set to a more specific value if it is known (e.g.
\verb|arraysize="10"| for dates only).

Expand Down Expand Up @@ -700,12 +690,12 @@ \subsection{Intervals}

\noindent are all legal integer interval values.

Floating point interval values serialised in VOTable or service parameters must have the following metadata in the
\xmlel{FIELD} element: \verb|datatype="double"| or \verb|datatype="float"|,
Floating point interval values serialised in VOTable or service parameters must have the following metadata
in \xmlel{FIELD} and/or \xmlel{PARAM} elements: \verb|datatype="double"| or \verb|datatype="float"|,
\verb|arraysize="2"|, \verb|xtype="interval"|.

Integer interval values serialised in VOTable or service parameters must have the following metadata in the
\xmlel{FIELD} element: \verb|datatype="short"| or \verb|datatype="int"| or
Integer interval values serialised in VOTable or service parameters must have the following metadata
in \xmlel{FIELD} and/or \xmlel{PARAM} elements: \verb|datatype="short"| or \verb|datatype="int"| or
\verb|datatype="long"|, \verb|arraysize="2"|, \verb|xtype="interval"|.

Interval values serialised in VOTable (\xmlel{FIELD}) or service parameters
Expand Down Expand Up @@ -764,8 +754,8 @@ \subsection{Point}
specific services may define something that is applicable in a more limited context.

\subsection{Circle}
Circle values serialised in VOTable or service parameters must have the following metadata in the
\xmlel{FIELD} element: \verb|datatype="double"| or \verb|datatype="float"|, \verb|arraysize="3"|,
Circle values serialised in VOTable or service parameters must have the following metadata in
\xmlel{FIELD} and/or \xmlel{PARAM} elements: \verb|datatype="double"| or \verb|datatype="float"|, \verb|arraysize="3"|,
\verb|xtype="circle"|.
The values are ordered as a point followed by a radius. For example:

Expand All @@ -791,8 +781,9 @@ \subsection{Circle}

\subsection{Range}
Range values serialised in VOTable or service parameters must have the following
metadata in the \xmlel{FIELD} element: \verb|datatype="double"| or \verb|datatype="float"|,
\verb|arraysize="4"|, \verb|xtype="range"|. A range is a coordinate bounding box specified
metadata in the \xmlel{FIELD} and/or \xmlel{PARAM} elements:
\verb|datatype="double"| or \verb|datatype="float"|, \verb|arraysize="4"|, \verb|xtype="range"|.
A range is a coordinate bounding box specified
as two pairs of coordinate values: min-coordinate1 max-coordinate1 min-coordinate2 max-coordinate2.
For example:

Expand Down Expand Up @@ -823,8 +814,9 @@ \subsection{Range}
more limited context.

\subsection{Polygon}
Polygon values serialised in VOTable or service parameters must have the following metadata in the
\xmlel{FIELD} element: \verb|datatype="double"| or \verb|datatype="float"|, \verb|arraysize="*"|, \verb|xtype="polygon"|
Polygon values serialised in VOTable or service parameters must have the following metadata in
\xmlel{FIELD} and/or \xmlel{PARAM} elements:
\verb|datatype="double"| or \verb|datatype="float"|, \verb|arraysize="*"|, \verb|xtype="polygon"|
(where arraysize may also be fixed length or variable length with limit).
The array holds a sequence of vertices (points) (e.g. longitude latitude longitude
latitude ...) with an even number of values and at least three (3) points (six
Expand Down Expand Up @@ -857,7 +849,7 @@ \subsection{Polygon}

\subsection{MOC}
Spatial MOC (Multi Order Coverage) values serialised in VOTable or service parameters must
have the following metadata in the \xmlel{FIELD} element:
have the following metadata in \xmlel{FIELD} and/or \xmlel{PARAM} elements:
\verb|datatype="char"|, \verb|arraysize="*"|, \verb|xtype="moc"|
(where arraysize may also be fixed length or variable length with limit).
The value is the ascii serialisation of a MOC specified in \citet{2022ivoa.spec.0727F}
Expand All @@ -867,8 +859,8 @@ \subsection{MOC}

\subsection{Multi-Polygon}
Multi-polygon values serialised in VOTable or service parameters must have the
following metadata in the \xmlel{FIELD} element: \verb|datatype="double"| or \verb|datatype="float"|,
\verb|arraysize="*"|, \verb|xtype="multipolygon"|
following metadata in \xmlel{FIELD} and/or \xmlel{PARAM} elements:
\verb|datatype="double"| or \verb|datatype="float"|, \verb|arraysize="*"|, \verb|xtype="multipolygon"|
(where arraysize may also be fixed length or variable length with limit).
The array holds a sequence of non-overlapping polygon(s) separated by a pair of \verb|NaN| values
(a NaN point). For example:
Expand All @@ -886,8 +878,8 @@ \subsection{Multi-Polygon}
for polygon above, except that the maximum value may be a multipolygon.

\subsection{Shape}
Shape values serialised in VOTable or service parameters must have the following metadata in the
\xmlel{FIELD} element: \verb|datatype="char"|, \verb|arraysize="*"|, \verb|xtype="shape"|
Shape values serialised in VOTable or service parameters must have the following metadata in
\xmlel{FIELD} and/or \xmlel{PARAM} elements: \verb|datatype="char"|, \verb|arraysize="*"|, \verb|xtype="shape"|
(where arraysize may also be fixed length or variable length with limit).
The value is a polymorphic shape made up of a type label (equivalent to an existing simple
geometric xtype and the string serialisation of the value as described above.
Expand Down Expand Up @@ -949,15 +941,15 @@ \subsection{Shape}

\subsection{URI}
URI values \citep{std:RFC3986} serialised in VOTable or service parameters
should have the following metadata in the \xmlel{FIELD} element: \verb|datatype="char"|,
\verb|arraysize="*"|, \verb|xtype="uri"| (where arraysize may also be fixed length or
variable length with limit).
should have the following metadata in \xmlel{FIELD} and/or \xmlel{PARAM} elements:
\verb|datatype="char"|, \verb|arraysize="*"|, \verb|xtype="uri"|
(where arraysize may also be fixed length or variable length with limit).

\subsection{UUID}
Universal Unique Identifier (UUID) values serialised in VOTable or service parameters
should have the following metadata in the \xmlel{FIELD} element: \verb|datatype="char"|,
\verb|arraysize="36"|, \verb|xtype="uuid"| (where arraysize may also be fixed length or
variable length with limit).
should have the following metadata in \xmlel{FIELD} and/or \xmlel{PARAM} elements:
\verb|datatype="char"|, \verb|arraysize="36"|, \verb|xtype="uuid"|
(where arraysize may also be fixed length or variable length with limit).

UUID values \citep{std:RFC4122} are serialised using the canonical ascii (hex)
representation, for example: e0b895ca-2ee4-4f0f-b595-cbd83be40b04.
Expand Down Expand Up @@ -1515,11 +1507,12 @@ \section{Changes}

\subsection{PR-DALI-1.2}
\begin{itemize}
\item Clarified that truncation indicated by OVERFLOW can occur independent of
\item clarified that truncation indicated by OVERFLOW can occur independent of
MAXREC
\item added new xtypes: hms, dms, moc, multipolygon, range, shape, uri, uuid
\item changed VOSI-availability to optional
\item changed VOSI-capability so it is only required for registered services
\item clarified use of VOTable serialisation for numbers and boolean
\end{itemize}

\subsection{PR-DALI-1.1-20170412}
Expand Down