Tuesday, December 27, 2005

Introduction to VOTable 1.1

****************************************************************
Introduction of VOTable 1.1:http://www.ivoa.net/Documents/latest/VOT.html
****************************************************************
* What is VOTable??
The VOTable format is an XML representation for the tabular data. XML format of VOTable can be easily used for creating web services and With the use of JAVA Parser API for VOTable, one can build spread sheet like tools.

Example:Following is the "velocity and distance estimation" table with six columns and three rows.

Velocities and Distance Estimation
RADECNAMERVELE_RVELR
010.86+41.27N 224-29750.7
287.43 -63.85N 744839610.4
023.48+30.66N 598-18230.7

This can be represented by VOTable document as follows:

<?xml version="1.0"?>
<VOTABLE version="1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:noNamespaceSchemaLocation="http://www.ivoa.net/xml/VOTable/VOTable/v1.1">
   <COOSYS ID="J2000" equinox="J2000." epoch="J2000." system="eq_FK5"/>
   <RESOURCE name="myFavouriteGalaxies">
      <TABLE name="results">
         <DESCRIPTION>Velocities and Distance estimations</DESCRIPTION>
         <PARAM name="Telescope"datatype="float"ucd="phys.size;instr.tel" unit="m" value="3.6"/>
         <FIELD name="RA" ID="col1" ucd="pos.eq.ra;meta.main" ref="J2000" datatype="float"width="6"precision="2"unit="deg"/>
         <FIELD name="Dec" ID="col2" "pos.eq.dec;meta.main" ref="J2000" datatype="float"width="6" precision="2" unit="deg"/>
         <FIELD name="Name" ID="col3" ucd="meta.id;meta.main" datatype="char" arraysize="8*"/>
         <FIELD name="RVel" ID="col4" ucd="src.veloc.hc" datatype="int" width="5" unit="km/s"/>
         <FIELD name="e_RVel" ID="col5" ucd="stat.error;src.veloc.hc" datatype="int" width="3" unit="km/s"/>
         <FIELD name="R" ID="col6" ucd="phys.distance" datatype="float" width="4" precision="1" unit="Mpc">
            <DESCRIPTION>Distance of Galaxy, assuming H=75km/s/Mpc</DESCRIPTION>
         </FIELD>
        <DATA>
            <TABLEDATA>
               <TR><TD>010.68</TD><TD>+41.27</TD><TD>N 224</TD><TD>-97</TD><TD>5</TD><TD>0.7</TD> </TR>
               <TR> <TD>287.43</TD><TD>-63.85</TD><TD>N 6744</TD><TD>839</TD><TD>6</TD><TD>10.4</TD></TR>
               <TR> <TD>023.48</TD><TD>+30.66</TD><TD>N 598</TD><TD>-82</TD><TD>3</TD><TD>0.7</TD> </TR>
            </TABLEDATA>
         </DATA>
      </TABLE>
   </RESOURCE>
</VOTABLE>

* Document Structure
VOTABLE is major XML element in VOTable document.VOTABLE element is composed of one or more RESOURCE elements.Resource is a collection of tables, so RESOURCE element can contain one or more TABLE elements.Table is collection of Metadata(description of columns) and table data(actual data) so TABLE element is composed of FIELDS(description of columns) and TABLEDATA(rows of data).It is not necessary to have
acual data in TABLE element. TABLEDATA element may not be present in VOTable document. One can also store binary data by using STREAM element instead of TABLEDATA element.

From above VOTable document,
VOTable = hierarchy of Metadata + associated Table Data, arranged as a set of Tables
Metadata = parameters + Infos + Descriptions + Links + Fields + Groups
Tables = List of Fields + TableData
TableData = Stream of Rows
Row = List of Cells
Cell = Primitive or Variable length list of primitives or multidimentional array of primitives
Primitive = integer, float, floatComplex, character etc

* Tools for VOTable
(1)conVOT: Tool for converting ASCII or FITS tables to VOTable format
WebSite: http://vo.iucaa.ernet.in/~voi/conVOT.htm
(2)JAVOT(NVO): A Java API for VOTable 1.0 for reading
WebSite: http://www.us-vo.org/VOTable/JAVOT/
(3)SAVOT(European VO): Simple Access to VOTable 1.1 for reading, writing and editing
WebSite: http://simbad.u-strasbg.fr/public/cdsjava.gml

1 comment:

Raminder Singh said...

Links for tools are old so use following link

http://www.ivoa.net/internal/IVOA/IvoaVOTable/VOTableAvailableSoftware.html