[greenstone_es] Re: Links a descriptores

  • From: Diego Spano <diegospano@xxxxxxxxx>
  • To: greenstone_es@xxxxxxxxxxxxx
  • Date: Fri, 16 Jul 2010 11:33:47 -0300

Nicolas,

sin tener que meterte con Javascript ni nada por el estilo, lo más sencillo
es esto. Asumiendo por ejemplo que tenes 4 Subjects, el formato que te mando
te va a armar una lista de metadatos (en vez del <br> podes poner lo que
quieras...

<a
href=\"_httpquery_&r=1&hs=1&fqf=DS&t=0&sf=&q=[sibling(1):dc.Subject\">[sibling(1):dc.Subject]</a><br>
<a
href=\"_httpquery_&r=1&hs=1&fqf=DS&t=0&sf=&q=[sibling(2):dc.Subject\">[sibling(2):dc.Subject]</a><br>
<a
href=\"_httpquery_&r=1&hs=1&fqf=DS&t=0&sf=&q=[sibling(3):dc.Subject\">[sibling(3):dc.Subject]</a><br>
<a
href=\"_httpquery_&r=1&hs=1&fqf=DS&t=0&sf=&q=[sibling(4):dc.Subject\">[sibling(4):dc.Subject]</a>

Saludos

Diego

Diego Spano
Prodigio Consultores
Bernardo de Irigoyen N° 1114 2°B
Capital Federal - Argentina
Tel: (54 11) 5093-5313
www.prodigioconsultores.com


2010/7/16 Nicolás Rucks <nrucks@xxxxxxxxxxxxx>

> Buenos días, gentes del camino de piedras verdes :)
>
> Esta es una consulta de "estilo", si se puede llamar así. Tenía un problema
> y lo solucioné, pero no me gusta la solución.
>
> La idea es la siguiente:
> Luego de hacer una búsqueda un usuario recupera una cantidad de registros;
> todavía no ve un documento completo, sino registros de una serie de
> documentos. En este punto aparecen para cada registro una serie de datos
> (perdón, son metadados...) como ser título, autor, año, descriptores.
> Estos últimos, el plural es importante, son los que me interesan, los
> descriptores: lo que yo quiero es que cada descriptor sea un link a una
> búsqueda de ese tema en la página de búsqueda de Greenstone.
>
>
> Inicialmente pretendía lograr un formato, dentro del format CL1VList de
> collect.cfg, que fuera algo por este estilo:
>        <a
> href=\"_httpquery_&r=1&hs=1&fqf=DS&t=0&sf=&q=[dc.Subject]\">[dc.Subject]</a>
>
> Paso a detallar:
>        <a href=\"      Es un link.
>
>        _httpquery_     Genera toda la cadena previa que especifica una URL
> de búsqueda en Greenstone.
>
>        &r=1&hs=1&fqf=DS&t=0&sf=        Son una serie de parámetros
> necesarios para hacer una búsqueda.
>
>        &q=[dc.Subject] Es el argumento de búsqueda, lo más importante acá;
> en este caso [dc.Subject] contiene un descriptor, un metadato del documento,
> y quiero que Greenstone haga una búsqueda por ese descriptor.
>
>        \"> Cierra la sintaxis del <a href... >
>
>        [dc.Subject]    En la pantalla se visualiza el descriptor por el que
> se hará la búsqueda si se pincha en este link.
>
>        </a>    Es el cierre del link.
>
> Todo esto funcionará para el primer descriptor (pueden probarlo en su
> propio collect.cfg solo cambiando dc.Subject por como se llame el metadato
> en sus colecciones).
> Cuál es el problema? Que tengo varios descriptores, por supuesto!, y que
> quiero un link por todos y cada uno de los descriptores, no solo el primero.
>
> Probamos con [sibling:dc.Subject] ?
>   <a
> href=\"_httpquery_&r=1&hs=1&fqf=DS&t=0&sf=&q=[sibling:dc.Subject]\">[sibling:dc.Subject]</a>
>        Nop.
> Van a aparecer todos los descriptores, pero el link va a ser único. Yo
> quiero un link por cada descriptor.
>
> Probamos con [sibling(All\'...\'):dc.Subject] ?
>        Nop, esto solo me genera un SEPARADOR entre cada ocurrencia de
> dc.Subject .
>        Necesito algo que genere una cadena ANTES, y otra DESPUES de cada
> ocurrencia (además de un separador), y además que repita el [dc.Subject] :
> una vez adentro del <a href> y otra vez fuera.
>
>
> La solución que le encontré? Me parece un poco brutal, pero funciona.
> Los datos, digo, los metadatos (perdón otra vez) de los documentos
> provienen de una base de datos (ISIS, pero eso no viene al caso), a partir
> de la cual se generan archivos metadata.xml . Esto quiere decir que cada
> documento (PDF) viene acompañado de su archivo metadata.xml donde se
> especifican autor, título, año, pie de imprenta, etc. y descriptores.
> Así que en cada archivo metadata.xml generado, además de haber un
>
>        <Metadata mode="accumulate" name="dc.Subject">Descriptor</Metadata>
>
> por cada descriptor, ahora también hay un
>
>        <Metadata mode="accumulate" name="Subjectlink">&lt;a
> href=&quot;_httpquery_&amp;r=1&amp;hs=1&amp;fqf=ZZ&amp;t=0&amp;sf=&amp;q=Descriptor&quot;&gt;Descriptor&lt;/a&gt;</Metadata>
>
> O sea, que le generé el link completo de antemano.
> Entienden porqué califiqué esto de un poco "brutal".
>
> Ahora la pregunta: Existe alguna otra forma más elegante de manipular los
> metadatos dentro de un format CL1VList en el collect.cfg ?
>
> Eso me haría muy feliz... Bueno, me pondría bastante contento.
>
> Saludos, y gracias por haber leído el mail completo. Espero no se hayan
> aburrido.
>
> Nicolas Rucks
> Biblioteca Cardini
> Fundación Instituto Leloir
>
>

Other related posts: