Instalando isis-oai-provider

De Wiki.bireme.org/pt
Revisão de 11h57min de 28 de novembro de 2014 por Asael.silva (Discussão | contribs) (Arquivos de configuração)

Ir para: navegação, pesquisa

Isis-oai-provider é uma aplicação que provê acesso a bases de dados ISIS através do protocolo OAI para ser coletada.

A aplicação executa sob PHP 5.3.x.

Instalação

Método 1 - Arquivos para download

Baixe a última versão na opção Downloads no repositório github (arquivo zip ou tar gz) e extraia o arquivo para seu servidor.

Exemplos:

  • Criando uma estrutura e extraíndo os arquivos da aplicação no diretório /opt/ de um servidor Linux:
   $ cd /opt/
   $ mkdir bireme
   $ cd bireme
   $ wget https://github.com/bireme/isis-oai-provider/tarball/master -O isis-oai-provider.tar.gz
   $ tar xvfzp isis-oai-provider.tar.gz
   $ mv bireme-isis-oai-provider-53c0abc/ isis-oai-provider

NOTA: o termo 53c0abc é gerado automaticamente durante a criação do arquivo tar.gz e portanto, será diferente a cada execução.

  • Baixando os arquivos da aplicação em um servidor Windows:

Método 2 - Clonar o repositório do projeto no git

A vantagem deste método é que se pode facilmente atualizar a aplicação posteriormente, mas é necessário ter o pacote git-core instalado.

Exemplo: Criando uma estrutura e baixando a aplicação do repositório no diretório /opt/ do servidor:

   $ cd /opt/
   $ mkdir bireme
   $ cd bireme
   $ git clone git://github.com/bireme/isis-oai-provider.git

Publique a aplicação no servidor web (ex. Apache Web Server)

Opção A - Usando um VirtualHost específico para a aplicação web

   <VirtualHost *:80>
      ServerName isis-oai-provider.local
      DocumentRoot /opt/bireme/isis-oai-provider/htdocs/
      <Directory "/opt/bireme/isis-oai-provider/cgi-bin">
           Options +ExecCGI
           AllowOverride None
           Order deny,allow
      </Directory>
      ScriptAlias /cgi-bin/ /opt/bireme/isis-oai-provider/cgi-bin/
      LogLevel warn
      CustomLog /var/log/apache2/isis-oai-provider.log combined
      ServerSignature On
   </VirtualHost>

Opção B - Usando um VirtualHost específico

Assumindo-se que já exista um site web executando, será apenas necessário descobrir os diretórios para os seguintes componentes:

  • DocumentRoot --- o diretório onde os arquivos estáticos e scripts PHP se localizam - geralmente htdocs
  • cgi-bin --- o diretório com permissões especiais para executar scripts CGI - geralmente cgi-bin
  • bases de dados ISIS --- o diretório onde as bases de dados ISIS se localizam - geralmentebases

Em seguida mova/copie ou crie links simbólicos para os diretórios do isis-oai-provider:

Ex. Assumindo um site web com a seguinte estrutura de diretório:

 /home/sites/
            /site1/
                   htdocs/
                   cgi-bin/
                   bases/

Siga os passos abaixo para criar links simbólicos para os diretórios da aplicação:

 $ cd /home/sites/site1/htdocs
 $ ln -s /opt/bireme/isis-oai-provider/htdocs/isis-oai-provider/ .
 $ cd /home/sites/site1/cgi-bin
 $ ln -s /opt/bireme/isis-oai-provider/cgi-bin/isis-oai-provider/ .

Antes de iniciar a configuração

Para que o ISIS-OAI-Provider funcione corretamente é necessário renomear alguns arquivos de acordo com a plataforma utilizada.

  1. Se for um sistema operacional Linux, renomeie os arquivos conforme abaixo:
    • de: wxis.exe-Linux
    • para: wxis.exe
    • de: wxis1660.exe-Linux
    • para: wxis1660.exe
  2. Se for um sistema operacional Windows, renomeie os arquivos conforme abaixo:
    • de: wxis.exe-Windows
    • para: wxis.exe
    • de: wxis1660.exe-Windows
    • para: wxis1660.exe

NOTAS:

  1. Garanta que os arquivos executáveis estejam com permissão para execução tanto na linha de comando como via interface CGI.
  2. As versões dos arquivos executáveis são todas 32 bits.
  3. Temos versões 64 bits compiladas somente para Linux.

Arquivos de configuração

Renomeie os arquivos de exemplo de configuração como segue:

 $ cd htdocs/isis-oai-provider/
 $ mv oai-config-sample.php oai-config.php
 $ mv oai-databases-sample.php oai-databases.php

Modifique os arquivos oai-config.php e oai-databases.php de acordo com os passos abaixo:

oai-config.php

  • altere o conteúdo da variável DATABASE_PATH para o diretório 'bases' da instalação corrente
DATABASE_PATH=/home/www/my-iah/bases
  • altere o conteúdo da variável NAME para um nome que identifique aquela instância
NAME=MyIAHdb
  • altere o conteúdo da variável EMAIL para o endereço de e-mail da pessoa encarregada pelos dados
EMAIL=me@institution.org
  • altere o conteúdo das variáveis IDPREFIX e IDDOMAIN de acordo com a informação de domínio de sua instância
IDPREFIX=br
IDDOMAIN=bvs
  • configure a variável EARLIESTDATESTAMP para uma data próxima do início de entrada de dados da instância
EARLIESTDATESTAMP=1998-12-30

oai-databases.php

Cada base de dados deve ser configurada tendo-se em mente a seguinte estrutura e campos obrigatórios:

[set-spec]
name=
description=
database=
mapping=
prefix=oai_date_
isis_key_length=<1660|1030>
identifier_field=<tag>
datestamp_field=<tag>
  • [set-spec] inicia e descreve uma seção para aquela base de dados e identifica o nome lógico daquele conjunto de dados. Esta informação é apresentada no verbo ListSets e também faz parte do identificador único de cada documento.

ex.

[lilacs]
  • A variável name serve como um rótulo para o conjunto de dados que será mostrado no verbo ListSets.

ex.

name=LILACS
  • A variável description contém a descrição do conjunto de dados que será mostrada no verbo ListSets.

ex.

description="LILACS Database"
  • A variável database contém o caminho para o diretório e o nome do arquivo master da base de dados.

ex.

database=/home/www/my-iah/bases/iah/dblil
  • A variável mapping se refere ao nome do formato utilizado para mapear os elementos de dados. (Localizado no subdiretório map/)

ex.

mapping=lilacs-dc.pft

  • A variável prefix especifica um prefixo para o campo de data. Este prefixo deverá ser incluído no arquivo FST da base de dados para regeração do invertido.

ex.

prefix=oai_date_

ex. de inversão para incluir na LILACS.FST

93 0 |oai_date_|v93^*/
  • A variável isis_key_length define os tamanhos mínimo e máximo de chave utilizada para inverter a base. Muita atenção com a versão utilizada especialmente de acordo com sua origem (ex. LILACS é 1660, IAH é 1030)

ex.

isis_key_length=1660
  • A variável identifier_field informa a tag do identificador único de registros

ex.

identifier_field=2
  • A variável datestamp_field informa a tag da data de criação do registro

ex.

datestamp_field=93

Portanto, havendo necessidade de adicionar novas bases de dados à configuração, basta preencher os campos acima de acordo com os parâmetros necessários e adicioná-los ao arquivo.

NOTE: Uma vez que o nome de seção é também o nome da base de dados, não são permitidas duplicidades de nome. Uma solução possível - mas não recomendada - é a geração de links simbólicos para cada arquivo que compreende a base de dados ISIS (arquivos .mst, .xrf, .ifp, .l01, .l02, .n01, .n02 e .cnt)

Segue um exemplo de configuração da base do Diretório de Eventos

[direve]
name=direve
description="Events directory"
database=/home/projects/isis-oai-provider/bases/isis-oai-provider/direve
mapping=direve.i2x
prefix=oai_date_
isis_key_length=1030
identifier_field=10
datestamp_field=507

Testando

Teste a aplicação abrindo seu navegador de internet e informando o nome do domínio no modelo: http://nome_do_servidor/isis-oai-provider/

Ex. http://isis-oai-provider.local/isis-oai-provider/ [Em manutenção]

Documentação OAI