\subsection{Mark}
\label{subsec:model-mark}

For the purposes of this exercise, we generated a toy timeseries model based off current models ( Dataset, Cube, Coords, Meas ).  The model extends Cube model elements to facilitate the modeling of a wide variety of TimeSeries flavors.

There are multiple ways the TimeSeries model could be derived from Cube.
The details will depend on a thorough review of the full set of use cases
and requirements.  This toy model focuses on representing the SimpleTimeSeries
as a fairly direct extension of SparseCube... with the addition of requiring
a 'timeAxis'.  The cube component elements are designed to facilitate the 
definition of other TimeSeries described in the CSPTimeseries document, but
are not heavily considered here at this point.

The Simple Time Series model shown in Fig.~\ref{fig:sts-cube}, is defined as an extension of the Cube data model with the addition of only 3 objects.  This approach maximizes the interoperability of the data and reinforces the concept that these data can be considered a slice through a generalized sparse cube.  By creating a VO-DML compliant model, instances of a Simple Time Series can be annotated using their assigned VODML-IDs.  Applications which understand Cube model instances will \textbf{automatically} understand a very large percentage of the Time Series content.  

\begin{figure}[h]
\begin{center}
  \includegraphics[width=\textwidth]{figs/Mark_SimpleTimeSeries.png}
\caption{Simple Time Series as extension of Cube.}\label{fig:sts-cube}
\end{center}
\end{figure}

Having separate models for different areas of the 'Universe of Discourse' maximizes interoperability, but can take some practice to interpret.  Below is a descriptive outline of the model structure.

\noindent\textbf{ds:Dataset Metadata}
\begin{itemize}
\item  Dataset - provides generic identification and curation metadata for the dataset (eg: Curation, DataID, etc).
\item  ObsDataset - adds metadata related to the Observation (eg: Target, Instrument, Configuration, etc)
\end{itemize}

\noindent\textbf{cube:N-Dimensional Cube} - 
This model defines generic cube data products, either as SparseCube-s (eg: Event lists) or Image-s (eg: nD Pixelated image).  The Simple Time Series model will extend from SparseCube, inheriting the following:
\begin{itemize}
\item  A reference to the relevant Dataset Metadata instance which describes it.
\item  A collection of NDPoint-s, each being a collection of associated Observables. (eg: time, position, mag )
\item  Observable - identifies the item as 'dependent' or 'independent', and provides the measured data value ( value + error ) which is described in the Measurement model.
\end{itemize}

\noindent\textbf{meas:Measurement} - 
This model defines measured data and their associated errors.  It is a generic model, so provides the basis for many types of measured data.  In some cases, additional metadata is required to fully describe the measurement and how it was obtained.  These are expected to be defined in models which specialize in that content.
\begin{itemize}
\item  CoordMeasure - class of Measure given by a Coordinate 'value' plus one or more Error-s also defined in that model.
\end{itemize}

\noindent\textbf{spec:Spectral Model} - 
This is a dummy Spectral model for illustrating how a specialized LuminosityMeasure could be defined which provides additional metadata related to how the Luminosity value was determined.. eg: which photometry filter was used. 
\begin{itemize}
\item  LuminosityMeasure - Extends CoordMeasure, so has a Coordinate value + Errors, and adds a reference to associated Photometry metadata.
\item  NOTE: being an extension of CoordMeasure, this type is automatically usable in a Cube instance, and therefore, SimpleTimeSeries.
\end{itemize}

\noindent\textbf{ts:Simple Time Series} - 
The Simple Time Series is modeled as a 'view' through a sparse cube.  Time becomes the independent axis, with other observable axes providing the measured data.
\begin{itemize}
\item  SimpleTimeSeries - defined as a SparseCube which MUST contain TSPoint-s.
\item  TSPoint - adds a single 'independent' timeAxis to the generic NDPoint.
\item  SampleTime - provides the TimeMeasure for the point.  TimeMeasure is defined in the Measurment model, giving the Coordinate value in JD, MJD, ISO, etc.. plus any associated errors.  The Coordinate is associated with a TimeFrame identifying the timescale and reference position. \textbf{NOTE:} This element includes basically all the information described in Table~\ref{tab:metadata}.
\end{itemize}

With a validated VO-DML compliant model, we can generate serializations which are annotated using the element VODML-ids.  In Section~\ref{subsec:approach-mark}, we describe the serialized sample files generated for this study based on this model, using the current VO-DML/Mapping syntax proposal.
