Welcome to UNAVCO's GSAC Web Client Interface ------------------------------------------------------------------- This service provides near-direct access to UNAVCO's GSAC database through a simplified query language, much like SQL. You can access and use this service via a simple combination of arguments provided directly in the requested Universal Resource Identifier (URI). Currently there are seven available request components: S : a keyword token specifying which GSAC "service" you are requesting access to. The following services are currently supported: help : This document status : Brief information about retailer service info : GSAC Monument/Data Holdings records matching request count : Number of records matching request O : a keyword token specifying how you would like the results of your query formatted. The following formats are currently supported: ascii : basic (space-separated) ASCII text html : HTML (browser-pleasing) format, with hyperlinks where applicable csv : Comma Separated Value (CSV) format dhr::mc : "stringified" Perl objects from GSAC::DHR::MC structures dhr::dhf : "stringified" Perl objects from GSAC::DHR::DHF structures F : a comma-delimited list of proper GSAC "fields" (prefixed by the table alias from which they come, in other words mc. or dh., for monument catalog and data holding, respectively) to be returned from your query (in the order listed) R : the GSAC Query Language "restrictions" component of your query. This component is used to act as the limiting aspect of your query. You MUST use actual GSAC field identifiers (like "dh.info_url", "mc.unique_site_id", etc) and utilize a combination of relational operators from the following list, WITHOUT spaces: Relational Operators AND : just like a logical "and" in SQL. OR : just like a logical "or" in SQL. NEQ : in place of "!=", means "not equal to" EQ : in place of "=", means "equal to" IN : in place of " in ", used when comparing a value : to a set of possible values. For example: : " where name in ('James','Paul','Tim')". ISNULL : in place of "is null" means "no value" LIKE : for use with wildcards such as "%", as in char_idLIKE'sio%' ORDERBY : for use in specifying ordering of return columns GT : in place of ">", means "greater than" GTE : in place of ">=", means "greater than or equal to" LT : in place of "<", means "less than" LTE : in place of "<=", means "less than or equal to" MINUS : in place of "-" (in mathematical sense) PLUS : in place of "+" (in mathematical sense) Special Functions *bounding_box(xmin ymin,xmax ymax) : use longitude and : latitude {decimal degrees} to narrow your query *proximity(x,y,r) : use longitude and latitude {decimal degrees} : and a radius (r) in kilometers to narrow your query *custom(t1EQ'val1',t2EQ'val2') : allows a retailer to provide query : and/or return field support for information not in the : standard GSAC specification * May not be available at all GSAC Retailers Furthermore, feel free to include/use "(" and ")" to explicitly apply various combinations of precendence within your "restrictions" clause. NOTES: ALL values included in your "restrictions" clause MUST be enclosed by 's (i.e. single quotes). Depending on your ftp/http client you may experience problems using URIs with actual spaces or other special characters in them. Below is a list of ISO 8859 Latin 1 character set hexidecimal escape characters: %20 : " " %2a : "*" %3a : ":" %40 : "@" %60 : "`" %21 : "!" %2b : "+" %3b : ";" %5b : "[" %7b : "{" %22 : """ %2c : "," %3c : "<" %5c : "\" %7c : "|" %23 : "#" %2d : "-" %3d : "=" %5d : "]" %7d "}" %24 : "$" %2e : "." %3e : ">" %5e : "^" %7e : "~" %25 : "%" %2f : "/" %3f : "?" %5f : "_" %7f : "^?" %26 : "&" %27 : "'" %28 : "(" %29 : ")" C : (optional) The name of the client calling this service CV : (optional) The version of the client calling this service U : (optional) The username using the client calling this service DT : [on|off] (optional, defaults to "on") Retailer database datetime field translation into GSAC-specific datetime format. Specifying DT=off speeds up queries returning one or more datetime-oriented fields. Your query must be constructed using a URI constructed from the above-listed components (and their values) separated by "&"s and a "?", in the same fashion as a standard "GET" CGI request. Through this interface we hope you will be able to execute queries on the GSAC in a simple, or sophisticated, manner as you see fit. Furthermore, interaction with the GSAC through this service is fully automatable, allowing for efficient, routine, and (hopefully) straightforward information and data retrieval for the first-time GSAC user and long-time GPS analysts alike. Most importantly, from this single interface you have access to the combined monument information and data holdings of every participating GSAC Wholesaler. Example URIs: http://gsac01.unavco.org/GSAC?F=mc.descriptive_id,mc.char_id,mc.x,mc.y,mc.z&S=info&O=html&R=mc.wholesalerEQ'sopac'AND((mc.char_idLIKE'bil%25')OR(mc.char_idLIKE'al%25'ANDmc.char_idNEQ'alam')) http://gsac01.unavco.org/GSAC?F=dh.info_url&S=info&O=html&R=dh.wholesalerEQ'sopac'ANDdh.data_typeEQ'rinex_obs'ANDdh.unique_site_idEQ'sio30000' http://gsac01.unavco.org/GSAC?F=mc.unique_site_id,mc.wholesaler&S=info&O=html&R=bounding_box(-140.0 40.0,-100.0 45.0) http://gsac01.unavco.org/GSAC?F=dh.info_url&S=info&O=html&R=proximity(-120.0 40.0,200) http://gsac01.unavco.org/GSAC?F=dh.info_url&S=info&O=html&R=custom(dh.collectionEQ'special project')