Extended IDL Help

This page was created by the IDL library routine mk_html_help. For more information on this routine, refer to the IDL Online Help Navigator or type:

     ? mk_html_help

at the IDL command line prompt.

Last modified: Wed Feb 23 10:25:57 2005.


List of Routines


Routine Descriptions

CALL_REGISTRY

[Next Routine] [List of Routines]
 Project     : VOlib (CTIO)

 NAME: 
       CALL_REGISTRY

 CATEGORY:
       Utility

 PURPOSE:
       To make queries to the NVO Registry Services.
       Specifically, we call the JHU/STSci NVO Registry
       (http://nvo.stsci.edu/voregistry/index.aspx)
       As of the current version, a user may search
       the registry for a given KEYWORD in any of 7
       categories: Title, ShortName, Subject, Type,
       Description, ServiceType, and Identifier.
       Multiple KEYWORD searches are not available.
       However, the use may specify a ServiceType
       (Cone, SIAP, SkyNode).
            

 CALLING SQUENCE:
       IDL>  call_registry,str=str1,'parallax' [,/cone,/siap,/skynode]

 INPUTS: 
       INPUT STING = keyword to be searched for in the registry
                       
 OUTPUS: 
        str: a structure containing the registry info. Type
             IDL> help, /str, str 
             to find out the name of the columns returned.
             Basically, all FIELD names (or IDs) are given data columns
             plus the first column which is entitled CREATED and is
             a string of the data the structure was created. If only
             one tag exists in your structure, the VOT was empty.

 KEYWORD PARAMETERS:
        /CONE specifies that you want only cone services
        /SIAP specifies that you want only siap services
        /SKYNODE specifies that you want only cone services

 DEPENDENCIES:
        The VOlib IDL/Java class libraries (included with VOlib).

 MODIFCATION HISTROY: 
        Written: 2/04/05 Christopher J. Miller (NOAO/CTIO)
        Contact     : cmiller@noao.edu

 KNOWN ISSUES:
        The registry calls require registries to have their
        information properly filled out as well as to use some
        standardized methods. For instance, while there is only
        one CONE type service in the JHU/STSci Registry, there
        are three SIAPs (SIAP, SIAP/ARCHIVE, SIAP/CUTOUT). So a
        simple search on all SIAP servers might miss the ARCHIVE
        and CUTOUT versions.

(See call_registry.pro)


CONECALL

[Previous Routine] [Next Routine] [List of Routines]
 Project     : VOlib (CTIO)

 NAME:
       CONECALL 

 CATEGORY 
       Utility

 PURPOSE:  
       To make calls to VO Cone Services. A list of 
       Cone Servers can be found by querying the VO
       Registries (use CALL_REGISTRY).
       Specifically, we call any specified Cone Server
       and provide the ra,dec, search radius and the
       ServiceURL as returned by CALL_REGISTRY.
       Defaults are given in the code.
       (Cone, SIAP, SkyNode).
       The procedure calls the cone service, returns
       a VOTable (which will appear in your working
       directory), reads in the VOtable using READVOT,
       and returns the structure. 

 CALLING SEQUENCE:
       IDL>  conecall, str=str1, url=url, ra,dec,sr [,/save]

 INPUTS:
       INPUT url = string of the URL for the Cone Service
                   The best way to get this string is by
                   using call_registry specifing a Cone
                   Service.
                   ra,dec = coordinates
                   sr = search radius in degrees(? check this)
                       
 OUTPUTS:
       str: a structure containing the data from the 
            VOtable returned by the cone service.
            Type: IDL> help, /str, str 
            to find out the name of the columns returned.

 KEYWORD PARAMETERS:
       /SAVE: save the file downloaded from the ConeServer
              to your current working directory. If the
              name contains bad characters (like spaces
              or whatever), the save function will not
              rename the "download.xml" generic name to
              a more meaningful name based on the query.
       /REMEDIATE: Attempts to fix the downloaded XML.

 DEPENDENCIES:
       READVOT

 MODIFCATION HISTORY 
       Written: 2/04/05 Christopher J. Miller (NOAO/CTIO)
       Contact     : cmiller@noao.edu

 EXAMPLE CALLS:
    conecall,str=str, url = 'http://heasarc.gsfc.nasa.gov/cgi-bin/vo/cone/coneGet.pl?table=bsc5p', 180,1,10
    conecall,str=str, url ='http://skyserver.sdss.org/vo/dr2cone/sdssConeSearch.asmx/ConeSearch?', 180,1,0.01
    conecall,str=str, url ='http://archive.stsci.edu/fuse/search.php?', 180,1,10
    conecall,str=str, url ='http://chart.stsci.edu/GSCVO/GSC1VO.jsp?', 180,1,1

 KNOWN ISSUES:
    The SKYVIEW Coneserver doesnt seem to work (02/23/05). HEASARC might be the replacement?

(See conecall.pro)


READVOT

[Previous Routine] [Next Routine] [List of Routines]
 PROJECT     : VOlib (CTIO)

 NAME:
       READVOT

 CATEGORY:
       Utility

 PURPOSE: 
       To read in VOTables into structures. This utility is not fast,
       especially since so much parsing is done. I'm sure there must
       be a better way to use the Validation_Mode. Regardless, the
       VALIDATION_MODE is defaulted to 0 (none). This means that
       you VOTable and the DTD (Data Table Definition) must be valid.
       Technically, this utility should work fine with Schema Definition
       (XSD), but the VOTable-1.1.xsd doesn't seem to work (1.0 is an
       invalid schema). So please use the VOTable.dtd.
       The top of your VOTable document should look something like this:
       
       

       This version of the code offers a REMEDIATION technique
       which re-writes the VOTable to be valid.
       Example VO Tables which are successfully read in are provided
       in the VOlib distribution DATA directory.

 CALLING SEQUENCE:
       IDL> readvot, 'tsObj-000756-6-44-0367.vot', str

 INPUTS:
       INPUT = filename (string)

 OPTIONAL INPUTS:
       TABLE = table number from the VO Table. Defaults to 1.

 OUTPUTS: 
       str: VOTable as a structure. 

 KEYWORD PARAMETERS:
       VALIDATE = 1 (if found) or 2 (strict)
       /REMEDIATE try to fix the VOT table by making
                  sure it has a !DOCTYPE and specifies
                  the VOTable.dtd

 DEPENDENCIES:
       match
       str2arr
       add_tag
       remove_tags
       rtag_names
       concat_structs
       delvarx
       get_date
       match
       deriv_arr
       daycnv
       combine_structs
       copy_struct


 MODIFICATION HISTORY:
       Written: 2/04/05 Christopher J. Miller (NOAO/CTIO)
       Contact     : cmiller@noao.edu

 EXAMPLE:
       readvot, 'votable.xml',str

 KNOWN ISSUES:
       Some astronomical data contains the "&" symbol, which is XML
       is apparently a reserved charachter for an ENTITY. The IDL
       XML reader seems to have trouble with this and will fail.
       The XMM SIAP service produces XML with "&"s in it.    
       Also, to turn field names into structure tag names, invalid
       IDL characters cause problems. The current version of the
       code tries to weed most of these out.
       I dont know how to make structures have multiple tables
       (outside of a LIST). So currently, the code tries to 
       detect multiple tables, but only reads the first or the
       otherwise specified table.
       Many VOT headers contain array(*) as a size. This makes
       creating the proper structure size difficult. Especially
       for strings where it is difficult to figure out the separator
       character.
       Type conversions sometimes show up as warnings from failures.

(See readvot.pro)


SIAPCALL

[Previous Routine] [Next Routine] [List of Routines]
 PROJECT     : VOlib (CTIO)

 NAME:
       SIAPCALL 

 CATEGORY:
       Utility

 PURPOSE:
       To make calls to VO Siap Services. A list of 
       SIAP Servers can be found by querying the VO
       Registries (use CALL_REGISTRY).
       Specifically, we call any specified SIAP Server
       and provide the ra,dec, search radius and the
       ServiceURL as returned by CALL_REGISTRY.
       Defaults are given in the code.
       (Cone, SIAP, SkyNode).
       The procedure calls the cone service, returns
       an image as a structure.

 CALLING SEQUENCE:
       IDL>  siapcall, str=str, url=url, ra,dec,sr [,/save]

 INPUTS:
       url = The SIAP Server in string format.
             ra,dec = coordinates
             sr = search radius in degrees(? check this)
             url = string of SIAP server
             Type: IDL> help, /str, str1
             to find out the name of the columns returned.
                       
 OPTIONAL INPUTS:
       root = image rootname specified by the user.

 OUTPUTS: 
       images are downloaded to your working directory.
       Use MRDFITS to read in FITs or read_jpeg to read
       in a JPEG.
       str1 = structure of image metadata

 KEYWORD PARAMETERS:
       /SAVE: save the metadata file downloaded from the SiapServer
              to your current working directory. If the
              name contains bad characters (like spaces
              or whatever), the save function will not
              rename the "download.xml" generic name to
              a more meaningful name based on the query.
       /METADATA: Only get the image header. No downloads.
       /REDMEDIATE:  Try and fix the VOTable of the metadata

 DEPENDENCIES:
       READVOT

 MODIFICATION HISTORY:
       Written: 2/04/05 Christopher J. Miller (NOAO/CTIO)
       Contact     : cmiller@noao.edu

 EXAMPLES:
         siapcall, str=str, 217.5,35.0, 0.16, url="http://irsa.ipac.caltech.edu/cgi-bin/2MASS/IM/nph-im_sia?type=ql&ds=asky", root='2mass'
         siapcall, str=str, url='http://xsa.vilspa.esa.es:8080/aio/jsp/siap.jsp', 34.26, -5, 0.16,root='xmm'
         siapcall, str=str2, 217.5,35.0, 0.16, url="http://archive.noao.edu/nvo/sim/voquery.php", root='ndwfs'
         siapcall, str=str2, 180,1.,0.1, url = "http://skyserver.sdss.org/vo/DR2SIAP/SIAP.aspx?bandpass=g&format=image/fits&", root='sdss'
         siapcall, str=str2, 180,1.,0.1, url = "http://skyserver.sdss.org/vo/DR2SIAP/SIAP.aspx?bandpass=g&format=image/jpeg&", root='sdss'
         siapcall, str=str, url="http://archive.ast.cam.ac.uk/cgi-bin/wfs-siap/queryImage", 340,1,0.1,root='intwfs'

 KNOWN ISSUES:
         Obviously, the SIAP server must be functioning for the code
         to work. The current version lacks a graceful exit strategy
         for server failures.

(See siapcall.pro)


SKYCLIENT

[Previous Routine] [List of Routines]
 PROJECT     : VOlib (CTIO)

 NAME:
       SKYCLIENT

 CATEGORY:
       Utility

 PURPOSE: 
       To make queries to the NVOs OpenSkyQuery (OSQ)
       dataservice (www.openskyquery.net). The OSQ
       runs a web service and this IDL procedure uses 
       a number of java classes that can talk directly
       with the OSQ. The OSQ takes an ADQL formatted
       query and returns data in a VOTable. SKYCLIENT
       automatically parses that VOTable into an IDL
       structure. ADQL is like SQL in that a SELECT,
       FROM and WHERE must be specified. ADQL also allows
       astronomy specific keywords (like REGION).
              
       To make efficient use of SKYCLIENT (or OSQ), one
       must know the datasets being queried. For instance
       in Query #4 in MAKE_ADQL, we return o.*, which is
       all of the data columns of the NOAO Deep Wide Field
       Survey (NDWFS). However, to specify the WHERE 
       clause, one must know what those columns are. Also,
       it helps to know where on the sky a dataset lives.

       We provide a number of example queries in the
       included MAKE_ADQL.pro query constructor. Please
       add and/or edit that file to make your own queries.
       One technique to get comfortable with ADQL, is to
       use the OSQ web interface to build your queries
       and them simply copy them into MAKE_ADQL.pro.

 CALLING SEQUENCE:
       IDL> skyclient, str=str, ra,dec,sr,chisq [,query]

 INPUTS:
       ra, dec - in decimal degrees.
       sr - the search radius in arcminutes
       chisq - the cross-match chi-square for
               cross-matching catalogs (only needed
               if more than one catalog is queried).
       DEFAULTs are given in MAKE_ADQL.PRO

 OPTIONAL INPUTS:
       query - A string containing the ADQL query

 OUTPUTS:
       str: a structure containing the data. Type
           IDL> help, /str, str 
           to find out the name of the colmnes returned.

 KEYWORD PARAMETERS: 

 DEPENDENCIES:
       MAKE_ADQL.PRO which creates the query string.
       The VOlib IDL/Java class libraries (included with VOlib).

 MODIFICATION HISTORY:
       Written: 2/04/05 Christopher J. Miller (NOAO/CTIO)
       Contact     : cmiller@noao.edu

 EXAMPLES:
       skyclient, str=strndwfs, qry = " SELECT o.*  FROM NDWFS:photoprimary o  WHERE o.mag_iso < 19.0  AND Region('Circle J2000 217.500 35.000 10')"

 KNOWN ISSUES:
       The current version has some memory problems. Large 
       calls seems to fail, even with the JAVA memory increased
       to a proper value. Also, repeated calls tend to fail after
       so many calls (~200 or so). 

(See skyclient.pro)