4141
4242
4343
44+
4445% definition of table names
4546% \def\radioexttable {ivoa.obscore-radio-ext} % explicit
4647\def\radioexttable {ivoa.obsradio} % not explicitely related to Obscore
4748\def\radioexttable {ivoa.obscore-radio}
4849% definition of standard id for utypes content
49- % \def\obsradioSTDID {ivo://ivoa.net/std/obscore-radio-ext#table-1.0}
50+ % \def\obsradioSTDID {ivo://ivoa.net/std/obscore-radio-ext#table-1.0}
5051
5152\begin {document }
5253
@@ -429,19 +430,60 @@ \subsection{observational configuration and instrumental parameters}
429430We note that \emph {instr\_ feed } could also account for the number of beams in the case of a beam forming/PAF receiver.
430431
431432The scanning strategy adopted in an observation is described by the parameter \emph {scan\_ mode }. This parameter covers both spatial
432- and frequency scanning modes (see Sect.~\ref {subsec:sd } for details).
433+ and frequency scanning modes (see Sect.~\ref {subsec:sd } for details and table~ \ref { tab:scanmode } for possible values ).
433434It is applicable to SD as well as interferometry cases.
434435
435- Pointing mode distinguishes targeted observations from fixed alt-azimuth or wobble ones. The ObsLocTAP specification \citep {2021ivoa.spec.0724S } defines the term \emph {tracking\_ type } for describing this as well as a vocabulary for these modes.
436- We include the same term here in the extension.
436+
437+ \begin {longtable }{ p{6cm} p{7cm} }
438+ \sptablerule
439+ \textbf {value }&\textbf {definition }\cr
440+ \sptablerule
441+ \sptablerule
442+ \texttt {on-source }&\texttt {pointed measurement }\cr
443+ \sptablerule
444+ \texttt {on-off }&\texttt {switched measurements between two positions (source and background) }\cr
445+ \sptablerule
446+ \texttt {raster-map }&\texttt {successive measurement spots on a rectangular mesh }\cr
447+ \sptablerule
448+ \texttt {on-the-fly-cross-scan }&\texttt {successive continuous measurements along two orthogonal directions }\cr
449+ \sptablerule
450+ \texttt {on-the-fly-map }&\texttt {successive continuous measurements along parallel directions }\cr
451+ \sptablerule
452+ \texttt {skydip }&\texttt {long strip of measurements }\cr
453+ \sptablerule
454+ \texttt {frequency-switching }&\texttt {switch from line frequency band to a lineless frequency band }\cr
455+
456+ % \texttt{target}&\texttt{extrasolar target follow up}\cr
457+ \sptablerule
458+ \caption {scan-mode attribute values}
459+ \label {tab:scanmode }
460+ \end {longtable }
461+
462+
463+ Pointing mode distinguishes observations pointed on a fixed target from
464+ observations fixed on a given elevation and azimuth.
465+ % In addition the wobble mode observes both the source and the surrounding background.
466+ The ObsLocTAP specification \citep {2021ivoa.spec.0724S } defines the term
467+ \emph {tracking\_ type } for describing this as well as a vocabulary for
468+ these modes. We include the same term here in the extension. The two
469+ possible values for radio astronomy data are the following:
470+ \begin {itemize }
471+ \item Sidereal : observations pointed on a fixed target, as defined in
472+ ObsLocTAP
473+ \item Fixed-az-el-transit : observations fixed on a given elevation
474+ and azimuth, as in ObsLocTAP
475+ % \item Wobble : observations measuring both the source and the surroundings
476+ \end {itemize }
437477
438478\subsection {Auxiliary datasets useful for data quality estimation }
439479
440480Auxiliary datasets such as \emph {uv } distribution map, dirty beam maps, frequency/amplitude plots, phase/amplitude plots are useful for astronomers to check data quality.
481+
441482In that case DataLink \citep {2023ivoa.spec.1215B } may provide a solution to attach these auxiliary data to ObsCore records. The \texttt {semantics } FIELD in the \{ link\}
442483response will contain \# auxiliary for links to these maps or plots while the \texttt {content\_ qualifier } FIELD introduced from 1.1 could contain a term from a defined vocabulary (to be defined) following the IVOA vocabulary definition \citep {2021ivoa.spec.0525D }.
443484
444485
486+
445487\section {The ivoa.obscore\_ radio table }
446488\label {sec:implementation }
447489The ObsCore Extension for Radio is accessed as a table within a TAP
@@ -606,9 +648,9 @@ \section{The ivoa.obscore\_radio table}
606648\sptablerule
607649\texttt {instr\_ feed }&\texttt {number of feeds }&\texttt {Provenance.ObsConfig.\newline Instrument.Feed }&instr.param&& radio \cr
608650\sptablerule
609- \texttt {scan\_ mode }&\texttt {scan mode (on-off, \newline raster map, on-the-fly map,...) \newline }&\texttt {Provenance.\newline Observation.\newline sky\_ scan\_ mode }&instr.param&& radio \cr
651+ \texttt {scan\_ mode }&\texttt {sky and spectral axis scan mode }&\texttt {Provenance.\newline Observation.\newline sky\_ scan\_ mode }&instr.param&& radio \cr
610652\sptablerule
611- \texttt {tracking\_ mode }&\texttt {targeted, alt-azimuth, wobble, ...) \newline }&\texttt {Provenance.\newline Observation.\newline tracking\_ mode }&instr.param&& radio \cr
653+ \texttt {tracking\_ type }&\texttt {target tracking modes }&\texttt {Provenance.\newline Observation.\newline tracking\_ mode }&instr.param&& radio \cr
612654\caption {ObsCore extension proposal for instrumental parameters for radio data}
613655\label {tab:ExtensionAtt_instrumental }
614656\end {longtable }
@@ -659,34 +701,43 @@ \section{Registry Aspects}
659701
660702Services compliant with this specification are registered using
661703VODataService \citep {2021ivoa.spec.1102D } tablesets.
704+ Compliant tables use the utype
705+ $$
706+ \hbox {\nolinkurl {ivo://ivoa.net/std/ObsCore#radioExt-1.0}.}
707+ $$
708+ %
662709% The view table providing the
663710% join between the basic ObsCore table and the obscore\_radio table
664711% use the utype
665712% $$
666713% \hbox{\nolinkurl{ivo://ivoa.net/std/obscore#radioext-1.0}.}
667714% $$
668715% and this is a signature of the compliance of the service with the current specification.
669- Due to the status of the current specification as an endorsed note, and in prevision of a major
670- upgrade of the ObsCore specification itself which will address the definition of standardID for the
671- different extensions and recommand how to expose them in the compliant services, we don't define
672- any standardID for the extension yet. The discovery of the services and schema containing the
673- radio extension table MUST be done using the table\_ name only as stated below.
716+ % Due to the status of the current specification as an endorsed note, and in prevision of a major
717+ % upgrade of the ObsCore specification itself which will address the definition of standardID for the
718+ % different extensions and recommand how to expose them in the compliant services, we don't define
719+ % any standardID for the extension yet. The discovery of the services and schema containing the
720+ % radio extension table MUST be done using the table\_name only as stated below.
721+ While it is admitted that the table only sits in the tableset of the
722+ embedding TAP service, implementors are urged to use a seperate registry
723+ record with the main TAP service as an auxiliary capability
724+ \citep {2019ivoa.spec.0520D }. In this way, meaningful information
725+ on coverage in space, time, and spectral axes as per VODataService 1.2 can
726+ be communicated to the Registry, which, again, data providers are urged
727+ to do.
728+ % There is no expectation that the coverage information only
729+ % pertains to data with entries in \verb|ivoa.obscore_radio|, i.e., it may be
730+ % a copy of the coverage of the basic ObsCore table.\footnote{Is that
731+ % acceptable? Or should we require pure radio coverage?}
732+
674733
675734However, discovering the obscore\_ radio table alone would be irrelevant because querying this
676- extension table per se doesn't make sense. The same schema MUST also contain the ObsCore table.
677- Being sure our \textit {ivoa } schema contains these both tables,
735+ extension table per se doesn't make sense. The same service delivering the \verb |obscore_radio | table
736+ MUST also contain the ObsCore table.
737+ Being sure our service contains these both tables,
678738the user is able to build any natural JOIN query between these two tables.
679739
680- % While it is admitted that the table only sits in the tableset of the
681- % embedding TAP service, implementors are urged to use a seperate registry
682- % record with the main TAP service as an auxiliary capability
683- % \citep{2019ivoa.spec.0520D}. In this way, meaningful information
684- % on coverage in space, time, and spectral axes as per VODataService 1.2 can
685- % be communicated to the Registry, which, again, data providers are urged
686- % to do. There is no expectation that the coverage information only
687- % pertains to data with entries in \verb|ivoa.obscore_radio|, i.e., it may be
688- % a copy of the coverage of the basic ObsCore table.\footnote{Is that
689- % acceptable? Or should we require pure radio coverage?}
740+
690741
691742% A sample registry record for an obscore\_radio table comes with this
692743% specification\footnote{\auxiliaryurl{sample-record.xml}}.
@@ -701,31 +752,75 @@ \section{Registry Aspects}
701752query like:
702753
703754\ begin{lstlisting}
704- SELECT DISTINCT(access_url), schema_name, table_name
755+ SELECT DISTINCT(access_url), table_name
756+ FROM rr.res_table
757+ NATURAL JOIN rr.capability
758+ NATURAL JOIN rr.interface
759+ WHERE
760+ standard_id LIKE 'ivo://ivoa.net/std/tap%'
761+ AND intf_role='std'
762+ AND table_utype LIKE 'ivo://ivoa.net/std/ObsCore#radioExt-1.%'
763+ AND EXISTS (select 1 from rr.res_table where
764+ table_name LIKE '%obscore')
765+ \end {lstlisting }
766+
767+ In the current status of the ObsCore specification the last statement in the WHERE clause
768+ is the simplest one to ensure the service also delivers the main obscore table.
769+ In the future this statement could be replaced by
770+ \ begin{lstlisting}
771+ AND EXISTS (select 1 from rr.res_table where
772+ table_utype LIKE 'ivo://ivoa.net/std/obscore#core-1.%')
773+ \end {lstlisting }
774+
775+ When we will have other extensions (for example for time) we may want to
776+ discover services which deliver several extensions in addition to obscore
777+ main table.
778+
779+ This could be done by queries such as
780+
781+ \ begin{lstlisting}
782+ SELECT DISTINCT(access_url), table_name
783+ FROM rr.res_table
784+ NATURAL JOIN rr.capability
785+ NATURAL JOIN rr.interface
786+ WHERE
787+ standard_id LIKE 'ivo://ivoa.net/std/tap%'
788+ AND intf_role='std'
789+ AND table_utype LIKE 'ivo://ivoa.net/std/ObsCore#radioExt-1.%'
790+ AND EXISTS (select 1 from rr.res_table where
791+ table_utype LIKE 'ivo://ivoa.net/std/ObsCore#timeExt-1.0'
792+ AND EXISTS (select 1 from rr.res_table where
793+ table_name LIKE '%obscore')
794+ \end {lstlisting }
795+
796+ assuming that the standardID for the time extension currently in progress will be
797+ $$
798+ \hbox {\nolinkurl {ivo://ivoa.net/std/ObsCore#timeExt-1.0}}
799+ $$
800+
801+ In addition the schema containing the ObsCore main table and potentially some of the extensions
802+ SHOULD use the root ObsCore standardID utype :
803+ $$
804+ \hbox {\nolinkurl {ivo://ivoa.net/std/ObsCore}}
805+ $$
806+
807+
808+ in such a way that the query
809+
810+ \ begin{lstlisting}
811+ SELECT DISTINCT(access_url), table_name, schema_name
705812FROM rr.res_table
706813NATURAL JOIN rr.capability
707814NATURAL JOIN rr.interface
708815NATURAL JOIN rr.res_schema
709816WHERE
710817standard_id LIKE 'ivo://ivoa.net/std/tap%'
711818AND intf_role='std'
712- AND table_name LIKE '%obs_radio'
713- AND schema_name LIKE '%ivoa%'
819+ AND schema_utype LIKE 'ivo://ivoa.net/std/ObsCore'
714820\end {lstlisting }
715821
716- % Alternatively the schema and tables can be discovered this way
822+ would allow to discover all services delivering ObsCore and which extension tables they deliver.
717823
718- % \begin{lstlisting}
719- % SELECT DISTINCT(access_url), table_name, schema_name
720- % FROM rr.res_table
721- % NATURAL JOIN rr.capability
722- % NATURAL JOIN rr.interface
723- % NATURAL JOIN rr.res_schema
724- % WHERE
725- % standard_id LIKE 'ivo://ivoa.net/std/tap%'
726- % AND intf_role='std'
727- % AND schema_utype LIKE 'ivo://ivoa.net/std/ObsCore#obscore-radioExt-%'
728- % \end{lstlisting}
729824
730825\appendix
731826
0 commit comments