Table of Contents
FUNCIONAMIENTO DEL PROCESO DE CREACIÓN DE UNA COLECCIÓN
Los usuarios de Greenstone pueden crear colecciones utilizando el Colector, cuyo funcionamiento se explica en la Guía del Usuario de la Biblioteca Digital Greenstone (Sección making_greenstone_collections). Este procedimiento permite crear colecciones muy fácilmente basándose en los modelos ya existentes pero con un contenido nuevo. Sin embargo, el Colector no permite realmente crear colecciones con estructuras completamente nuevas. Le invita a modificar el archivo de configuración de la colección por el que se rige la estructura de la colección, pero usted necesita tener sólidos conocimientos de Greenstone para efectuar cambios radicales pero efectivos. En esta sección se le indica lo que necesita saber para hacerlo. También se explica la estructura de directorios de Greenstone y el formato en el que se almacenan internamente los documentos.
En este manual suponemos que usted ha instalado Greenstone en su computadora, bien con Windows o bien con Unix. Si aún no lo ha hecho, debería consultar la Guía de Instalación de la Biblioteca Digital Greenstone. Utilizamos el nombre GSDLHOME a lo largo de este manual para referirnos al directorio principal de Greenstone, que se denomina %GSDLHOME% en los sistemas Windows y $GSDLHOME en los sistemas Unix. Este directorio se estableció durante el procedimiento de instalación.
Creación de colecciones desde la línea de comandos
A fin de comprender mejor este proceso, empecemos por recorrer las operaciones necesarias para crear una colección a partir de la línea de comandos. Por supuesto, el método más fácil es utilizar el Colector. La colección que tomamos como ejemplo es la que se incluye en el CD-ROM de distribución del programa Greenstone, que contiene las páginas Web de muchas de las personas que han colaborado en el proyecto de Biblioteca Digital de Nueva Zelandia y el programa Greenstone.
En las siguientes subsecciones se explica la creación de una colección con Windows y con Unix. De hecho, las dos subsecciones son casi idénticas, sólo tiene que leer la que corresponda a su sistema. Algunas de las instrucciones le podrán parecer misteriosas e indescifrables, pero sígalas atentamente, su significado se explicará más adelante. Tras las instrucciones se resumen las diferencias entre la creación de una colección con cada uno de los sistemas.
Creación de colecciones bajo Windows
El primer desafío para crear una colección de Greenstone a partir de la línea de comandos en el sistema Windows es llegar al “indicador de comandos”, el lugar en el que se teclean los comandos. Trate de buscar en el menú Inicio, o en el submenú Programas, una entrada como indicador MS-DOS, indicador DOS o indicador de comandos. Si no logra encontrarla, abra la función Ejecutar y teclee command ( o cmd) en la ventana de diálogo. Si todo esto falla, pida ayuda a algún entendido, como su administrador de sistema.
Vaya al directorio en el que está instalado Greenstone. Si Greenstone está instalado en su ubicación por defecto, puede acceder tecleando:
cd “C:\Program Files\gsdl”
(Son necesarias las comillas debido a los espacios existentes en Program Files.) A continuación, teclee en el indicador:
setup.bat
Este archivo de ejecución por lotes (que puede usted leer si lo desea) indica al sistema dónde encontrar los programas Greenstone1). Si, más adelante durante su sesión interactiva en el indicador de DOS, desea volver al directorio principal de Greenstone, puede hacerlo tecleando cd “%GSDLHOME%” (una vez más, son necesarias las comillas debido a los espacios existentes en el nombre de archivo). Si cierra su ventana DOS y abre otra, tendrá que volver a teclear setup.bat.
Ahora está en condiciones de constituir, crear y recrear colecciones. El primer programa que examinaremos es el programa Perl mkcol.pl, cuyo nombre corresponde a “ make a collection ” (constituir una colección). En primer lugar, active el programa tecleando perl -S mkcol.pl para obtener en pantalla una descripción de la sintaxis y una lista de argumentos. Si su entorno Windows está programado para asociar la aplicación Perl con archivos terminados en .pl, puede expresarlo de manera más concisa tecleando mkcol.pl. Como puede comprobarlo en el mensaje que aparece, el único argumento necesario es creator, que se utiliza para especificar quién ha creado la colección.
Utilicemos ahora este comando para crear los archivos y subdirectorios iniciales necesarios para nuestra colección de las páginas personales de los miembros del proyecto de Biblioteca Digital Greenstone. Para asignar a la colección el nombre dlpeople (abreviación en inglés de “personas de la biblioteca digital”), esto fue lo que escribí:
perl –S mkcol.pl –creator [email protected] dlpeople
(o mkcol.pl –creator [email protected] dlpeople, si Perl está asociado con la extensión de archivos .pl). ¡No olvide sustituir mi dirección de correo electrónico por la suya!
Para poder visualizar los archivos recién creados, vaya al directorio recién creado de la colección tecleando:
cd “%GSDLHOME%\collect\dlpeople”
<imgcaption figure_figure_archivo_de_configuración_de_la_colección_creado_por mkcol.pl|%!– id:37 –%Archivo de configuración de la colección creado por mkcol.pl ></imgcaption>
creator [email protected] maintainer [email protected] public true beta true indexes document:text defaultindex document:text plugin ZIPPlug plugin GAPlug plugin TEXTPlug plugin HTMLPlug plugin EMAILPlug plugin ArcPlug plugin RecPlug classify AZList -metadata "Title" collectionmeta collectionname "dlpeople" collectionmeta iconcollection "" collectionmeta collectionextra "" collectionmeta .document:text "documents"
Puede acceder al contenido de este directorio tecleando dir. Debería haber siete subdirectorios: archives, building, etc, images, import, index y perllib.
Ahora debemos introducir documentos de muestra en la colección. Los documentos de origen para la colección dlpeople pueden encontrarse en el directorio collect\dlpeople del CD-ROM de distribución Greenstone. En primer lugar, inserte el CD-ROM en el lector (por ejemplo en la unidad D:\). A continuación, copie el contenido del directorio D:\collect\dlpeople en el directorio import de la colección dlpeople. Para ello, proceda de la manera siguiente:
seleccione el contenido del directorio dlpeople y arrástrelo al directorio import de la colección dlpeople.
Como alternativa, puede teclear el comando
xcopy /s d:\collect\dlpeople\* import
En el directorio etc de la colección hay un archivo denominado collect.cfg. Ábralo con el editor de texto que prefiera; uno básico pero que es fácil de conseguir se llama edit. El resultado debería parecerse a la Figura <imgref figure_collection_configuration_file_created_by_mkcol>, que muestra el archivo de configuración de la colección creado mediante el comando perl –S mkcol.pl –[email protected] dlpeople.
Ahora ya está listo para "importar" la colección. Este es el proceso que integra los documentos en el sistema Greenstone, estandarizando el formato de documento, la forma de especificar los metadatos, y la estructura de ficheros en la que se almacenan los documentos. Escriba perl -S import.pl en el indicador para obtener una lista de todas las opciones del programa de importación. La opción -remove old se usa para asegurarse de que primero se borran todos los documentos importados previamente.
perl –S import.pl dlpeople
No se preocupe por el texto que desfila rápidamente en la pantalla: es sólo un informe de la progresión de la importación. Tenga en cuenta que importar esta colección lleva unos cinco minutos en una computadora de 1 GHz y, por consiguiente, más tiempo en máquinas más lentas. Obsérvese que no es necesario encontrarse en los directorios collect o dlpeople cuando se selecciona este comando, porque ya se ha introducido la variable GSDLHOME y el programa Greenstone puede encontrar todos los archivos necesarios.
Ahora vamos a introducir algunas modificaciones en el archivo de configuración de la colección para personalizar su apariencia. En primer lugar, demos un nombre a la colección. Será el que utilicen los navegadores Web como título de página de la portada de la colección, y servirá como icono de la colección si no se proporciona ninguna otra imagen. Sustituya la línea que dice collectionmeta collectionname “dlpeople” por algo como collectionmeta collectionname “Los miembros del proyecto NZDL”.
Añada una descripción de su colección entre las comillas de la línea collectionmeta collectionextra “”, la cual servirá como texto del Acerca de esta colección en la página principal de la colección. Yo escribí “Esta colección comprende las páginas personales de algunas de las personas que han colaborado en el proyecto NZDL”. Es importante escribir este texto en el editor en una sola línea: si el cursor llega al margen derecho de la ventana del editor no pulse la tecla “Intro” aunque tenga que añadir más texto; siga escribiendo de continuo, de lo contrario el archivo de configuración no podrá ser analizado correctamente. Si desea que su colección pueda utilizarse con diferentes interfaces de lenguas, existe una opción para que este texto aparezca de manera diferente según la interfaz lingüística elegida, que se describe más adelante en la Sección import_and_build_processes.
Puede utilizar cualquier imagen que pueda visualizarse en un navegador como icono de la colección; la imagen que yo creé se muestra en la Figura <imgref figure_collection_icon>. Escriba la ubicación de la imagen entre las comillas de la línea collectionmeta iconcollection “” en el archivo de configuración. Como abreviación, y para contribuir a la portabilidad, puede utilizarse _httpprefix_ como inicio de una dirección URL que remite a una imagen situada en la zona de archivos de Greenstone. Por ejemplo, puede usted escribir: _ httpprefix_/collect/dlpeople/images/icon.gif si ha introducido una imagen adecuada en el directorio images de la colección ( collect\dlpeople\images en nuestro ejemplo).
Guarde el archivo de configuración de la colección y ciérrelo; no lo necesitará de nuevo en este manual de instrucciones.
La siguiente fase consiste en “crear” la colección, es decir, elaborar todos los índices y archivos que permiten su funcionamiento. Teclee perl –S buildcol.pl en el indicador de comandos para acceder a una lista de opciones de creación de colección, que se explican más detalladamente en la Sección import_and_build_processes. Por ahora, cíñase a los valores por defecto y teclee:
perl –S buildcol.pl dlpeople
Una vez más, no se preocupe por los textos de “informe de progresión” que desfilan por la pantalla.
Active la colección como sigue:
seleccione el contenido del directorio building de la colección dlpeople y arrástrelo hasta el directorio index.
Como alternativa, puede suprimir el directorio index (y todo su contenido) con el comando:
rd /s index # con Windows NT/2000 deltree /Y index # con Windows 95/98
y luego cambiar el nombre del directorio building por el de index tecleando:
ren building index
Por último, teclee:
mkdir building
en preparación para cualquier recreación futura. Es importante que estos comandos se efectúen en el directorio correcto (a diferencia de los comandos mkcol.pl, import.pl y buildcol.pl de Greenstone). Si el directorio que se encuentra en uso no es dlpeople, teclee cd “%GSDLHOME%\collect\dlpeople” antes de proceder a la secuencia de operaciones rd, ren y mkdir antes expuestas.
Debería poder acceder a la colección recién creada desde la página principal de Greenstone. Tendrá que volver a cargar la página si ya la había abierto en su navegador, o tal vez incluso tenga que cerrar el navegador y arrancarlo de nuevo (para evitar problemas de “ cache ”). En cambio, si está utilizando la versión “Biblioteca Local” de Greenstone tendrá que volver a arrancar el programa library. Para visualizar la nueva colección, haga clic en la imagen. El resultado debería parecerse a la Figura <imgref figure_about_page_for_the_new_collection>.
<imgcaption figure_collection_icon|%!– id:58 –%Icono de la colección ></imgcaption>
En resumen, los comandos que se han de teclear para general la colección dlpeople son los siguientes:
cd “C:\Program Files\gsdl” # se supone la ubicación por defecto setup.bat perl –S mkcol.pl –creator [email protected] dlpeople cd “%GSDLHOME%\collect\dlpeople” xcopy /s d:\collect\dlpeople\* import # se supone la unidad D perl –S import.pl dlpeople perl –S buildcol.pl dlpeople rd /s index # con Windows NT/2000 deltree /Y index # con Windows 95/98 ren building index mkdir building
Creación de colecciones bajo Unix
En primer lugar vaya al directorio donde está instalado Greenstone. Por ejemplo, si Greenstone está instalado en vuestro directorio de inicio de sesión, con su nombre por defecto, puede dirigirse allí tecleando
cd ~/gsdl
Luego en el indicador, teclee
source setup.bash # si está utilizando el shell BASH source setup.csh # si está utilizando el shell C
Estos archivos de ejecución por lotes (que puede usted leer si lo desea) indican al sistema dónde buscar los programas Greenstone. Si más adelante, durante su sesión de introducción de líneas de comando en Greenstone, desea volver al directorio principal de Greenstone, puede hacerlo escribiendo cd $GSDLHOME.
Si no está seguro del tipo de intérprete de comandos (shell) que está utilizando, teclee echo $0 en su indicador de línea de comandos y obtendrá la información buscada. Si utiliza un intérprete de comandos diferente, contacte a su administrador de sistema para que le asesore.
Una vez localizado el archivo de instalación adecuado, estamos en condiciones de constituir, crear y recrear colecciones. El primer programa que examinaremos es el programa Perl mkcol.pl, cuyo nombre corresponde a “make a collection” (constituir una colección). En primer lugar, active el programa escribiendo sólo mkcol.pl para obtener en pantalla una descripción de la sintaxis y una lista de argumentos. Como puede comprobarlo en el mensaje que aparece, el único argumento necesario es creator, que se utiliza para especificar quién ha creado la colección.
<imgcaption figure_about_page_for_the_new_collection|%!– id:66 –%Página “Acerca de” de la nueva colección ></imgcaption>
Utilicemos ahora este comando para crear los archivos y subdirectorios iniciales necesarios para nuestra colección de las páginas personales de los miembros del proyecto de Biblioteca Digital Greenstone. Para asignar a la colección el nombre dlpeople, esto fue lo que escribí:
mkcol.pl –[email protected]
¡No olvide sustituir mi dirección de correo electrónico por la suya!
Para poder visualizar los archivos recién creados, vaya al directorio recién creado de la colección tecleando:
cd $GSDLHOME/collect/dlpeople
Puede acceder al contenido de este directorio tecleando ls. Debería haber siete subdirectorios: archives, building, etc, images, import, index y perllib.
Ahora debemos introducir documentos de muestra en la colección. Los documentos de origen para la colección dlpeople pueden encontrarse en el directorio collect\dlpeople del CD-ROM de distribución Greenstone. Para leer la información de un CD-ROM con Linux, inserte el disco en el lector y teclee:
mount /cdrom
en el indicador (este comando puede cambiar de un sistema a otro). Una vez montado, el CD-ROM puede usarse como cualquier otro directorio, por consiguiente puede teclear ls /cdrom/collect. Esto debería darle acceso a un directorio denominado dlpeople en el CD-ROM.
A continuación, copie el contenido del directorio /cdrom/collect/dlpeople en el directorio GSDLHOME/collect/dlpeople/import. Para ello, teclee el comando:
cp –r /cdrom/collect/dlpeople/* import/
Luego teclee:
umount /cdrom
para cerrar la unidad del CD-ROM.
En el directorio etc de la colección hay un archivo denominado collect.cfg. Ábralo con el editor de texto que prefiera; emacs es un editor muy utilizado en Linux. El resultado debería parecerse a la Figura <imgref figure_collection_configuration_file_created_by_mkcol>, que muestra el archivo de configuración de la colección creado mediante el comando mkcol.pl –[email protected] dlpeople.
Ahora puede “importar” la colección. Se trata del proceso por el que se traen los documentos al sistema Greenstone, normalizando el formato de los documentos, el modo en que se especifican los metadatos y la estructura de los archivos en que se almacenan los documentos. Teclee import.pl en el indicador para obtener una lista de todas las opciones del programa de importación. Para simplificar, limítese al comando básico
import.pl dlpeople
No se preocupe por el texto que desfila rápidamente en la pantalla: es sólo un informe de la progresión de la importación. Tenga en cuenta que importar esta colección lleva unos cinco minutos en una computadora de 1 GHz y, por consiguiente, más tiempo en máquinas más lentas. Obsérvese que no es necesario encontrarse en los directorios collect o dlpeople cuando se selecciona este comando, porque ya se ha introducido la variable GSDLHOME y el programa Greenstone puede encontrar todos los archivos necesarios.
Ahora vamos a introducir algunas modificaciones en el archivo de configuración de la colección para personalizar su apariencia. En primer lugar, demos un nombre a la colección. Será el que utilicen los navegadores Web como título de página de la portada de la colección, y servirá como icono de la colección si no se proporciona ninguna otra imagen. Sustituya la línea que dice collectionmeta collectionname “dlpeople” por algo como collectionmeta collectionname “Los miembro+s del proyecto NZDL”.
Añada una descripción de su colección entre las comillas de la línea collectionmeta collectionextra “”, la cual servirá como texto del Acerca de esta colección en la página principal de la colección. Yo escribí “Esta colección comprende las páginas personales de algunas de las personas que han colaborado en el proyecto NZDL”. Es importante escribir este texto en el editor en una sola línea: si el cursor llega al margen derecho de la ventana del editor no pulse la tecla “Intro” aunque tenga que añadir más texto; siga escribiendo de continuo, de lo contrario el archivo de configuración no podrá ser analizado correctamente. Si desea que su colección pueda utilizarse con diferentes interfaces de lenguas, existe una opción para que este texto aparezca de manera diferente según la interfaz lingüística elegida, que se describe más adelante en la Sección import_and_build_processes.
Puede utilizar cualquier imagen que pueda visualizarse en un navegador como icono de la colección; la imagen que yo creé se muestra en la Figura <imgref figure_collection_icon>. Escriba la ubicación de la imagen entre las comillas de la línea collectionmeta iconcollection “” en el archivo de configuración. Como abreviación, y para contribuir a la portabilidad, puede utilizarse _ httpprefix_ como inicio de una dirección URL que remite a una imagen situada en la zona de archivos de Greenstone. Por ejemplo, puede usted escribir: _ httpprefix_/collect/dlpeople/images/icon.gif si ha introducido una imagen adecuada en el directorio images de la colección ( collect\dlpeople\images en nuestro ejemplo).
Guarde el archivo de configuración de la colección y ciérrelo; no lo necesitará de nuevo en este manual de instrucciones.
La siguiente fase consiste en “crear” la colección, es decir, elaborar todos los índices y archivos que permiten su funcionamiento. Teclee buildcol.pl en el indicador de comandos para acceder a una lista de opciones de creación de colección, que se explican más detalladamente en la Sección import_and_build_processes. Por ahora, cíñase a los valores por defecto por defecto y teclee:
buildcol.pl dlpeople
Una vez más, no se preocupe por los textos de “informe de progresión” que desfilan por la pantalla.
Active la colección trasladando al directorio index todos los datos que acaba de introducir en el directorio building de la colección. Si ya ha creado esta colección anteriormente, en primer lugar suprima el antiguo índice tecleando:
rm –r index/*
(suponiendo que se encuentre en el directorio dlpeople) en el indicador. A continuación teclee:
mv building/* index/
<tblcaption table_collection-building_differences_between_windows_and_linux|Diferencias entre Windows y Linux para la creación de colecciones></tblcaption>
< - 265 265 > | |
Windows | Linux |
Ejecutar setup.bat para poder acceder a los programas Greenstone | Cargar setup.bash o setup.csh para poder acceder a los programas |
Copiar los archivos del CD-ROM utilizando el administrador gráfico de archivos o los comandos de Windows | Copiar los archivos del CD-ROM utilizando mount y los comandos de Unix |
El directorio index de la antigua colección se sustituye tecleando rd /s index, luego ren building index seguido de mkdir building, o utilizando el administrador de archivos gráficos. | El directorio index de la antigua colección se sustituye tecleando rm –r index/ * luego mv building/* index |
Debería poder acceder a la colección recién creada desde la página principal de Greenstone. Tendrá que volver a cargar la página si ya la había abierto en su navegador, o tal vez incluso tenga que cerrar el navegador y arrancarlo de nuevo (para evitar problemas de “ cache ”). Para visualizar la nueva colección, haga clic en la imagen. El resultado debería parecerse a la Figura <imgref figure_about_page_for_the_new_collection>.
En resumen, los comandos que se han de teclear para generar la colección dlpeople son los siguientes:
cd ~/gsdl # suponiendo que Greenstone está por defecto # en vuestro directorio de inicio de sesión source setup.bash # si está utilizando el shell BASH source setup.csh # si está utilizando el shell C mkcol.pl –[email protected] cd $GSDLHOME/collect/dlpeople mount /cdrom # suponiendo que el CD-ROM se asigna ahí cp –r /cdrom/collect/dlpeople/ * import/ umount /cdrom import.pl dlpeople buildcol.pl dlpeople rm –r index/* mv building/* index
Diferencias entre Windows y Unix
El proceso de creación de una colección con Unix es muy parecido al de Windows, pero hay algunas pequeñas diferencias que se resumen en el Cuadro <tblref table_collection-building_differences_between_windows_and_linux>.
Directorios de Greenstone
En la Figura <imgref figure_structure_of_the_gsdlhome_directory> se muestra la estructura del directorio GSDLHOME. En el Cuadro <tblref table_where_to_find_information_about_directories> se presenta una breve descripción del contenido de cada uno de los directorios que aparecen en el diagrama. En una sección ulterior del manual se detallan más algunos directorios; utilice la guía de secciones del Cuadro <tblref table_where_to_find_information_about_directories> para saber dónde hallar más información.
<imgcaption figure_structure_of_the_gsdlhome_directory|%!– id:102 –%Estructura del directorio GSDLHOME ></imgcaption>
<tblcaption table_where_to_find_information_about_directories|Dónde encontrar información sobre los directorios></tblcaption>
< - 132 331 66 > | ||
Contenido | Sección | |
bin | Código ejecutable, que incluye binarios en el directorio que lleva el nombre de su sistema operativo. | - |
bin/script | Guiones Perl utilizados para crear y constituir colecciones (por ejemplo, import.pl y buildcol.pl). Para obtener una descripción de cualquiera de estos programas, teclee su nombre en el indicador de comandos. | 1.3 |
perllib | Módulos Perl utilizados durante la importación y la creación (conectores, por ejemplo). | 2.1 |
perllib/plugins | Código Perl para los conectores de tratamiento de documentos. | 2.1 |
perllib/classify | Código Perl para clasificadores (por ejemplo, el código AZList que elabora una lista de documentos basada en el orden alfabético de un atributo). | 2.2 |
cgi-bin | Todos los guiones CGI de Greenstone que se trasladan al directorio cgi-bin del sistema. | - |
tmp | Directorio utilizado por Greenstone para almacenar archivos temporales. | - |
etc | Archivos de configuración, registros de inicialización y de errores, bases de datos de autorización de usuarios. | - |
src | Código C++ utilizado para suministrar colecciones a través de un servidor Web. | 3 |
src/colservr | Código C++ para suministrar colecciones, responder a consultas y demás. | protocol |
src/recpt | Código C++ para obtener consultas desde la interfaz de usuario y formatear las respuestas para esta interfaz. | 3.8 |
packages | Códigos fuente para paquetes de programas informáticos ajenos a Greenstone pero utilizados por éste. | 2.5 |
packages/mg | El código fuente de MG, programa de compresión e indización utilizado por Greenstone. | 2.5 |
mappings | Cuadros de correspondencia Unicode (por ejemplo para los caracteres chinos GB). | - |
macros | Los archivos de macros utilizados para la interfaz de usuario. | 2.4 |
collect | Colecciones que se suministran a partir de este ejemplar de Greenstone. | 1.1 |
lib | Código fuente C++ utilizado por el servidor de colección y por el recepcionista. | 3.1 |
images | Imágenes utilizadas en la interfaz de usuario. | - |
docs | Documentación. | - |
Procesos de importación y de creación
En el proceso de creación de la colección explicado en la Sección building_collections_from_the_command_line se utiliza un comando, import.pl, para importar los documentos y otro, buildcol.pl, para crear la colección. En esta sección ampliamos la información sobre las funciones y opciones de estos programas. Empleamos la variable nombre_col para referirnos a la colección en proceso de creación o importación.
Los procesos de importación y creación guardan muchas semejanzas y, por consiguiente, muchas de sus opciones, expuestas en el Cuadro <tblref table_options_for_the_import_and_build_processes>, son iguales. (Recuerde que para ver las opciones de cualquier guión de Greenstone sólo tiene que escribir su nombre sin opciones en el indicador de comandos).
<tblcaption table_options_for_the_import_and_build_processes|Opciones de los procesos de importación y de creación></tblcaption>
< - 132 104 293 > | ||
Argumento | Función | |
-verbosity | Número 0-3 | Controla la cantidad de información sobre el proceso que se visualiza como error estándar: 0 significa un poco, 3 mucho. |
-archivedir | Nombre de directorio | Especifica dónde están almacenados los archivos en el Format de Archivo Greenstone (Greenstone Archive Files), esto es, dónde los guarda import.pl y donde los encuentra buildcol.pl. El valor por defecto es GSDLHOME/collect/nombre_col/archives. |
-maxdocs | Número >0 | Indica el número máximo de documentos que se pueden importar o crear. Esta opción es útil cuando se prueba el archivo de configuración de una nueva colección o se ensayan nuevos conectores. |
-collectdir | Nombre de directorio | Especifica dónde se puede encontrar la colección. El valor por defecto es GSDLHOME/collect |
-out | Nombre de archivo | Especifica un archivo en el que se escriben todos los mensajes producidos, que por defecto se visualizan como error estándar (esto es, en la pantalla). Opción útil cuando se trabaja con niveles de depuración. |
-keepold | Ninguno | No suprime el resultado de la operación de importación o creación anterior. En caso de importación, no suprime el contenido del directorio archives ; en caso de creación, no suprime el contenido del directorio building. |
-debug | Ninguno | Muestra la salida del conector en la salida estándar. |
El proceso de importación
La principal función del proceso de importación es pasar los documentos de su formato original al Formato de Archivo Greenstone (Greenstone Archive Format), así como crear un archivo de resumen (denominado archives.inf) que se utilizará para crear la colección. import.pl necesita saber qué conectores se han de utilizar y dónde encontrar los archivos de los documentos originales. En el Cuadro <tblref table_options_for_the_import_and_build_processes> se muestran las opciones comunes de los procesos de importación y de creación; en el Cuadro <tblref table_additional_options_for_the_import_process> se presentan las opciones adicionales aplicables sólo al proceso de importación. La opción OIDtype requiere ciertas explicaciones. Cada documento tiene un identificador de objeto asociado ( Object Identifier) u OID. La mejor manera de calcularlo es que el programa desmenuce el contenido del documento ( hash). Sin embargo, este procedimiento es lento, por ello se propone una alternativa más sencilla ( incremental) que simplemente numera los documentos secuencialmente en el orden de importación (método por incremento gradual). Puede usted utilizar el método incremental para ir más rápido, pero debe emplear hash si quiere añadir documentos a su colección en una fecha ulterior (sin volver a importar).
<tblcaption table_additional_options_for_the_import_process|Opciones adicionales del proceso de importación></tblcaption>
< - 132 104 293 > | ||
Argumento | Función | |
-importdir | Nombre de directorio | Indica dónde se puede encontrar el material que se ha de importar. El valor por defecto es GSDLHOME/collect/nombre_col/archives. |
-removeold | Ninguno | Suprime el contenido del directorio archives antes de importar. |
-gzip | Ninguno | Comprime los documentos de archivos de Greenstone producidos por import (ZIPPlug debe formar parte de la lista de conectores y gzip ha de estar instalado en su computadora). |
-groupsize | Número >0 | Número de documentos que se pueden reunir en un archivo en el Format de Archivo de Greenstone. El valor por defecto es 1 (esto es, un documento por archivo). |
-sortmeta | Nombre de etiqueta de metadatos | Clasifica alfabéticamente los documentos según el contenido de la etiqueta de metadatos. Sin embargo, esta función queda invalidada si la colección tiene más de un grupo en la colección (por ejemplo, groupsize >1). |
-OIDtype | hasho incremental | Método de creación de las OID para los documentos: hash desmenuza el contenido pero es lento; incremental simplemente asigna números de manera secuencial a los documentos y es más rápido. |
<imgcaption figure_steps_in_the_import_process|%!– id:213 –%Etapas del proceso de importación ></imgcaption>
La Figura <imgref figure_steps_in_the_import_process> representa el proceso de importación efectuado por el programa import.pl. Cada óvalo representa un módulo utilizado para llevar a cabo tareas relacionadas con una parte específica del sistema Greenstone. Todos estos módulos pueden encontrarse en el directorio GSDLHOME/perllib.
En la etapa 3, nótese que las variables de importación como importdir y archivedir pueden definirse en el archivo de configuración de la colección o desde la línea de comandos. Si se definen desde la línea de comandos, se ignorarán todos los valores especificados en el archivo de configuración.
En la etapa 6 se crea el archivo de información de los archivos (archives.inf).
En la etapa 7 se crea un objeto que sabrá dónde guardar los documentos y obedecerá a todas las instrucciones especiales de memorización (tales como sortmeta, que clasifica los documentos según una etiqueta de metadatos especificada).
De hecho, la mayoría de las tareas del proceso de importación corren a cargo de conectores, que se activan mediante el módulo plugin. Dicho módulo establece una secuencia de los conectores especificados en el archivo de configuración de la colección y maneja asimismo la escritura de los documentos en el Formato de Archivo Greenstone (utilizando un objeto document).
El proceso de creación
Durante el proceso de creación de la colección se comprime el texto y se crean los índices de texto completo especificados en el archivo de configuración de la colección. Además, se calculan con antelación y se incorporan a la colección los datos relativos a la apariencia de la colección en Internet, por ejemplo las informaciones sobre los iconos y los títulos, así como la información producida por los clasificadores. buildcol.pl comparte numerosas opciones con import.pl, como se muestra en el Cuadro <tblref table_options_for_the_import_and_build_processes>. En el Cuadro <tblref table_additional_options_for_the_build_process> se muestran otras que le son propias.
<tblcaption table_additional_options_for_the_build_process|Opciones adicionales del proceso de creación></tblcaption>
< - 132 104 293 > | ||
Argumento | Función | |
-builddir | Nombre de directorio | Especifica dónde se ha de almacenar el resultado de la creación. (El valor por defecto es GSDLHOME/collect/nombre_col/building). |
-index | Nombre del índice (por ejemplo, section:Title) | Especifica qué índices crear. El valor por defecto es la totalidad de los índices indicados en el archivo de configuración de la colección. |
-allclassifications | Ninguno | Evita que el proceso de creación elimine las clasificaciones que no contienen documentos (por ejemplo, la clasificación “X” en los títulos, si no hay documentos cuyo título empiece por la letra X). |
-create_images | Ninguno | Crea automáticamente los iconos de colección (para ello es necesario haber instalado GIMP y el módulo Gimp Perl). |
-mode | all, compress_text, infodb, o build_index | Determina lo que debe hacer el proceso de creación. (El valor por defecto es all). all lleva a cabo una creación completa, compress_text sólo comprime el texto del documento, infodb crea una base de datos de informaciones sobre la colección (nombres, archivos, archivos asociados, información sobre la clasificación y otros) y build_index crea los índices especificados en el archivo de configuración de la colección o en la línea de comandos. |
-no_text | No almacena texto comprimido. Esta opción es útil para minimizar el tamaño de los índices creados si desea visualizar siempre los documentos originales en el momento de la ejecución. |
<imgcaption figure_steps_in_the_build_process|%!– id:241 –%Etapas del proceso de creación ></imgcaption>
El diagrama de la Figura <imgref figure_steps_in_the_build_process> representa la ejecución del programa buildcol.pl. Muchas de las etapas son iguales a las del proceso de importación. La primera que no coincide es la etapa 4 (a la izquierda), que sólo se ejecuta si se ha activado la opción create_images. A continuación, las imágenes se crean y se registran en el archivo de configuración de la colección mediante una función del guión buildcol.pl. Para que todo esto funcione adecuadamente, deben haberse instalado y configurado apropiadamente GIMP ( GNU Image Manipulation Program, o Programa de manipulación de imágenes de GNU) y el módulo Gimp Perl. Debe existir asimismo un permiso de escritura (así como de lectura) al archivo de configuración de la colección.
En la etapa 5 se comprueba primero si existe un proceso de creación específico de la colección. Algunas colecciones requieren un tratamiento especial durante la creación, en cuyo caso se debe escribir un creador específico de la colección y colocarlo en su directorio perllib, que lleva el nombre de la colección seguido de “ builder ” (creador). Los creadores específicos de colección provienen de mgbuilder. En la etapa 5, se inicializa el creador (ya sea el instalado por defecto o uno específico de la colección) con información sobre el número de documentos que se va a incluir, el mantenimiento o no de la antigua versión de la colección y la ubicación de los directorios building y archive.
La etapa 6 es la de la creación. El texto de los documentos se comprime y se indiza, los títulos y los iconos se almacenan en una base de datos de informaciones de la colección y se crean las estructuras de datos para apoyar los clasificadores activados por los conectores de la colección. El archivo mgbuilder (o el creador específico de la colección) maneja todas esas etapas y utiliza el programa MG (“ Managing Gigabytes ”, o gestión de gigabytes; véase Witten et al., 1999) para comprimir e indizar.
La opción mode permite especificar las partes de la colección que se crean, pero por defecto se crea todo: el texto comprimido, los índices y las bases de datos de informaciones de colección.
Una vez concluido el proceso de creación, si desea que la colección pueda consultarse en Internet, es preciso trasladarla del directorio building de la colección al directorio index. Las colecciones no se crean directamente en el directorio index porque la creación de las colecciones voluminosas puede tardar horas o días. Es importante que el proceso de creación no afecte una copia existente de la colección hasta que la operación no haya concluido.
Documentos en el Formato de Archivo Greenstone
Todos los documentos de origen se importan al sistema Greenstone después de su conversión en el Formato de Archivo Greenstone, que es un estilo XML que divide los documentos en secciones y puede contener metadatos para cada documento o sección. No tendrá que crear manualmente los archivos en el Format de Archivo Greenstone, ya que los conectores que tratan los documentos cumplen esta función, tal como se explica en el capítulo siguiente. Sin embargo, puede resultar útil comprender el formato de los archivos Greenstone, que describimos a continuación.
En XML, las etiquetas van entre corchetes angulares para el marcado. El Formato de Archivo Greenstone codifica los documentos que ya están en HTML, y todos los signos <, > o “ incluidos en el texto original se eluden mediante la convención estándar <, > y ".
<imgcaption figure_greenstone_archive_format|%!– id:251 –%(a) Definición de tipo de documento (DTD); %!– id:250 –%Formato de Archivo Greenstone: ></imgcaption>
<!DOCTYPE GreenstoneArchive [ <!ELEMENT Section (Description,Content,Section*)> <!ELEMENT Description (Metadata*)> <!ELEMENT Content (#PCDATA)> <!ELEMENT Metadata (#PCDATA)> <ATTLIST Metadata name CDATA #REQUIRED> ]>
<imgcaption figure_greenstone_archive_format_1|%!– id:253 –%(b) Documento de ejemplo. %!– id:252 –% ></imgcaption>
<?xml version="1.0" ?> <!DOCTYPE GreenstoneArchive SYSTEM "http://greenstone.org/dtd/GreenstoneArchive/1.0/GreenstoneArchive.dtd"> <Section> <Description> <Metadata name="gsdlsourcefilename">ec158e.txt</Metadata> <Metadata name="Title">Freshwater Resources in Arid Lands</Metadata> <Metadata name="Identifier">HASH0158f56086efffe592636058</Metadata> <Metadata name="gsdlassocfile">cover.jpg:image/jpeg:</Metadata> <Metadata name="gsdlassocfile">p07a.png:image/png:</Metadata> </Description> <Section> <Description> <Metadata name="Title">Prólogo</Metadata> </Description> <Content> Eso es el texto del prólogo </Content> </Section> <Section> <Description> <Metadata name="Title">Primer y único capítulo</Metadata> </Description> <Section> <Description> <Metadata name="Title">Parte 1</Metadata> </Description> <Content> Eso es la primera parte del primer y único capítulo </Content> </Section> <Section> <Description> <Metadata name="Title">Parte 2</Metadata> </Description> <Content> Eso es la segunda parte del primer y único capítulo </Content> </Section> </Section> </Section>
En la Figura <imgref figure_greenstone_archive_format> se muestra la definición de tipo de documento (DTD) XML para el Formato de Archivo Greenstone. Básicamente, un documento se divide en Sections (Secciones), que pueden a su vez subdividirse. Cada Section tiene una Description (descripción) que comprende cero o varios elementos Metadata (metadatos) y una parte Content (contenido) (que puede estar vacía), donde se guardan los datos propiamente dichos del documento. Cada elemento Metadata va asociado con un atributo de nombre (puede ser cualquier nombre) y algunos datos textuales. En XML, PCDATA corresponde a “ parsed character data ” (datos de caracteres analizados), es decir, básicamente texto.
En la Figura <imgref figure_greenstone_archive_format_1> se muestra un documento simple escrito en este formato, que es un pequeño libro con dos imágenes asociadas. El libro tiene dos secciones denominadas Prólogo y Primer y único capítulo, <i/> respectivamente; la segunda sección se divide en dos subsecciones. Obsérvese que no existe noción de “capítulo” como tal: se lo representa simplemente como una sección de nivel superior.
<tblcaption table_greenstone_archive_format_values|Formato de Archivo Greenstone: Valores del atributo name de la etiqueta Metadata.></tblcaption>
< - 130 400 > | |
gsdlsourcefilename | Archivo original a partir del cual se generó el archivo de archivo de Greenstone |
gsdlassocfile | Archivo asociado con el documento (un archivo gráfico, por ejemplo) |
La etiqueta <Section> indica el principio de cada sección del documento y la correspondiente etiqueta de cierre </Section> señala el final de dicha sección. Tras cada etiqueta <Section> hay una sección <Description> que incluye una serie cualquiera de elementos <Metadata>. De este modo, se pueden asociar diferentes metadatos con las distintas secciones de un documento. En su mayoría son tipos particulares de metadatos, como “Title” (título), por ejemplo. Los dos valores del atributo name (nombre) que se muestran en el Cuadro <tblref table_greenstone_archive_format_values> reciben un tratamiento especial por parte de Greenstone; todos los demás se consideran metadatos vinculados a esa sección.
En algunas colecciones, los documentos están divididos en páginas que se tratan como secciones. Por ejemplo, un libro puede contener secciones de primer nivel que corresponden a los capítulos, en los que se definen una serie de “secciones” que, en realidad, corresponden a las diferentes páginas del capítulo.
Metadatos del documento
Los metadatos son información descriptiva asociada a un documento, como por ejemplo, autor, título, fecha, palabras clave, etc. Ya se ha mencionado que los metadatos se almacenan con los documentos. En la Figura <imgref figure_greenstone_archive_format> se puede ver que las etiquetas <Metadata> especifican el nombre del tipo de metadatos y les asignan un valor. Un ejemplo es la línea < Metadata name=“Title” > Primer y único capítulo</Metadata > de la Figura <imgref figure_greenstone_archive_format_1>: el título de un documento es un elemento de metadato asociado a él. Se utiliza la norma de metadatos Dublin Core para definir los tipos de metadatos (Dublin Core, 2001; Weibel, 1999; Thiele, 1997)
En el Cuadro <tblref table_dublin_core_metadata_standard> se muestran los tipos de metadatos disponibles en la norma; los que van señalados con un asterisco se utilizan en las colecciones que se pueden consultar actualmente en el sitio Web de la Biblioteca Digital de Nueva Zelandia. Si ninguno de estos tipos corresponde exactamente a una clase determinada de metadatos, se pueden utilizar también otros tipos de metadatos que no figuran en la norma Dublin Core. Por ejemplo, la colección de demostración contiene los metadatos how to (Cómo…) y Magazine (Revista).
<tblcaption table_dublin_core_metadata_standard|Norma de metadatos Dublin Core></tblcaption>
< - 133 94 305 > | ||
Nombre | Subetiqueta de metadato | Definición |
*Título | Title | Nombre que se da al recurso |
*Creador | Creator | Entidad encargada principalmente de crear el contenido del recurso |
*Tema y palabras clave | Subject | Tema del contenido del recurso |
*Descripción | Description | Explicación del contenido del recurso |
*Editor | Publisher | Entidad encargada de publicar el recurso |
Contribuidor | Contributor | Entidad encargada de aportar contribuciones al contenido del recurso |
*Fecha | Date | Fecha en que se publicó el recurso o cualquier otra fecha importante asociada con el recurso. |
Tipo de recurso | Type | Índole o tipo del contenido del recurso |
Formato | Format | Representación física o digital del recurso |
*Identificador de recurso | Identifier | Referencia inequívoca al recurso en un contexto determinado: se trata del identificador de objeto u OID |
*Fuente | Source | Referencia a un recurso del que deriva el presente recurso |
*Lengua | Language | Lengua del contenido intelectual del recurso |
Relación | Relation | Referencia a un recurso conexo |
*Cobertura | Coverage | Extensión o alcance del contenido del recurso |
Gestión de los derechos | Rights | Información sobre los derechos relacionados con el recurso o atinentes a éste |
Los documentos en el Format de Archivo de Greenstone vistos por dentro
El Formato de Archivo de Greenstone impone poca estructura a los documentos individuales. Los documentos se dividen en párrafos. Pueden subdividirse jerárquicamente en secciones y subsecciones que pueden a su vez subdividirse indefinidamente. Cada documento va asociado con un identificador de objeto u OID que también sirve para identificar las secciones y subsecciones mediante números separados por puntos en los OID de los documentos. Por ejemplo, el OID HASHa7.2.3 se referirá a la subsección 3 de la sección 2 del documento HASHa7.
Cuando se lee un libro en una colección de Greenstone, la jerarquía de las secciones figura en el índice del libro. Por ejemplo, los libros de la colección de demostración disponen de un índice jerárquico compuesto de capítulos, secciones y subsecciones como se muestra en la Figura <imgref figure_hierarchical_structure_in_the_demo_collection>. Los documentos de la colección Computer Science Technical Reports no presentan una estructura jerárquica en subsecciones, pero cada documento está dividido en páginas y se puede navegar por las páginas de un documento recuperado. Los capítulos, las secciones, las subsecciones y las páginas se consideran simplemente “secciones” del documento.
<imgcaption figure_hierarchical_structure_in_the_demo_collection|%!– id:318 –%Estructura jerárquica de la colección de demostración%!– id:318a –%(a) ></imgcaption>
<imgcaption figure_hierarchical_structure_in_the_demo_collection_1|%!– id:318c –%(b) %!– id:318b –%Estructura jerárquica de la colección de demostración ></imgcaption>
La estructura del documento sirve también para los índices de búsqueda. Existen tres niveles posibles de índices: documento, sección y párrafo, aunque la mayoría de las colecciones no utilizan los tres niveles. Un índice de documento contiene el documento completo; se lo utiliza para encontrar todos los documentos en los que figura un conjunto determinado de palabras (los términos pueden estar repartidos por todo el documento, lejos unos de otros). Cuando se crea un índice de sección, cada porción de texto que se indiza se extiende desde una etiqueta <Section> hasta la siguiente etiqueta <Section>; por consiguiente, un capítulo que empieza directamente con una nueva sección producirá un documento vacío en el índice. Las secciones y subsecciones se tratan de la misma manera: la estructura jerárquica del documento se allana con objeto de crear índices de búsqueda. Para los índices de párrafos, útiles para búsquedas más específicas, cada párrafo se considera un documento aparte.
En el menú desplegable de la Figura <imgref figure_hierarchical_structure_in_the_demo_collection_1> se muestran los índices de búsqueda de la colección de demostración. Los “capítulos” y los “títulos de las secciones” son índices de nivel de la sección, mientras que los “libros enteros” son índices de nivel del documento. Al igual que los índices de texto, se pueden crear índices de cualquier tipo de metadatos. Por ejemplo, algunas colecciones proponen índices de búsqueda de títulos de sección, como se muestra en la Figura <imgref figure_hierarchical_structure_in_the_demo_collection_1>.
Archivo de configuración de la colección
El archivo de configuración de la colección rige la estructura de una colección tal como la ve el usuario, lo que permite personalizar su aspecto y estilo, así como el modo en que se tratan y presentan los documentos. Cuando usted ejecuta mkcol.pl, se crea un simple archivo de configuración de colección en el que queda registrada su dirección electrónica como creador y responsable de la actualización. Recuérdese que el argumento creator es obligatorio, y a menos que se especifique por separado, se registra la misma información para el elemento maintainer (actualizador).
<tblcaption table_items_in_the_collection_configuration_file|Elementos del archivo de configuración de la colección></tblcaption>
< - 132 397 > | |
creator | Dirección electrónica del creador de la colección |
maintainer | Dirección electrónica del actualizador de la colección |
public | Determina si la colección va a ponerse a disposición del público o no |
beta | Determina si la colección es una versión beta o no |
indexes | Lista de índices por crear |
defaultindex | Índice por defecto |
subcollection | Define una subcolección basada en metadatos |
indexsubcollections | Especifica qué subcolecciones indizar |
defaultsubcollection | Índice de subcolección por defecto |
languages | Lista de lenguas en las que hay que crear los índices |
defaultlanguage | Índice de lengua por defecto |
collectionmeta | Define los metadatos al nivel de la colección |
plugin | Especifica un conector que habrá de utilizarse durante la creación |
format | Cadena de formato (se explica más adelante) |
classify | Especifica un clasificador que habrá de utilizarse durante la creación |
Cada línea del archivo de configuración de colección es básicamente un par “atributo, valor”. Cada atributo aporta una parte de información sobre la colección que determina su apariencia y el modo en que se van a tratar los documentos. En el Cuadro <tblref table_items_in_the_collection_configuration_file> se muestran los elementos que se pueden incluir en un archivo de configuración de colección y su utilización. Además, se pueden especificar todas las opciones de línea de comandos de los programas import.pl y buildcol.pl en un archivo de configuración de colección; por ejemplo, una línea que diga no_text true propondrá la opción no_text de buildcol.pl.
El archivo de configuración de la colección creado por la secuencia de comandos mkcol.pl, que se muestra en el Cuadro <tblref table_collection_configuration_file_created_by_mkcd>, es muy simple y no contiene sino la información estrictamente necesaria. Las líneas 1 y 2, que proceden del valor creator suministrado al programa mkcol.pl, contienen las direcciones electrónicas de la persona encargada de la creación de la colección y de la persona encargada de actualizarla (no es necesariamente la misma).
<tblcaption table_collection_configuration_file_created_by_mkcd|Archivo de configuración de colección creado mediante mkcol.pl></tblcaption>
< - 132 132 265 > | ||
Atributo | Valor | |
1 | creator | [email protected] |
2 | maintainer | [email protected] |
3 | public | True |
4 | beta | True |
5 | indexes | document:text |
6 | defaultindex | document:text |
7 | plugin | ZIPPlug |
8 | plugin | GAPlug |
9 | plugin | TextPlug |
10 | plugin | HTMLPlug |
11 | plugin | EMAILPlug |
12 | plugin | ArcPlug |
13 | plugin | RecPlug |
14 | classify | AZList metadata Title |
15 | collectionmeta | collectioname “colección de muestras” |
16 | collectionmeta | iconcollection "" |
17 | collectionmeta | collectionextra "" |
18 | collectionmeta | .document:text "documents" |
La línea 3 indica si la colección se pondrá a disposición del público una vez creada, mediante los valores true (el parámetro por defecto, que significa que la colección se podrá consultar públicamente) o false (que significa lo contrario). Esta última opción es útil cuando se crean colecciones para probar programas o para uso personal. La línea 4 indica si la colección es beta o no (el valor por defecto también es true (verdadero), lo que significa que la colección es una versión beta).
La línea 5 determina los índices de colección que han de constituirse en el momento de la creación: en este ejemplo sólo se indizará el texto del documento. Existen tres niveles posibles de índices: document ( documento ), section ( sección ) y paragraph ( párrafo ). Pueden contener datos en formato text (texto) o en cualquier tipo de metadatos, por lo general Title (título). La forma que se utiliza para especificar el tipo de índice es nivel:datos. Por ejemplo, para incluir también un índice de títulos de sección, habría que sustituir la línea 5 por indexes document:text section:Title. Se puede incluir más de un tipo de datos en el mismo índice separando los tipos de datos por comas. Por ejemplo, para crear un índice en el nivel de sección que incluya títulos, texto y datos, la línea debería rezar indexes section:text,Title,Date. El índice por defecto que se define en la línea 6 es el valor por defecto que se utiliza en la página de búsqueda de la colección.
Las líneas 7-13 especifican los conectores que se han de utilizar para convertir los documentos en el Formato de Archivo Greenstone y para crear colecciones a partir de archivos en el Formato de Archivo Greenstone. En la Sección plugins se proporciona información sobre los conectores disponibles. Los conectores se prueban en cada documento siguiendo el orden de su enumeración y cuando se encuentra un conector capaz de tratar un documento, no se prueba ninguno más.
La línea 14 especifica que se va a crear una lista alfabética de títulos para facilitar la consulta. Las estructuras de consulta están compuestas por “clasificadores”. En la Sección classifiers se proporciona información sobre los clasificadores y sus funciones.
Las líneas 15-18 sirven para especificar los metadatos de nivel de colección. Se utiliza la forma larga del collectionname como “título” de la colección para el navegador de Internet. El atributo collectionicon proporciona la URL del icono de la colección. Si se especifica un índice (como en la línea 18), la cadena siguiente aparece en la página de búsqueda de la colección como el nombre de ese índice. Un metadato de nivel de colección particularmente importante es collectionextra, que suministra un texto entrecomillado en que se describe la colección. Este atributo aparecerá como texto en “Acerca de esta colección”. Se pueden introducir distintas versiones de collectionextra para las diferentes interfaces lingüísticas añadiendo la especificación de la lengua entre corchetes. Por ejemplo:
collectionmeta collectionextra “descripción de la coleción”
collectionmeta collectionextra [l=fr] “descripción en francés”
collectionmeta collectionextra [l=mi] “descripción en maorí”
Si se introduce “fr” o “mi” como idioma de la interfaz, aparecerá en pantalla la correspondiente versión lingüística de la descripción. Para otras lenguas aparecerá la versión por defecto.
Este archivo simple de configuración de colección no incluye ningún ejemplo de cadenas de formato, ni de las posibilidades de subcolección o de idiomas que ofrece el archivo de configuración. Las cadenas de formato se examinan más en detalle en la Sección formatting_greenstone_output, pero las subcolecciones y las posibilidades lingüísticas se abordarán en este capítulo.
Las subcolecciones
Greenstone le permite definir subcolecciones y crear índices separados para cada una. Por ejemplo, en una colección hay un amplio subconjunto de documentos denominado Food and Nutrition Bulletin (boletín de los alimentos y la nutrición). Utilizaremos esta colección como ejemplo.
Esta colección posee tres índices, todos de nivel de sección: el primero para toda la colección, el segundo para el Food and Nutrition Bulletin y el tercero para el resto de los documentos. A continuación se presentan las correspondientes líneas del archivo de configuración de la colección:
indexes section:text subcollection fn “Title/^Food and Nutrition Bulletin/i” subcollection other “!Title/^Food and Nutrition Bulletin/i” indexsubcollections fn other fn,other
La segunda y la tercera líneas definen las subcolecciones denominadas fn, que contendrá los documentos de Food and Nutrition Bulletin, y other, que contendrá el resto de los documentos. El tercer campo de estas definiciones es una expresión regular en Perl que identifica estos subconjuntos mediante el metadato Title : en el primer caso, buscamos títulos que empiecen por Food and Nutrition Bulletin y, en el segundo, otros títulos que no empiezan así (obsérvese el “!”). La i final permite que la búsqueda se haga sin distinción entre mayúsculas y minúsculas. El campo de metadatos, en este caso Title, puede ser cualquier campo válido, o Filename (nombre de archivo) que coincida con el nombre de archivo original del documento. La cuarta línea, indexsubcollections, especifica tres índices: uno para la subcolección fn, otro para la subcolección other, y el tercero para ambas subcolecciones (esto es, para todos los documentos). Obsérvese que si se hubiesen especificado dos entradas en la línea indexes, el número total de índices generado hubiese sido seis en lugar de tres.
Si una colección contiene documentos en distintas lenguas, se pueden crear índices separados para cada lengua. La lengua es una instrucción de metadato; los valores se especifican a través de la norma ISO 639 que consta de un código de dos letras para representar los idiomas, por ejemplo, en para inglés, zh para chino y mi para maorí. Puesto que los valores de los metadatos pueden especificarse en el nivel de la sección, las diferentes partes de un documento pueden estar en distintos idiomas.
Por ejemplo, si el archivo de configuración incluyese:
indexes section:text section:Title document:text paragraph:text languages en zh mi
los índices correspondientes al texto de la sección, al título de la sección, al texto del documento y al texto de los párrafos se crearían en inglés, chino y maorí: doce índices en total. Si se añaden un par de subcolecciones se multiplica de nuevo el número de índices. Es preciso tener cuidado a fin de evitar recargar el índice.
(Esta especificación del índice podría definirse mediante la función subcollection en vez de la función languages. Sin embargo, como la sintaxis impide crear subcolecciones de subcolecciones, sería imposible indizar cada lengua por separado en las subcolecciones.)
Búsqueda transversal en las colecciones
Greenstone tiene una función de “búsqueda transversal en las colecciones” que permite buscar en varias colecciones a la vez y combinar los resultados “entre bastidores” como si se estuviera buscando en una sola colección unificada. Se puede buscar en cualquier subconjunto de colecciones: la página de Preferencias le permite elegir las colecciones que se han de incluir en las búsquedas.
La búsqueda transversal en las colecciones se activa mediante la línea siguiente:
supercollection col_1 col_2 ...
en que las colecciones en cuestión se denominan col_1, col_2, … La misma línea debe figurar en el archivo de configuración de cada una de las colecciones en cuestión.