accesibilidad webenlace a Sedic
curso de autoformación

capítulo cuatroLa iniciativa de ficheros abiertos (Open Archive Initiative – OAI): protocolo OAI-PMH, proveedores de datos, proveedores de servicios

La Iniciativa de Archivos Abiertos (OAI) proporciona la arquitectura y especificaciones técnicas necesarias para que productores y distribuidores de documentos de acceso abierto pongan a disposición de agregadores de contenidos metadatos sobre los documentos que almacenan con objeto de hacerlos visibles y accesibles a los investigadores.

OAI viene a solucionar el problema de la dispersión de los documentos en múltiples depósitos institucionales, temáticos, revistas individuales, portales de revistas electrónicas, etc. Desde el punto de vista del investigador, hace posible la integración de documentos de una misma temática, área geográfica, tipología, etc. en una única herramienta que es capaz de proporcionarle, además, una serie de valores añadidos, como selección, búsqueda e identificación, evaluación, etc.

OAI surgió a finales de los años noventa a partir de los servidores de documentos en acceso abierto que habían aparecido en distintas disciplinas científicas: arXiv en Física, RePEc en Economía, CogPrints en Psicología, NCSTRL en Informática y NDLTD para tesis. Su objetivo inicial fue estudiar la interoperatibilidad de los distintos servidores con objeto de facilitar el intercambio de datos entre los mismos. El nacimiento de la iniciativa se sitúa en la Convención de Santa Fe celebrada en la ciudad norteamericana del mismo nombre en Octubre de 1999.

La iniciativa se concretó en un protocolo para la comunicación de metadatos denominado OAI-PMH (Open Archives Initiative – Protocol for Metadata Harvesting) cuya primera versión apareció en Enero de 2001. Aunque inicialmente se creó para ser aplicado a depósitos de documentos en acceso abierto muy pronto se vio que podía implementarse sobre cualquier sistema que requiriese la comunicación de metadatos. Esto hizo afirmar, con cierta euforia, a alguno de los creadores del mismo que OAI-PMH estaba llamado a ser a las bibliotecas digitales lo que http había sido a la web.

Podríamos señalar tres características fundamentales del protocolo:

  1. Simplicidad: Se concibió bajo la premisa de la sencillez. Conscientes de los problemas de implementación que habían tenido otras iniciativas anteriores como Z39.50 o Dients, los creadores buscaron una fórmula simple que estuviera al alcance de cualquier potencial implementador.
  2. Normalización: Basado en estándares ampliamente utilizados en Internet como son el protocolo http (HiperText Transport Protocol) para la transmisión de datos y órdenes y XML (Extended Markup Language) para la codificación de los metadatos.
  3. Recolección. Frente a otros sistemas de agregación de contenidos como la búsqueda distribuida (Z39.50) o los sistemas de sindicación de contenidos vía RSS, OAI-PMH ha optado por la recolección de metadatos. En este caso, existe una entidad que pone a disposición de los interesados información bibliográfica sobre los documentos que almacena. Estos, normalmente agregadores de contenidos, recogen periódica y sistemáticamente todos o parte de los metadatos expuestos para, localmente, implementar servicios de valor añadido.

OAI-PMH sigue el principio de que existen múltiples proveedores de datos (PD) que comparten información con múltiples proveedores de servicios (PS) a través de un protocolo común. Los primeros son los depósitos de documentos que proporcionan los metadatos de los documentos que almacenan y los segundos son los recolectores o agregadores de contenidos, que toman los datos con el objetivo de incorporarles algún valor añadido y presentarlos a los usuarios finales. Entre los valores añadidos que se pueden ofrecer tenemos: sistema de búsqueda e identificación, filtrado, alertas temáticas, medición del uso e impacto de los documentos, etc.

Es importante matizar que OAI-PMH trata exclusivamente de la comunicación de metadatos, no de los textos completos de los documentos que se referencian.

La comunicación entre PD y PS se realiza utilizando transacciones http para emitir preguntas y obtener repuestas. El PS puede pedir al PD que le envíe metadatos según determinados criterios como por ejemplo la fecha de creación de los registros. En respuesta, el PD envía un conjunto de registros en formato XML. Las peticiones se emiten a través de los métodos GET y POST del protocolo http y constan de una lista de argumentos con la forma de pares del tipo: clave=valor. Ejemplo 0.

Existen solamente seis peticiones que un PS puede realizar a un PD:

  1. Identify: utilizado para recuperar información sobre el PD: nombre, versión del protocolo que utiliza, dirección del administrador, etc. Ejemplo 1.
  2. ListMetadataFormats: devuelve la lista de formatos bibliográficos que utiliza el servidor. Ejemplo 2.
  3. ListIdentifiers: recupera los encabezamientos de los registros en lugar de los registros completos. Tiene un argumento obligatorio (metadataprefix) para especificar el formato de metadatos en el que se quiere obtener la respuesta. Permite, además, argumentos como el rango de fechas entre los que queremos recuperar los datos. Ejemplo 3.
  4. ListRecords: igual que el anterior pero recuperando los registros completos. Ejemplo 4.
  5. GetRecord: utilizado para recuperar un registro concreto. Necesita dos argumentos: identificador del registro solicitado (identifier) y especificación del formato de metadatos (metadataprefix) en que se desea obtener. Ejemplo 5.
  6. ListSets: recupera un conjunto de registros. Estos conjuntos son creados opcionalmente por el servidor para facilitar una recuperación selectiva de metadatos. Se trata de una clasificación de los contenidos según diferentes criterios como materias, lenguaje, tipología documental, etc. Un PS puede pedir que se recuperen sólo los metadatos de una clase específica. Ejemplo 6.

El protocolo requiere que los metadatos se expresen en formato Dublín Core no calificado. No obstante esto es un mínimo común denominador puesto que es posible además que cada PD utilice formatos adicionales que permitan una descripción más rica de los documentos como por ejemplo MARC. Un PS puede pedir que los registros se le sirvan en cualquiera de los formatos soportados por el PD.

EJEMPLOS

Ejemplo 0: http://pd.org/OAI-script?verb=Identify

Donde:

  1. http:// es el protocolo de transporte.
  2. pd.org/ es el servidor del PD
  3. OAI-script? Es el software encargado de recibir las peticiones, interpretarlas y generar las respuestas.
  4. Verb= Es la petición que se emite

Ejemplo 1: Hemos seleccionado para ilustrar estos ejemplos el proveedor de datos de la Universitat Politécnica de Catalunya (UPC). En este caso pedimos simplemente la identificación del mismo. En la respuesta podemos comprobar datos como la dirección e-mail del administrador o que el registro más antiguo que contiene data de 2001.

Petición: http://eprints.upc.es:8080/pfc-oai/request?verb=Identify

Respuesta:

ejemplo 1

Ejemplo 2: En segundo lugar pedimos al PD de la UPC que nos indique con qué formatos de metadatos trabaja. En la respuesta podemos comprobar que utiliza exclusivamente Dublin Core no calificado.

Petición: http://eprints.upc.es:8080/pfc-oai/request?verb=ListMetadataFormats

Respuesta:

ejemplo 2

Ejemplo 3: Una vez que sabemos que la UPC trabaja con Dublin Core podemos proceder a solicitar que nos envíe los encabezamientos de los registros introducidos desde el 1 de enero al 1 de agosto de 2007.

Petición: http://eprints.upc.es:8080/pfc-oai/request?verb=ListIdentifiers&metadataPrefix=oai_dc&from=2007-01- 01&until=2007-08-01

Respuesta:

ejemplo 3

Ejemplo 4: Igual que en el ejemplo anterior, pero ahora recibimos los registros completos no sólo los encabezamientos.

Petición: http://eprints.upc.es:8080/pfc-oai/request?verb=ListRecords&metadataPrefix=oai_dc&from=2007-01- 01&until=2007-08-01

Respuesta:

ejemplo 4

Ejemplo 5: Una vez que conocemos los identificadores de los registros por el método especificado en el ejemplo 3, podemos solicitar que se nos envíe un registro solamente. En este caso el identificado como oai:eprints.upc.es:2099.1/1479

Petición: http://eprints.upc.es:8080/pfcoai/request? verb=GetRecord&metadataPrefix=oai_dc&identifier=oai:eprints.upc.es:2099.1/1479

Respuesta:

ejemplo 5

Ejemplo 6: Finalmente solicitamos las categorías con las que trabaja este PD. En la respuesta vemos como, entre otros, la UPC nos presenta una clasificación de sus contenidos en función de los centros de esta institución.

Petición: http://eprints.upc.es:8080/pfc-oai/request?verb=ListSets

Respuesta:

ejemplo 6