Repox
Índice |
Apresentação
A adoção de ferramentas prontas tornou-se a chave para a economia nas empresas, organizações e institutos, visto que altera o modelo tradicional da informática, que consistia no processo focado de desenvolvimento de programas. Com isso, criam-se novas oportunidades, principalmente na prestação de suporte às tecnologias adotadas. Com isso, requer-se documentação apropriada a divulgação de informação sobre as ferramentas, de acordo com o tipo de usuário.
Assim, o presente documento visa apresentar o software para criação de sistema agregador REPOX, destinado aos profissionais da Tecnologia da Informação e Comunicação (TIC). Para tanto, inclui parte teórica que embasou o desenvolvimento do software, de forma a apoiar a equipe no entendimento das funcionalidades implementadas. Com isso, facilitar o entendimento do sistema, não apenas explicando o uso da ferramenta.
Arquivos Abertos (Open Archieves)
O movimento dos arquivos abertos teve os preceitos lançados na Convenção de Santa Fé (estado do Novo México nos Estados Unidos), em 1999, com forte alinhamento com os conceitos do Movimento de Acesso Aberto. Dentre os conceitos firmados pelos estudiosos participantes do evento, pode-se destacar a interoperabilidade, que oferta embasamento para o desenvolvimento de ferramentas que possibilitam a troca de informação entre sistemas de informação acadêmica.
Com os arquivos abertos, Sena (2001) considera que a ciência ampliou as suas possibilidades, ao passo que possibilita a troca de dados, informações e conhecimentos de diversas áreas do conhecimento. Nesse ponto, o arquivo aberto oferta as definições de infraestrutura para que processos interdisciplinares ocorram, ampliando as possiblidades de acesso à informação, com a implementação da interoperabilidade.
Tanto que, Triska e Café (2001) considera a interoperabilidade o cerne dos arquivos abertos. Para a adoção da interoperabilidade seguem-se as orientações como: a) o uso de protocolo de comunicação comum (um conjunto de orientações para desenvolvimento de programas e não um programa em si), dados intercambiados no formato XML (eXtensible Markup Language) e a utilização de um esquema de metadados comum.
Com isso, Weitzel (2005) afirma que com a interoperabilidade pode criar sistema que colhe, preserva informação proveniente de vários sistemas e dá acesso à informação consolidada, apresentando uma maturidade técnica e tecnológica. Com isso, podem-se criar redes destinadas ao compartilhamento de informações.
Nesse contexto, Marcondes e Sayão (2008) considera que as redes correspondem à plena utilização da interoperabilidade, ofertando um serviço robusto, mas que requer maior esforço dos participantes. Com isso, os arquivos abertos estabelecem-se no âmbito do acesso aberto à informação, como base na criação de redes que ampliam a oferta de acesso, contribuindo à visibilidade das instituições parceiras.
Conceitos da Interoperabilidade
O processo de interoperabilidade, relacionado ao movimento de arquivos abertos, atende a existência de três elementos, os provedores de dados, os provedores de dados e os agregadores. Como o foco está no intercambio de informação entre sistemas informatizados, de forma automática, os provedores de dados são os sistemas que ofertam os dados para que sejam coletados para os provedores de serviços, de forma a poderem ofertar serviços consolidados. Os agregadores são sistemas que coletam as informações como os provedores de serviços e, também, ofertam os dados coletados como os provedores de dados (figura 1).
Um provedor de dados dispõe seus dados na forma de sets, ou seja, conjunto de registros. Assim, a coleta pode ser feita em todo o provedor ou em apenas alguns sets. Os sets podem ser estruturais ou virtuais. Em grande parte dos provedores de dados os registros estão contidos em estruturas de organização, com os sets representando essas estruturas. Outros provedores criam sets virtuais conforme alguma característica ou para responder a algum provedor de serviço.
Para o processo de coleta automática de metadados (harvesting), pro sua vez, tem-se a utilização de um protocolo, os esquemas de metadados, os crosswalks e os mapeamentos. Esse processo é assíncrono, ocorrendo conforme planejamento, ou seja, um determinado agregador ou provedor de dados programa a ocorrência da coleta, conforme as necessidades.
No que ser refere ao protocolo, atualmente se concentram em dois, o Open Archives Initiative Protocol for Metadata Harvesting (OAI-PMH) e o Open Archives Initiative Object Reuse and Exchange (OAI-ORE). Os dois protocolos possuem a mesma finalidade de coletar automaticamente metadados dos provedores de dados, mas se diferem apenas em questões simples, enquanto o OAI-PMH coleta apenas os metadados, o OAI-ORE permite coletar, os metadados, as relações entre os objetos digitais descritos pelos metadados e até os objetos digitais. Há duas implementações desses protocolos, um que faz a coleta e outro que responde. O REPOX, como agregador, implementa as duas camadas de protocolo, que coleta e responde a coleta.
Os metadados coletados se apresentam no formato XML, que facilita o processamento nos provedores de serviços e agregadores. Entretanto, devem estar em um esquema de metadados, um padrão que permite que os sistemas processem corretamente o conteúdo. Nesse ponto, grande parte dos sistemas que implementam a interoperabilidade responde, no mínimo com o esquema de metadados Dublin Core. O REPOX pode coletar e responder a vários esquemas de metadados graças à implementação dos Crosswalks.
Como os metadados são interoperados no formato XML, podem-se flexibilizar os provedores de dados, agregadores e provedores de serviços com os crosswalks, que são programas conversores, desenvolvidos em XSLT (eXtensible Stylesheet Language for Transformation). Assim, possibilita a transformação de um esquema de metadados para outros. No REPOX foram desenvolvidos alguns crosswaks para atender as necessidades da BDTD.
Outro ponto importante para os provedores de dados e agregadores é a normalização do conteúdo. Como coleta-se metadados de vários provedores de dados, em muitos casos, utilizam-se padrões diferentes. Por exemplo, para idioma têm-se padrões ISO com duas ou três letras. Assim, Português pode ser representado por: pt, pt_br ou por. Para unificar o conteúdo pode-se fazer uso de mapeadores, em campos que são padronizados nos provedores de dados, mas difere-se de um provedor para outro. Os mapeadores são implementados com XSLT, da mesma forma que os crosswalks.
Nesse contexto, o REPOX permite criar um agregador, com interface para gerenciamento do harvesting, com a utilização do protocolo OAI-PMH. Oferta, também, facilidades para desenvolvimento e integração de crosswalks e mapeadores. Com isso, torna-se uma ferramenta completa no que se refere ao harvesting.
O REPOX
O REPOX é um software livre e de código aberto para a criação de provedores de dados, agregadores e provedores de serviços (quadro 1), desenvolvido e mantido pelo Instituto Superior Técnico – IST de Portugal. Assim, possibilita a implementação de todos os elementos relacionados ao movimento dos arquivos abertos, tornando um software útil a instituições que desejam implementar serviços de arquivos aberto.
Quadro 1 – Resumo das implementações do REPOX
A estrutura do REPOX pode ser apresentada conforme as facilidades envolvidas, Para os administradores é composta por: gerenciamento de servidores de dados e datasets, gerenciamento de harvesing, gerenciamento de mapeadores, testador de provedores de dados, estatísticas e administração (Figura 2). Cada módulo oferta serviços destinados a gerenciar parte das facilidades ofertadas pelo REPOX. Esses módulos serão explicados nas próximas seções.
Operando o REPOX
A Operação do REPOX, descritas no presente guia, contempla as principais ações a serem executadas no gerenciamento de um agregador, em que se utilizam facilidades de coleta e resposta. Não tem o intuito de ser extensivo a todas as facilidades, visto não ser um manual de usuário, restringindo a ser o guia para operadores.
Logando no REPOX
A primeira tela do Repox é a de login, em que o Administrador do sistema se identifica de acordo com o usuário e senha, definidos no processo de instalação do Repox. No caso de esquecimento da senha, pode-se recuperar a senha na opção Recover my password, que envia a senha para o e-mail do Administrador do sistema (Figura 3). Este endereço de e-mail é informado no momento de instalação do Repox e pode ser alterado diretamente no arquivo de configuração, caso for necessário.
Figura 3 - detalhe da tela de loginPode-se, também, acessar o REPOX via LDAP, Para tanto se devem efetuar as configurações necessárias para que o REPOX consiga acessar os diretórios do LDAP. Pode-se logar como usuário anônimo (anonymous), mas esse usuário tem permissão apenas de visualizar as informações, sem a possibilidade de alteração de nenhum parâmetro. Para alterar a senha e e-mail do Administrador do REPOX, deve-se estar logado e basta clicar no ícone “Bem-vindo admin”. O sistema abrirá uma página pop-up que possibilita a alteração do email e senha do administrador. (Figura 4)
Página inicial do REPOX
A página inicial do REPOX, acessível logo após o login, pode ser dividida em quatro partes, simplesmente para entendimento, como apresentado na figura 5, Esta página pode apresentar mais ou menos opções dependendo do usuário. Neste caso, apresentamos a página apresentada para o administrador, que é o usuário com o maior privilégio no REPOX
Figura 5 – Detalhe da página inicial do REPOXItem Descrição
1 - Indica qual a versão do REPOX,
2 - Menu principal do REPOX,
3 - Indica qual o usuário está logado
4 - Área de trabalho do REPOX apresentado os provedores de dados e datasets, assim como as opções para gerencia-los.
A administração
A administração do REPOX compreende um grupo de cinco opções: Configuração, Gerenciamento de Usuários, Gerenciamento de Serviços Externos, Serviços REST e Gerenciamento de Tags (Figura 6). Cada opção possibilita a gerenciar ou configuração de parte do sistema. Por ser parte sensível, deve-se ter cautela em fazer alterações.
Figura 6 – Detalhe da página do REPOX, indicando a administração
Configuração
O formulário de configuração permite a configuração dos parâmetros do sistema de forma online. Estes parâmetros devem ser configurados na instalação ou em caso de mudanças na infraestrutura que abriga o REPOX. Para tanto, deve-se ter muito cuidado na configuração ou alteração dos parâmetros, para evitar problemas posteriores.
Figura 7 – Detalhe da página do Repox com as opções da configuração
Os principais parâmetros a serem configurados são os apresentados no quadro 2. Para alterar algum valor, basta sobrescrever os valores e clicar em “save”. Caso não queira guardar as modificações clique em “cancel”. Sugere-se que sempre copie os valores existentes antes de fazer alguma alteração, de forma a poder retornar ao valor original em caso de falhas ou problemas.
Quadro 2 – Parâmetros de configuração do REPOX
Gerenciando usuários
Como todo sistema, o REPOX possui gerenciamento de usuários, com a possibilidade de adicionar, alterar e remover usuários (figura 8).
Figura 8 - Detalhe da página de gerenciamento de usuário
Para adicionar um usuário novo clique em “Add User ”(Figura 8). O sistema abre uma tela pop-up para entrar com as seguintes do novo usuário, depois basta clicar em “save” para terminar o processo:
• Identificação do usuário, que pode ser o nome.
• Email do usuário, para possibilitar recuperar senha via email
• Papel:
o Admin : administrador do REPOX, com permissões para executar todos os processos de manutenção do sistema.
o Normal: usuário com todas as permissões, exceto a de criar novos usuários, que é exclusivo do Admin.
o Harvest: usuário que somente pode ver as informações, sem, no entanto, poder fazer alguma alteração.
Figura 9 – Detalhe da página pop-up para criar usuário novo
Gerenciamento de serviços externos
Os serviços externos são processos hospedados em outros servidores, que devem ser executados antes ou depois de uma coleta (figura 10). Os serviços externos devem estar de acordo com a arquitetura REST (REpresentational State Transfer), que possibilita a transferência de dados por meio de uma rede de computadores. Essa facilidade pode ser utilizada para processar dados coletados ou preparar o ambiente para a coleta.
Figura 10 – página para adicionar serviços externos
Gerenciando Provedores de dados
Os provedores de dados é a entidade que provê os dados no processo de coleta, por meio de seus datasets. Esta separação possibilita que se possa coletar coleções específicas de um mesmo provedor de dados, caso cada coleção seja definido, pelo provedor de dados, como um dataset (set). Dessa forma, um provedor de dados para o REPOX é um rótulo que identifica os datasets a serem coletados. As opções de gerenciamento de provedores de dados são: visualizar (apresentado na página inicial do REPOX), adicionar, alterar e remover, apresentados a seguir.
Adicionando Provedor de dados
Para adicionar um provedor de dados, clique em “criar Data Provider” na página inicial do REPOX. Essa opção está disponível para o Administrador, mas não é visível para outros usuários. Ao clicar em “criar Data Provider” uma página Pop-Up aparece para entrar com as informações do novo provedor de dados (figura 11). Precisa-se apenas do país ( a ser selecionado de uma lista normalizada), o nome do provedor e uma breve descrição. O país serve para colocar uma bandeira do país na visualização dos provedores de dados.
Figura 11 – Detalhe da página pop-Up para criação de provedor de dados
Alterar Provedor de dados
Para alterar um provedor de dados, entre na página inicial em que são apresentados todos os provedores de dados, selecione o provedor de dados que se deseja alterar e clique com o botão direito do mouse (figura 12). A opção para alterar o provedor de dados abre uma tela Pop-Up com as informações existentes, permitindo trocá-las.
Figura 12 – detalhe da página inicial, com provedor de dados selecionado, apresentado a opção de alteração
Remover Provedor de dados
Para remover um provedor de dados, entre na página inicial em que são apresentados todos os provedores de dados, selecione o provedor de dados que se deseja alterar e clique com o botão direito do mouse (figura 12). A opção de remover o provedor de dados requer uma confirmação, uma página Pop-Up será apresentada para confirmar a remoção (figura 13). Caso confirme o Provedor de dados será removido, caso não confirme permanece-se o Provedor de dados ativo.
Figura 13 – Página Pop-Up de confirmação de remoção de Provedor de Dados
Gerenciando DataSets
Um DataSet é a estrutura virtual que agrega os metadados coletados. Assim, para cada Provedor de dados deve-se criar um ou mais DataSets, dependendo da forma que a coleta (harvesting) é esquematizada. Em alguns casos, faz-se a coleta de todos os metadados, requerendo apenas um DataSet. Em outros casos, coletam-se Sets, partes do acervo. Assim, para cada Set que se deseja coletar é preciso criar um DataSet.
Adicionar DataSet
Por pertencer a um Provedor de Dados, a adição de um DataSet inclui-se nas facilidades relacionadas ao Provedor de Dados. Clica-se com o botão direito no mouse no Provedor de dados que se apresenta a opção para criar DataSet (figura 13). Pode-se, também, marcar o provedor de dados e clicar na opção de menu Criar DataSet.
Figura 14 – Opção para adicionar DataSet
Ao clicar em Criar DataSet, uma página PopUp se apresentará para o cadastramento do novo DataSet, de forma a inserir os dados (figura 14). Nesta página informa-se os dados do novo DataSet, iniciando por escolher a aba apropriada, OAI-PMH para provedores de dados Open Archieves, Folder para coleta em pastas, Z39.50 e SruUpdate para coletas em Catálogos que utilizam esses protocolos.
Figura 15 – Página de cadastramento do DataSet
Para os provedores de dados usuários do protocolo OAI-PMH os dados a serem inseridos são:
OAI URL: a URL do servidor a qual os metadados serão coletados. É altamente recomendável que clique em Verificar, para assegurar que a informação inserida está correta. Da mesma forma que ao verificar a URL facilitará a seleção dos Sets se for o caso.
OAI Set: nome do conjunto de dados no servidor OAI. Um conjunto é uma construção opcional para agrupamento de itens com a finalidade de coleta seletiva. Os repositórios podem organizar itens em conjunto. Se este campo não for fornecido, o Repox irá trazer todos os registros.
Formato de Metadados: Como a coleta pode ser efetuada utilizando vários formatos de metadados, como Dublin Core ou Mets, ao verificar a URL, esse campo se carrega com os esquemas de metadados a qual o provedor de dados responde.
Versão do Schema: Alguns esquemas de metadados possuem mais que uma versão. Assim será preciso selecionar a versão. Lista com as versões cadastradas. Aos fazer isso, os dois próximos campos serão preenchidos automaticamente, com a URL do esquema e do NameSpace.
Record Set: Insira aqui o nome do DataSet, podendo ou não ser o mesmo nome do Set ou do provedor de dados (em caso de coleta completa).
Descrição: Insira aqui uma pequena descrição do DataSet.
Transformação: uma transformação esquema pode ser usada para mapear os metadados originais, do esquema inicial para um novo esquema de metadados. As regras de mapeamento devem ser armazenadas em um arquivo XSLT.
Obtendo Informação do DataSet=
Para obter informação sobre um dataset, basta clicar em um dataset com o botão direitos o mouse, como na figura 14, apenas, selecione a opção “View Info”. Com isso uma página PopUp se abrirá apresentado as informações sobre o dataset, como na figura 16. Essa página trás informações gerais sobre o DataSet, apresentado na página inicial, assim como o acesos aos logs das últimas coletas. Opção útil para acompanhamento de coleta dos DataSets.
Figura 16 – Detalhe da página de informação do DataSet
Gerenciando a Coleta (Harvesting)
O harvesting ou coleta automática de metadados é o processo pelo qual um provedor de serviço se conecta ao um provedor de dados, coletando os metadados total ou de um set específico, para depositar esses metadados nos DataSets. A conxão dá-se por meio de protocolos de comunicação (OAI-PMH, Z39-50 ou outros) como se fosse o acesso a uma página web. A coleta de metadados dá-se por meio de processos request/response. Assim, o provedor de serviço implementa parte do protocolo que coleta metadados e o provedor de dados implementa a parte do protocolo que reponde a coleta.
O REPOX implementa tanto o protocolo que coleta, quanto o que responder a coleta, ou seja, é um agregador. Para tanto, disponibiliza uma URL que responde a coleta e gerencia provedores de dados e datasets para armazenar as coletas. Como os dados coletados ficam armazenados nos datasets, torna-se um processo de transferência de metadados entre os provedores de dados e o REPOX.
Este processo deve ser customizado para tornar-se automático, informando as datas e horários a serem executados e a forma que deve ser feito, mas também podendo ser executado manualmente. Este é o principal processo mantido pelo REPOX e para implementá-lo com a flexibilidade necessária é composto por várias funcionalidades, como o agendamento, mapeamento e outros.