LA TABLA DE EXTRACCION DE CAMPOS
La tabla de extracción de campos es el archivo utilizado en las estructuras CDS/Isis para actualización y mantenimiento de las listas invertidas así como en los procesos relacionados con el intercambio de información o la generación de claves para ordenar alfabéticamente los reportes de salida. Al construir la tabla de extracción de campos el diseñador de la base de datos ha de tener en mente los tipos de búsqueda que quiere habilitar para los usuarios de la información e intentar que las consultas recuperen información, siempre que sea posible. CDS/Isis proporciona un gran número de facilidades para garantizar el éxito de los procesos de recuperación de información, como son:
La tabla de extracción de campos es un archivo del tipo TXT el cual consta de tres columnas donde se identifican los siguientes elementos:
El archivo de índices (listas invertidas) de las estructuras CDS/Isis consta de cinco elementos:
El valor suministrado en la columna 1 de la FST genera el componente ID del archivo invertido, el cual le asigna una identificación a cada una de las claves generadas por el formato de extracción . Esta identificación podrá ser utilizada posteriormente para cualificar las búsquedas que se apliquen sobre la base de datos. Generalmente se utiliza como ID la misma etiqueta (tag) suministrada en la tabla de definición de campos, pero en algunos casos se puede variar el ID para obtener efectos especiales en la indización. Ejemplo: supongamos que nuestra base de datos contiene 3 campos para ingresar los autores: 10: Autores personales a nivel analítico A efectos de la búsqueda todos los autores pueden ser considerados como uno solo, independientemente del tipo de material donde aparecen. Entonces, podemos asignar en nuestra FST el ID 10 a todas las claves generadas desde los campos 10, 16 y 23 con el objeto de efectuar una búsqueda sobre todos los autores independientemente del tipo de material al cual estén relacionados.. Por lo tanto, si nuestra FST especifica: 10 0 (v10/)(v16/)(v23/) al aplicar la búsqueda Amaro, Jorge Luis /(10) sobre la lista invertida tendremos como resultado todos aquellos registros que posean la clave Amaro, Jorge Luis extraída bien sea desde el campo 10, o del campo 16 o del campo 23; o sea, recuperaremos los registros independientemente del tipo de autor que esté registrado en la base de datos. La asignación de un único Id para varias etiquetas de la base de datos nos permite facilitarle a usuario la formulación de expresiones de búsqueda ya que podrá hacer búsquedas generales (ubicar un término independientemente del campo a partir del cual fué generado), o búsquedas cualificadas (ubicar un término en un campo particular, cualificado a partir del Id definido en la Fst ). La amplitud o restricción a aplicar en la búsqueda dependerá de las decisiones adoptadas al definir las claves en la FST. Hasta el momento existen 8 técnicas de indización:
Las técnicas 2 y 3 tienen efectos similares en la generación de la clave; la diferencia proviene del tipo de delimitador utilizado para identificar las palabras claves: si se usa el delimitador ...MHx o MDx. El delimitador /.../ no puede sustituirse por lo que siempre estará presente en la salidas impresas o por pantalla. para identificar los términos claves, posteriormente, al emitir reportes impresos o salidas por pantalla, el mismo puede eliminarse o sustituirse por signos de puntuación aplicando el comando de modo Cuando se aplica una fst sobre un registro para obtener una clave, el órden de operación es el siguiente:
queremos obtener las siguientes claves:
La Fst que necesitamos definir para estos efectos es la siguiente
La lista invertida es un conjunto de 6 archivos, 5 de los cuales son índices hacia el diccionario de términos, el cual (con la extensión .ifp) alberga todas las claves extraídas de la base de datos a través de la aplicación de la tabla de extracción de campos (fst) sobre cada uno de los registros. El diccionario de términos es una lista alfabética de todos los puntos de acceso que hemos extraído de la base de datos (con el auxilio de la .fst) y cada clave tiene asociada una lista de apuntadores que definen el lugar de donde se extrajo el término. Esta lista de apuntadores se denomina "postings" y cada "posting" tiene 4 componentes:
Por ejemplo, si el término "Educacion" aparece en los registros 1 y 20 en el campo de materias (v76) y también se encuentra en el registro 35 en el campo de título (v16): Métodos de educación a distancia, al aplicar la siguiente Fst sobre el registro: 76 0 (v76/)16 4 v16 el diccionario de términos referirá el término Educación de la siguiente manera: EDUACION 1 76 1 1 Se han generado tres "postings" para el término educación. El primero, 1 76 1 1 indica que la palabra clave proviene del MFN 1, primera ocurrencia del campo 76 y está localizada al inicio del campo. El segundo apuntador 20 76 1 1 especifica que también se encuentra en el Mfn 20, campo 76, primera ocurrencia y primera palabra y por último, 35 16 1 3 indica que el registro 35 contiene el término educación, extraído del campo 16, primera ocurrencia y además es la tercera palabra del campo. La técnica de indización 0 siempre coloca el valor 1 como posición relativa de la clave dentro del campo. El resto de las técnicas de indización enumeran la posición de la clave dentro del campo. La posición relativa de un término dentro del campo que lo contiene es lo que permite definir las búsquedas por proximidad. La distancia entre dos términos se determina obteniendo la diferencia entre sus posiciones relativas. El valor del número de ocurrencia se utiliza al aplicar el operador (F) para el cual, la expresión de búsqueda es verdadera cuando todos los términos que se combinan proceden de la misma ocurrencia del campo repetible. Por ejemplo, supongamos que un registro contiene el siguiente texto en el campo del resumen 72: La educación presencial se fortalece con la adecuación ... Si este campo se indiza de la siguiente manera: 72 4 (v72/) y posteriormente queremos recuperar todos los materiales en cuyo contenido se haga referencia a EDUCACION A DISTANCIA, la fórmula de búsqueda: EDUCACION (G) DISTANCIA recuperá el registro mencionado anteriormente aún cuando no hace referencia explícita a la Educación a distancia, pero EDUCACION (F) DISTANCIA no recuperará el registro. La razón de esta diferencia está en el hecho de que el operador (G) no averigua desde qué ocurrencia se generó la clave, a diferencia del operador (F) que analiza el componente número de ocurrencia de cada uno de los "postings" de los términos recuperados. Analicemos ahora la FST que mencionamos al inicio de esta página:
Es importante entonces que el formato de extracción a aplicar sobre el registro esté en concordancia con la técnica de indización; de no ser así podría incurrirse en errores en la generación de las claves. Además, un buen manejo del lenguaje de formateo nos permite generar claves que aseguren una eficiente recuperación de información. La comprensión del mecanismo de almacenamiento de las claves y la identificación del operador de búsqueda apropiado garantizará una respuesta precisa a las necesidades de cada usuario en particular |
Uso de prefijos en el proceso de generación de claves
Como el diccionario de términos es un único archivo con todas las claves ordenadas alfabéticamente, en el mismo se presentan mezclados los autores con los títulos, con las palabras claves y, en general, con todos los campos que hayan sido indizados en la FST . Si queremos tener separadas las claves según el campo desde el cual fueron generadas tenemos dos soluciones:
De acuerdo con la primera opción, si la fst
la cambiamos por
Como puede observarse hemos hecho los siguientes cambios:
A las claves que se estan indizando con técnica 0, basta agregarles un pre-literal con el prefijo que queremos utilizar para diferenciar los datos. Para el resto de las técnicas de indización (5, 6, 7 y 8) el prefijo se debe indicar antes del formato de extracción con siguiente sintaxis:
Además de permitirnos ver el contenido de un campo en forma ordenada, sin mezclar los términos obtenidos de otros campos, la búsqueda a través de un prefijo es más rápida que la búsqueda cualificada; esto es: Buscar M:Educación es más eficiente que Educación/(650) por cuanto la búsqueda cualificada requiere revisar cada uno de los apuntadores (postings) del término. Sin embargo, dependiendo de la experiencia de nuestros usuarios finales y de la capacidad del equipo donde tenemos instalada nuestra base de datos, tal vez convenga indizar los datos de varias maneras diferentes, con prefijo y sin prefijo, a fin de proporcionar a nuestros usuarios mayor flexibilidad en las búsquedas. Más claves de búsqueda significa mayor espacio en disco y no necesariamente menor velocidad de recuperación, dada la estructura de la lista invertida (árbol B*) la cual se reorganiza constantemente para que la altura del árbol sea siempre la misma en todas sus ramas (la altura del árbol refleja el número de accesos requeridos para ubicar un término en la lista invertida). (ver Estructura de la lista invertida). Los productos de la familia CDS/Isis, exceptuando Isis/Dos y WinIsis permiten definir más de un diccionario de términos para una base de datos. Esto es, con IsisDll, por ejemplo, podemos crear un diccionario para autores, otro para títulos, etc. Sin embargo, para que los términos de diferentes campos puedan combinarse entre sí, en una misma expresión de búsqueda, a través de los operadores booleanos siempre será necesario definir un diccionario general que los agrupe a todos ya que no es posible cruzar los términos de un diccionario con los términos de otro diccionario. La facilidad de diccionarios particulares sustituye el uso de prefijos para presentar al usuario los términos extraídos de un campo en particular y permite operar lógicamente los términos de un mismo diccionario. |
Transparencia en el uso de mayúsculas, minúsculas y caracteres especiales
Una de las bondades del mecanismo de búsqueda del CDS/Isis radica en la transparencia que brinda en el uso de mayúsculas, minúsculas o caracteres especiales en los términos de búsqueda. Para lograr este objetivo, todas las claves se almacenan en la lista invertida en mayúsculas, y si así lo hemos previsto, los caracteres acentuados se transforman a su equivalente en mayúscula. Las expresiones de búsqueda que suministra el usuario son transformadas igualmente a mayúsculas lo que minimiza el error por errores de digitación del usuario. Para realizar la conversión de las claves y expresiones de búsqueda, las estructuras CDS/Isis utilizan el archivo ISISUC.TAB el cual debe estar en concordancia con el juego de caracteres adoptado para la base de datos (ver Tabla de conversión de mayúsculas a minúsculas) Cuando indizamos los campos con la técnica 4 (por palabras) CDS/Isis utiliza la tabla ISISAC.TAB para establecer la composición del concepto "palabra"; esto es, la tabla ISISAC.TAB le indica a CDS/Isis qué caracteres debe considerar como alfabéticos para formar las palabras. Cualquier caracter no insertado en ISISAC.TAB será considerado un separador y dará por terminada la palabra. Supongamos que en ISISUC.TAB hacemos equivalente la letra ñ a su expresión en mayúscula Ñ. Si en ISISAC.TAB no incluímos el código Ñ (165 en Ascii o 209 en Ansi)
esto es, cada palabra se divide en dos, generando dos entradas en el diccionario, ya que al no estar la ñ incluída en ISISAC.TAB se considera un separador igual que un signo de puntuación.
|