Académique Documents
Professionnel Documents
Culture Documents
Bibliografía de apoyo
• Bibliografía propuesta en las clases teóricas.
Desarrollo de la clase
Parte 1
1. Agregamos cinco (5) elementos de metadatos que puedan ser útiles para
nuestra colección. Definimos cada uno de sus atributos.
2. Realizamos la carga de los metadatos creados para nuestro esquema
propio.
3. Visualizamos el metadata.xml y lo analizamos.
Parte 2
Para poder visualizar los metadatos que asignamos en la descripción y que incluimos en
nuestros clasificadores, índices y registros es necesario conocer el lenguaje con que se
formatean esos datos. El lenguaje de formateo de GS3 está escrito en XSLT, que ya han
visto en las clases teóricas, junto con XML.
Si nos paramos en la pestaña “formato” vemos diferentes opciones que se aplican a los
componentes de la colección y que son características del formato:
Como ya han trabajado con XML y XSLT no les resultará difícil comprender su estructura y
contenido. Abran ustedes el archivo con un editor de texto:
<?xml version="1.0" encoding="UTF-8"?>
<CollectionConfig
xmlns:gsf="http://www.greenstone.org/greenstone3/schema/ConfigFormat"xmlns:gslib="ht
tp://www.greenstone.org/skinning" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<metadataList>
<metadata lang="en" name="creator"/>
<metadata lang="en" name="maintainer"/>
<metadata lang="en" name="public">true</metadata>
</metadataList>
<displayItemList>
<displayItem assigned="true" lang="en" name="text">text</displayItem>
<displayItem assigned="true" lang="en"
name="dc.Title,ex.dc.Title,Title">titles</displayItem>
<displayItem assigned="true" lang="en" name="Source">filenames</displayItem>
<displayItem assigned="true" lang="en" name="document:text">text</displayItem>
<displayItem assigned="true" lang="en" name="document:ex.Title">Title</displayItem>
<displayItem assigned="true" lang="en"
name="document:ex.Source">Source</displayItem>
<displayItem assigned="true" lang="en" name="document">document</displayItem>
<displayItem assigned="true" lang="en" name="section">section</displayItem>
<displayItem assigned="true" lang="en" name="shortDescription">curso</displayItem>
</displayItemList>
<format> <gsf:template name="choose-title">
<gsf:choose-metadata>
<gsf:metadata name="dc.Title"/>
<gsf:metadata name="exp.Title"/>
<gsf:metadata name="ex.dc.Title"/>
<gsf:metadata name="Title"/>
<gsf:default>Untitled</gsf:default>
</gsf:choose-metadata>
</gsf:template>
</format>
<search type="lucene">
CONFIGURACIÓN DE LA BÚSQUEDA
<level name="document">
<displayItem lang="en" name="name">document</displayItem>
<displayItem lang="es" name="name"/>
</level>
<level name="section">
<displayItem lang="en" name="name">section</displayItem>
<displayItem lang="es" name="name"/>
</level>
16
<defaultLevel name="document"/>
<index name="text">
<displayItem lang="en" name="name">text</displayItem>
</index>
<index name="dc.Title,ex.dc.Title,Title">
<displayItem lang="en" name="name">titles</displayItem>
</index>
<index name="Source">
<displayItem lang="en" name="name">filenames</displayItem>
</index>
<defaultIndex name="text"/>
<sort name="rank">
<displayItem lang="en" name="name">rank</displayItem>
</sort>
<sort name="none">
<displayItem lang="en" name="name">natural (build) order</displayItem>
</sort>
<searchType name="plain"/>
<searchType name="simpleform"/>
<searchType name="advancedform"/>
<format> <gsf:template match="documentNode">
<td valign="top">
<gsf:link type="document">
<gsf:icon type="document"/>
</gsf:link>
</td>
<td>
<gsf:link type="document">
<xsl:call-template name="choose-title"/>
</gsf:link>
</td>
</gsf:template>
</format>
</search>
<infodb type="jdbm"/>
<import>
CONFIGURACION DE LOS PLUGIN ACTIVOS
<pluginList>
<plugin name="ZIPPlugin"/>
<plugin name="GreenstoneXMLPlugin"/>
<plugin name="TextPlugin"/>
<plugin name="HTMLPlugin"/>
<plugin name="EmailPlugin"/>
<plugin name="PDFPlugin">
<option name="-convert_to" value="html"/>
<option name="-pdfbox_conversion"/>
</plugin>
<plugin name="RTFPlugin"/>
<plugin name="WordPlugin"/>
<plugin name="PostScriptPlugin"/>
<plugin name="PowerPointPlugin"/>
<plugin name="ExcelPlugin"/>
<plugin name="ImagePlugin"/>
<plugin name="ISISPlugin"/>
<plugin name="NulPlugin"/>
<plugin name="OAIPlugin"/>
<plugin name="MetadataXMLPlugin"/>
<plugin name="ArchivesInfPlugin"/>
<plugin name="DirectoryPlugin"/>
</pluginList>
</import>
<browse>
Visualización de clasificadores
En la pestaña formato > formatos (format features para la versión en inglés) nos paramos
en la opción browse
1. etiquetas html que, por defecto, muestran la estructura de una fila de una tabla
<td></td>
2. etiquetas gsf, que son un conjunto simplificado de comandos de formateo, escritos
en XML, que luego serán transformados internamente a XSLT para poder gestionar
la visualización de los metadatos.
Etiquetas gsf
Plantillas (templates)
<gsf:template match="documentNode"></gsf:template>
<gsf:template match="classifierNode”></gsf:template>
Metadatos
Enlaces
Iconos e imágenes
Condicionales
<gsf:metadata name='dc.Title'/>
<gsf:metadata name='dls.Title'/>
<gsf:metadata name='Title'/>
<gsf:default>Untitled</gsf:default>
</gsf:choose-metadata>
<gsf:if-metadata-exists>
<gsf:metadata name="abstract"/>
</gsf:if-metadata-exists>
<gsf:switch>
<gsf:metadata name='Title'/>
<gsf:otherwise>...</gsf:otherwise>
</gsf:switch>
Iteración
Usado en lugar de separator para insertar código html entre ocurrencias del mismo
metadato
<gsf:foreach-metadata name='Subject'>
<b><gsf:meta-value/></b>
</gsf:foreach-metadata>
Para poder hacer los reemplazoas presten atención a las tablas que determinan las tres
columnas en la visualización: <td></td>
<gsf:template match="documentNode">
<td valign="top">
<gsf:link type="document">
<gsf:icon type="document"/>
</gsf:link>
</td>
<td valign="top">
<gsf:link type="source">
<gsf:choose-metadata>
<gsf:metadata name="thumbicon"/>
<gsf:metadata name="srcicon"/>
</gsf:choose-metadata>
</gsf:link>
</td>
<td valign="top">
<gsf:link type="document">
<xsl:call-template name="choose-title"/>
</gsf:link>
<gsf:switch>
<gsf:metadata name="Source"/>
<gsf:when test="exists">
<br/>
<i>(<gsf:metadata name="Source"/>)</i>
</gsf:when>
</gsf:switch>
</td>
</gsf:template>
<gsf:template match="classifierNode[@classifierStyle = 'VList']">
<td valign="top">
<gsf:link type="classifier">
<gsf:icon type="classifier"/>
</gsf:link>
</td>
<td valign="top">
<gsf:switch>
<gsf:metadata name="Title"/>
<gsf:when test="contains" test-value="Greenstone">
<gsf:metadata name="Title"/>
<b><u>Sobre GS</u></b>
</gsf:when>
<gsf:otherwise>
<gsf:metadata name="Title"/>
</gsf:otherwise>
</gsf:switch>
</td>
</gsf:template>
<gsf:template match="classifierNode[@classifierStyle = 'HList']">
<gsf:link type="classifier">
<gsf:metadata name="Title"/>
</gsf:link>
</gsf:template>
(!) Recuerden que cada vez que modificamos el formato tenemos que reiniciar el GS
Server
Vemos que en el listado de títulos aparece el nombre del documento fuente y queremos
eliminarlo porque no es muy agradable para la visualización, lo mismo que el enlace a la
versión gsdl del documento fuente, que no siempre tiene un buen aspecto, entonces:
<td valign="top">
<gsf:link type="document">
<gsf:icon type="document"/>
</gsf:link>
</td>
Para eliminar el nombre del documento fuente:
<gsf:switch>
<gsf:metadata name="Source"/>
<gsf:when test="exists">
<br/>
<i>(<gsf:metadata name="Source"/>)</i>
</gsf:when>
</gsf:switch>
<gsf:template match="documentNode">
<td valign="top">
<gsf:link type="source">
<gsf:choose-metadata>
<gsf:metadata name="thumbicon"/>
<gsf:metadata name="srcicon"/>
</gsf:choose-metadata>
</gsf:link>
</td>
<td valign="top">
<b> <gsf:metadata name="dc.Creator"/> </b>
<gsf:link type="document">
<gsf:metadata name="dc.Title"/>
</gsf:link>
</td>
</gsf:template>
Ahora queremos generar una visualización distinta para el clasificador por autor en la que
aparezcan solo los títulos y el autor separado por puntos y comas (;), para esto agregamos
la función CL4VList para que use otro formato en ese clasificador. (!) presten atención
porque el número de formato puede variar en función de los clasificadores que
hayamos agregado en nuestra colección
<gsf:template match="documentNode">
<td valign="top">
<gsf:link type="source">
<gsf:choose-metadata>
<gsf:metadata name="thumbicon"/>
<gsf:metadata name="srcicon"/>
</gsf:choose-metadata>
</gsf:link>
</td>
<td valign="top">
<gsf:metadata name="dc.Title"/>
<gsf:link type="document">
<i> <gsf:metadata name="dc.Creator" separator=" ; "/> </i>
</gsf:link>
</td>
</gsf:template>
<gsf:template match="classifierNode[@classifierStyle = 'VList']">
<td valign="top">
<gsf:link type="classifier">
<gsf:icon type="classifier"/>
</gsf:link>
</td>
<td valign="top">
<gsf:metadata name="Title"/>
</td>
</gsf:template>
<gsf:template match="classifierNode[@classifierStyle = 'Hlist']">
<gsf:link type="classifier">
<gsf:metadata name="Title"/>
</gsf:link>
</gsf:template>