IQuery |
Compatibilidad y Disponibilidad de IQuery
IQuery es un motor de búsquedas interactivo para bases de datos Micro CDS/ISIS. Fue desarrollado de acuerdo a las especificaciones de ISIS 3.0 y ha sido diseñado para ejecutarse en tres modalidades: como una línea de comandos interactiva, como un programa CGI en servidores Web y como un intérprete que obtiene las instrucciones de un archivo. IQuery funciona en las plataformas Linux, SCO y DOS.
Con esta interfaz es posible incrustar dentro de un formulario HTML código de comandos reconocidos por IQuery para interactuar con la base de datos ISIS, de tal forma que dichos comandos son transferidos con el CGI al programa IQuery a través del servidor Web.
Además, IQuery no trabaja con el formato de despliegue de resultados que utiliza el programa Micro CDS/ISIS, puesto que IQuery es un software orientado a clientes Web que poseen su propio lenguaje de formato HTML.
Cuando se inicia IQuery, lo primero que hace es buscar el archivo de parámetros SYSPAR.PAR en el directorio predeterminado de instalación de ISIS o bien, la ruta de directorio que se puede especificar al programa con el parámetro -conf <ruta>. En el archivo SYSPAR.PAR se busca la ruta de directorio donde residen los archivos de las bases de datos.
Luego, IQuery cambia a una de las tres modalidades que se haya especificado: línea de comandos, HTML (parámetro -html) o intérprete de archivo (parámetro -file). En cualquier caso IQuery lee y procesa una línea a la vez desplegando los resultados en salida estándar.
Adicionalmente, el motor de búsquedas posee dos parámetros especiales, los cuales son: -nocase y -nostrict. El primero permite buscar palabras claves sensitivas a las letras mayúsculas y minúsculas; el segundo toma en cuenta los espacios en blanco al principio y al final de la palabra clave a buscar.
La siguiente línea muestra la sintaxis general de IQuery con todo los parámetros que se pueden especificar para su correcta ejecución:
iquery [-conf <ruta-isis>][-html | -file <ruta-archivo>][-nocase][-nostrict]
En la modalidad CGI, IQuery se ejecuta como se muestra en la figura 14. Cuando un cliente browser remite un formulario HTML de consulta, el servidor Web ejecuta el programa CGI de IQuery con todos los parámetros necesarios. Este programa se encarga de interactuar directamente con al base de datos ISIS, ejecuta la consulta y procesa los resultados remitiéndolos al servidor Web para que éste los devuelva al cliente browser.
Figura 14. Arquitectura de un Servidor Web con la interfaz IQuery.
El motor IQuery puede ejecutarse en tres modalidades para poder consultar una base de datos ISIS: en una línea de comandos interactiva en el shell del sistema operativo, como un programa CGI en un servidor Web o como un intérprete que toma las instrucciones contenidas en un archivo. En las tres modalidades se requiere especificar los parámetros respectivos.
IQuery reconoce ciertos comandos para interactuar con la base de datos ISIS. Particularmente, IQuery trabaja con una sentencia de consulta a la base de datos que posee una estructura muy similar a la de una sentencia SQL: SELECT FROM WHERE. En dicha sentencia se abre una base de datos, itera sobre ella en forma secuencial o en base a un índice, pasa aquellos registros que cumplen con la condición de consulta e imprime los resultados según el formato de despliegue especificado.
En la condición de consulta se pueden emplear operadores para comparar textos y números, así como también, se pueden incluir operadores booleanos para unir dos o más condiciones en una consulta, lo cual es muy común para delimitar la requisición de búsqueda en bases de datos.
El formato de despliegue no es el que utiliza el programa Micro CDS/ISIS, puesto que IQuery es un software orientado a clientes Web que poseen su propio lenguaje de formato HTML.
El programa IQuery traduce la sentencia de consulta a una estrategia de consulta ISIS. Abre la base de datos y construye todas las estructuras necesarias para manejar la información contenida en la base de datos. IQuery posibilita abrir más de una base de datos al mismo tiempo.
IQuery reconoce los siguientes comandos que se pueden especificar en las tres modalidades en que se ejecuta dicha interfaz.
Fileprint <archivo>
Lee un archivo y despliega su contenido. Puede especificar la ruta completa del archivo o uno relativo al directorio ISIS.
Strprint <texto>
Imprime el texto que se especifique en cualquier formato, inclusive HTML.
Open <archivo>:<alias>
Abre el archivo de la base de datos y le asigna un nombre alias.
Close <alias>
Cierra y libera memoria de la estructura del archivo de la base de datos que fue creada previamente por un comando Open.
Closeall
Cierra cualquier base de datos abierta.
Select <formato+campos> From <archivo1>:<alias1>[, <archivo2>:<alias2>, ]
Abre todas las bases de datos asociándoles el respectivo nombre alias y se mantienen abiertas hasta que IQuery termine de ejecutarse o se encuentre un comando Close/Closeall.
Itera sobre la base de datos ISIS e imprime los resultados de acuerdo al formato de despliegue, para aquellos registros que cumplen la condición de consulta.
Version
Imprime la versión de IQuery y cierta información acerca de la versión registrada del producto o la fecha de expiración de la versión de evaluación. Sólo funciona en la modalidad de línea de comandos.
En la modalidad de línea de comandos o de intérprete de archivo, IQuery no requiere más que los parámetros especificados por el usuario en una sentencia, la cual se constituye en la orden a procesar por IQuery. Además, el programa IQuery puede estar instalado en cualquier directorio del servidor Web.
En el modo HTML, hay tres cosas a tomar en cuenta cuando se pasan los datos al programa IQuery:
Nota: Solo se puede pasar el parámetro -html directamente al programa CGI de IQuery en el atributo ACTION de la etiqueta <FORM>.
En el siguiente ejemplo se imprime el contenido de la variable busqueda transferida a IQuery:
A continuación se muestra una sección completa de un formulario HTML, contenida en una página Web para interactuar con una base de datos ISIS haciendo uso de la interfaz IQuery.
Consiste de un campo para que el usuario ingrese la palabra clave a buscar y una lista de opciones con botones de radio para seleccionar el campo por el cual se hará la consulta.
Nótese que se incluye el parámetro -html en el URL dentro del atributo ACTION de la etiqueta <FORM> lo cual indica al programa IQuery su ejecución en modalidad CGI.
Por otra parte se ha incluido la variable HTMLPARAMS para agregar el parámetro -nocase. En la variable QUERY se especifica con el código IQuery la sentencia de consulta que se ejecutará con la base de datos ISIS. Nótese que el formato de despliegue será tabular.
Adicionalmente se incluyen dos comandos para imprimir un encabezado y pie de página en el despliegue de resultados.
<form method="post" action="http://<servidor-www>/<dir-cgi>/iquery.cgi?-html">
Ingrese la palabra clave a buscar: <br><input type="text" name="clave" size=40><br>Buscar por el campo:<input type="radio" name="campo" value="40" checked>Section
<input type="radio" name="campo" value="20">Nombre<input type="radio" name="campo" value="30">Dirección<input type="submit" value="Search"><input type="hidden" name="HTMLPARAMS" value="-nocase"><table>
<input type="hidden" name="QUERY" value="fileprint <directorio>/encab_pag;strprint <p><b> Usted buscó por: </b><i> ${clave}</i>;
select <tr><td>%cor.10</td><td>%cor.20</td><td>%cor.30</td>
<td>%cor.40</td></tr>;from CORPOR:cor;where cor.${campo}=${clave};fileprint <dir-htdocs>/pie_pag">
</table>
</form>
IQuery es un producto comercial desarrollado por Alejandro Ferreira Guido (Uruguay), que permite consultar bases de datos Micro CDS/ISIS bajo las siguientes plataformas o sistemas operativos: SCO Unix, Linux, WINDOWS NT y WINDOWS95, DOS/WINDOWS 3.1
Puede adquirirse por 30 días una versión de evaluación de la herramienta en los siguientes sitios:
El software de distribución consiste únicamente en un archivo ejecutable del programa IQuery (iquery.cgi).
A continuación, se listan los requerimientos específicos para IQuery en las plataformas Unix y Windows. El Web browser requerido en ambos casos es uno que soporte formato HTML 2.0 o superior.
Hardware |
|
Sistema operativo |
|
Memoria | 16 MB (mínimo) |
Espacio en disco | 45 KB (Linux), 75 KB (SCO) |
Base de datos | Micro CDS/ISIS ver. 3.0 o superior. De UNESCO |
Servidor Web | Cualquiera que soporte CGI ver. 1.1, como: NCSA, Apache, etc. |
Hardware |
|
Sistema operativo |
|
Memoria | 16 MB (mínimo) |
Espacio en disco | 60 KB |
Base de datos | Micro CDS/ISIS ver. 3.07 de UNESCO |
Servidor Web | Cualquiera que soporte CGI ver. 1.1, como: Netscape, WebSite, MS Internet Information Server ver. 1.0 o superior, OmniHTTPd, etc. |
Nombre | IQuery ver. 1.0.3 Engine |
Bases de Datos | Micro CDS/ISIS ver. 3.0 o superior. de UNESCO |
Sistemas operativos |
|
Disponibilidad | Comercial, disponible para cada plataforma versiones de evaluación por 30 días en los siguientes sitios: |
Arquitectura | CGI ejecutable. Diseñado para ser ejecutado en tres modalidades: como línea de comandos, como programa CGI en servidores Web y como intérprete de un archivo. |
Características |
|
Fuente de información | Interactive Query for CDS/ISIS Search System Prof. Marcelo Kruk, IQuery for CDS/ISIS Developer Group |