%APN3_PROCEEDINGS_FORM%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% TEMPLATE.TEX -- APN3 (2003) ASP Conference Proceedings template.
%
% Derived from ADASS VIII (98) ASP Conference Proceedings template
% Updated by N. Manset for ADASS IX (99), F. Primini for ADASS 2000,
% D.Bohlender for ADASS 2001, and H. Payne for ADASS XII and LaTeX2e.
%
% Use this template to create your proceedings paper in LaTeX format
% by following the instructions given below.  Much of the input will
% be enclosed by braces (i.e., { }).  The percent sign, "%", denotes
% the start of a comment; text after it will be ignored by LaTeX.  
% You might also notice in some of the examples below the use of "\ "
% after a period; this prevents LaTeX from interpreting the period as
% the end of a sentence and putting extra space after it.  
% 
% You should check your paper by processing it with LaTeX.  For
% details about how to run LaTeX as well as how to print out the User
% Guide, consult the README file.  You should also consult the sample
% LaTeX papers, sample1.tex and sample2.tex, for examples of including
% figures, html links, special symbols, and other advanced features.
%
% If you do not have access to the LaTeX software or a laser printer
% at your site, you can still prepare your paper following the
% instructions in the User Guide.  In such cases, the editors will
% process the file and make any necessary editorial adjustments.
% 
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 
\documentclass[11pt,twoside]{article}  % Leave intact
\usepackage{adassconf}

% If you have the old LaTeX 2.09, and not the current LaTeX2e, comment
% out the \documentclass and \usepackage lines above and uncomment
% the following:

%\documentstyle[11pt,twoside,adassconf]{article}

\begin{document}   % Leave intact

%-----------------------------------------------------------------------
%			    Paper ID Code
%-----------------------------------------------------------------------
% Enter the proper paper identification code.  The ID code for your
% paper is the session number associated with your presentation as
% published in the official conference proceedings.  You can           
% find this number locating your abstract in the printed proceedings
% that you received at the meeting or on-line at the conference web
% site; the ID code is the letter/number sequence proceeding the title 
% of your presentation. 
%
% This will not appear in your paper; however, it allows different
% papers in the proceedings to cross-reference each other.  Note that
% you should only have one \paperID, and it should not include a
% trailing period.
%
% EXAMPLE: \paperID{O4-1}
% EXAMPLE: \paperID{P7-7}
%

\paperID{P3-6}
%%%% ID=P3-6

%-----------------------------------------------------------------------
%		            Paper Title 
%-----------------------------------------------------------------------
% Enter the title of the paper.
%
% EXAMPLE: \title{A Breakthrough in Astronomical Software Development}
% 
% If your title is so long as to fill the page header when you print it,
% then please supply a short form as a \titlemark.
%
% EXAMPLE: 
%  \title{Rapid Development for Distributed Computing, with Implications
%         for the Virtual Observatory}
%  \titlemark{Rapid Development for Distributed Computing}
%

\title{Designing a Data Model for the Virtual Observatory}
\titlemark{ Designing a Data Model for the Virtual Observatory }

%-----------------------------------------------------------------------
%		          Authors of Paper
%-----------------------------------------------------------------------
% Enter the authors followed by their affiliations.  The \author and
% \affil commands may appear multiple times as necessary (see example
% below).  List each author by giving the first name or initials first
% followed by the last name.  Authors with the same affiliations
% should grouped together. 
%
% EXAMPLE: \author{Raymond Plante, Doug Roberts, 
%                  R.\ M.\ Crutcher\altaffilmark{1}}
%          \affil{National Center for Supercomputing Applications, 
%                 University of Illinois Urbana-Champaign, Urbana, IL
%                 61801}
%          \author{Tom Troland}
%          \affil{University of Kentucky}
%
%          \altaffiltext{1}{Astronomy Department, UIUC}
%
% In this example, the first three authors, "Plante", "Roberts", and
% "Crutcher" are affiliated with "NCSA".  "Crutcher" has an alternate 
% affiliation with the "Astronomy Department".  The fourth author,
% "Troland", is affiliated with "University of Kentucky"

\author{Mark Cresitello-Dittmar, Janet DePonte Evans, Ian Evans, 
        Michael Harris, Stephen Lowe, Jonathan McDowell, Arnold Rots }
\affil{Harvard-Smithsonian Center for Astrophysics}

%-----------------------------------------------------------------------
%			 Contact Information
%-----------------------------------------------------------------------
% This information will not appear in the paper but will be used by
% the editors in case you need to be contacted concerning your
% submission.  Enter your name as the contact along with your email
% address.
% 
% EXAMPLE:  \contact{Dennis Crabtree}
%           \email{crabtree@cfht.hawaii.edu}
%

\contact{Mark Cresitello-Dittmar}
\email{mdittmar@cfa.harvard.edu}

%-----------------------------------------------------------------------
%		      Author Index Specification
%-----------------------------------------------------------------------
% Specify how each author name should appear in the author index.  The 
% \paindex{ } should be used to indicate the primary author, and the
% \aindex for all other co-authors.  You MUST use the following
% syntax: 
%
% SYNTAX:  \aindex{Lastname, F. M.}
% 
% where F is the first initial and M is the second initial (if
% used).  This guarantees that authors that appear in multiple papers
% will appear only once in the author index.  
%
% EXAMPLE: \paindex{Crabtree, D.}
%          \aindex{Manset, N.}        
%          \aindex{Veillet, C.}        
%
% NOTE: this information is also used to build the author list that
% appears in the table of contents.  Authors will be listed in the order
% of the \paindex and \aindex commmands.
%

\paindex{Cresitello-Dittmar, M.}
\aindex{DePonte Evans, J.}
\aindex{Evans, I.}
\aindex{Harris, M.}
\aindex{Lowe, S.}
\aindex{McDowell, J. C.}
\aindex{Rots, A. H.}


%-----------------------------------------------------------------------
%		      Author list for page header	
%-----------------------------------------------------------------------
% Please supply a list of author last names for the page header. in
% one of these formats:
%
% EXAMPLES:
% \authormark{Lastname}
% \authormark{Lastname1 \& Lastname2}
% \authormark{Lastname1, Lastname2, ... \& LastnameN}
% \authormark{Lastname et al.}
%
% Use the "et al." form in the case of seven or more authors, or if
% the preferred form is too long to fit in the header.

\authormark{Cresitello-Dittmar et al.}

%-----------------------------------------------------------------------
%			Subject Index keywords
%-----------------------------------------------------------------------
% Enter a comma separated list of up to 6 keywords describing your
% paper.  These will NOT be printed as part of your paper; however,
% they will be used to generate the subject index for the proceedings.
% There is no standard list; however, you can consult the indices
% for past proceedings (http://adass.org/adass/proceedings/).
%
% EXAMPLE:  \keywords{visualization, astronomy: radio, parallel
%                     computing, AIPS++, Galactic Center}
%
% In this example, the author noticed that "radio astronomy" appeared
% in the ADASS VII Index as "astronomy" being the major keyword and
% "radio" as the minor keyword.  The colon is used to introduce another
% level into the index.

\keywords{Virtual Observatory, data: modeling}

%-----------------------------------------------------------------------
%			       Abstract
%-----------------------------------------------------------------------
% Type abstract in the space below.  Consult the User Guide and Latex
% Information file for a list of supported macros (e.g. for typesetting 
% special symbols). Do not leave a blank line between \begin{abstract} 
% and the start of your text.

\begin{abstract}          % Leave intact
The goal of the Virtual Observatory is to make astronomical data more
accessible and to provide the means to more easily analyze that
data. Currently, archives hold analogous data in a variety of
different representations, which impedes interoperability at the data
analysis stage.

An important element of the VO is a data model that can unambiguously
represent the relationships between data values and physical
properties. At the CfA we are developing a data model design that can
support the representation, analysis and display of data collected on
different types of instruments. This model is a common, high-level
framework of general-purpose components for fusion of heterogeneous
data sources. From this framework, we have focused on a subset of
components required to meet selected science objectives on spectral
and image data.
\end{abstract}

%-----------------------------------------------------------------------
%			      Main Body
%-----------------------------------------------------------------------
% Place the text for the main body of the paper here.  You should use
% the \section command to label the various sections; use of
% \subsection is optional.  Significant words in section titles should
% be capitalized.  Sections and subsections will be numbered
% automatically. 
%
% EXAMPLE:  \section{Introduction}
%           ...
%           \subsection{Our View of the World}
%           ...
%           \section{A New Approach}
%
% It is recommended that you look at the sample papers, sample1.tex
% and sample2.tex, for examples for formatting references, footnotes,
% figures, equations, html links, lists, and other special features.  
\section{Dataset}
Here we present elements of an observation data model for the
VO. Figure 1 shows the {\it Dataset}, the major object for managing data
either from empirical observations or from simulations. The shaded
boxes indicate the focus of our current modeling efforts at
CfA. Starting with section 2, this paper concentrates on the {\it Data
Container} object which provides access to the data values. The remaining
components are described briefly here.

\begin{figure}[h] % [t]
\epsscale{0.75}
\plotone{P3-6_fig1.eps}
\caption{Dataset Model}
\end{figure}

The {\it Relative Observational Phase Space Volume {\sl \&} Observable}
component specifies the region of physical space being observed ({\it
Phase Space}, which may have dimensions of space, time, wavelength,
etc.) and the quantity being measured ({\it Observable}) relative to
the observatory location. These values can be translated to an {\it
Absolute} reference by using data in the {\it Observatory Location}.

The {\it Mapping} component provides the translation from pixel elements to
volumes in the phase space. It also specifies the relationship between
the pixel values and physical values.

The {\it Generic Mapping} component provides a framework for organizing
standard data transformations. It can be thought of as a library of
transformations that may be used to define the specific mappings
needed in a dataset. This library includes the usual astronomical
spherical projections as well as mappings between units, between
coordinate systems and between data values that are denoted using
interchangeable properties such as frequency and wavelength.

\section{Data Container}
The {\it Data Container} (Fig. 2) addresses the conflicting requirements of
permitting arbitrarily irregular instrument structures to be
represented while maintaining efficiency for the many common datasets
that are highly regular. It provides access to the measurement data
and a logical view of its organization. (This may differ from the
in-memory layout.) This logical organization is framed by the {\it Index
Set}, which specifies the indexes or labels that identify the
individual data cells. For the many data sets which are naturally laid
out as a simple data (hyper) cube, the Index Set would be the usual
$n$-tuples, e.g., $(1,1),\ldots,(m,n)$. The key to handling the conflicting
needs is to provide multiple views, at least two access patterns for
the data.

\begin{figure}[h] % [t]
\epsscale{0.8}
\plotone{P3-6_fig2.eps}
\caption{Data Container Model}
\end{figure}

To support generality, the {\it Data Container} methods always allow the
list of indexes to be obtained and used to iterate through the data
cells. The data value and/or metadata can be obtained for each cell,
in essence using heavyweight objects for each data item. A data
consumer (i.e., application software) can fall back on this form to
process the data if it does not recognize the {\it Index Set\/}'s structure.

To support efficiency, the {\it Index Set} conforms to one of a small set of
archetypal structures such as array, array with bad cell mask, sparse
array, or event list. Application software can then be designed to
take advantage of the structure to organize processing.

Metadata describing the correspondence between the data cells and
locations in detector or observational space is represented as a
collection of pixel mappings ${\rm PM}_{1}$, ${\rm PM}_{2}$, $\ldots$
into coordinate spaces ${\rm DCS}_{1}$, ${\rm DCS}_{2}$, $\ldots$
Similarly, interpretation of the data cell values is handled by a
value mappings ${\rm VM}_{1}$, ${\rm VM}_{2}$, $\ldots$ into
coordinate spaces ${\rm RCS}_{1}$, ${\rm RCS}_{2}$, $\ldots$ Depending
on the need, the VMs may depend on the cell location as specified by
its index.

These mappings are not simply computable functions, but also have the
type and parameters of the transformation encoded, such as constant,
linear, piecewise linear or tangent projection. Thus, the application
program can inspect this information to best organize its processing.

\section{Three Ways to Data}
In our model, there are three ways of accessing the data:
\begin{itemize}
\item As a list of pixels with no assumptions about contiguity of
  pixels in physical space or in memory.
\item By the logical structure which is defined by the Index Set, such
  as an $n$-dimensional array, which might not be fully rectangular due
  to missing or invalid cells. The data provider determines this
  structure.
\item As chunks of pixels which are rectangular, regular, filled
  arrays addressable by pixel offsets into contiguous memory. This
  supports highly efficient access. A simple FITS image would require
  only a single chunk, mosaics a few chunks, and sparse arrays many
  chunks.
\end{itemize}
% It is up to the data provider to decide whether to represent a dataset
% having a complicated shape as a large number of pieces or as one
% rectangular piece with a mask.

% The concept of a collection of pieces, each of which is a simple array
% (with contiguous pixels and continuous coordinate systems, etc.) is
% powerful, since it is the easiest possible generalization of the
% simple array but can support arbitrarily complicated data. The model
% ensures that applications need not operate on anything more
% complicated than a list of N-dimensional pixel arrays. 

\section{Example: Hubble WFPC2}
% As an example we show how these elements might be used to represent
In the diagram below we show how these elements might be used to represent
the data from the Hubble Wide Field and Planetary Camera. The data
from the four CCDs can be organized as an 800x800x4 block. Mappings
${\rm PM}_{1,2,3}$ describe the layout of the detector panels and the sky
layout in two coordinate systems. 

\begin{figure}[h] % [t]
\epsscale{0.75}
\plotone{P3-6_fig3.eps}
% \caption{Four WFPC2 panels. One panel has a smaller pixel scale.}
\end{figure}

The {\it Index Set} is not constrained to be rectangular. Using this
feature, another {\it Data Container} can be defined describing just the
Wide Field Camera, as shown in the accompanying figure below. This
object uses a different {\it Index Set} and 
correspondingly different mappings to access the same data. The data
provider (i.e., archive) defines the {\it Data Container(s)} and {\it Index
Set(s)}. This gives the provider the flexibility to create an
organization natural for its data, while at the same time define
alternate views for different audiences or purposes.

\begin{figure}[h] % [t]
\epsscale{0.75}
\plotone{P3-6_fig4.eps}
% \caption{Three of the WFPC2 panels with the same pixel scale.}
\end{figure}

\section{Example: Fiberoptic Spectrometer}

In a fiberoptic spectrometer, 1-D spectra are measured at a number of
irregularly-arranged sky positions. As seen in the next figure, the
data may be stored as a 2-D 
array, each row holding the spectrum for a single position.
Consequently, each array element maps to a location in the
3-D domain {\it sky} $\times$ {\it wavelength}. 

\begin{figure}[h] % [t]
\epsscale{0.75}
\plotone{P3-6_fig5.eps}
\end{figure}

\section{Continuing Effort}

Our next steps in moving the data model development forward are:
\begin{itemize}
\item Complete definition of components for 1-D spectra and for images. 
\item Define XML format for data model components. 
\item Develop software to render data from several archives into XML. 
\end{itemize}
We are in the process of developing a prototype system. In addition to
data model components, the system includes a network interface module
that manages the communication details between clients and SIAP
services.

%  As the data model capabilities are developed, they will be
% added to the system to provide uniform, VOstyle access to those data
% products.

\acknowledgments
This material is based on work supported by the National Science Foundation under Grant No. AST-0121296 and under Cooperative Agreement No. AST-0122449.  This effort is also supported by the Chandra X-ray Center under NASA contract NAS8-39073.


%-----------------------------------------------------------------------
%			      References
%-----------------------------------------------------------------------
% List your references below within the reference environment
% (i.e. between the \begin{references} and \end{references} tags).
% Each new reference should begin with a \reference command which sets
% up the proper indentation.  Observe the following order when listing
% bibliographical information for each reference:  author name(s),
% publication year, journal name, volume, and page number for
% articles.  Note that many journal names are available as macros; see
% the User Guide listing "macro-ized" journals.   
%
% EXAMPLE:  \reference Hagiwara, K., \& Zeppenfeld, D.\  1986, 
%                Nucl.Phys., 274, 1
%           \reference H\'enon, M.\  1961, Ann.d'Ap., 24, 369
%           \reference King, I.\ R.\  1966, \aj, 71, 276
%           \reference King, I.\ R.\  1975, in Dynamics of Stellar 
%                Systems, ed.\ A.\ Hayli (Dordrecht: Reidel), 99
%           \reference Tody, D.\  1998, \adassvii, 146
%           \reference Zacharias, N.\ \& Zacharias, M.\ 2003,
%                \adassxii, \paperref{P7.6}
% 
% Note the following tricks used in the example above:
%
%   o  \& is used to format an ampersand symbol (&).
%   o  \'e puts an accent agu over the letter e.  See the User Guide
%      and the sample files for details on formatting special
%      characters.  
%   o  "\ " after a period prevents LaTeX from interpreting the period 
%      as an end of a sentence.
%   o  \aj is a macro that expands to "Astron. J."  See the User Guide
%      for a full list of journal macros
%   o  \adassvii is a macro that expands to the full title, editor,
%      and publishing information for the ADASS VII conference
%      proceedings.  Such macros are defined for ADASS conferences I
%      through XI.
%   o  When referencing a paper in the current volume, use the
%      \adassxii and \paperref macros.  The argument to \paperref is
%      the paper ID code for the paper you are referencing.  See the 
%      note in the "Paper ID Code" section above for details on how to 
%      determine the paper ID code for the paper you reference.  
%
%\begin{references}
%\reference We even have room
%\reference for two one-line references!
%\end{references}

% Do not place any material after the references section

\end{document}  % Leave intact
