Bibliotecas
Upcoming SlideShare
Loading in...5
×
 

Bibliotecas

on

  • 829 views

 

Statistics

Views

Total Views
829
Views on SlideShare
829
Embed Views
0

Actions

Likes
1
Downloads
2
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Bibliotecas Bibliotecas Document Transcript

  • Bibliotecas Digitais e o Repositório Fedora Renan Rodrigues de Oliveira Cedric Luiz de Carvalho Technical Report - RT-INF_002-11 - Relatório Técnico April - 2011 - Abril The contents of this document are the sole responsibility of the authors. O conteúdo do presente documento é de única responsabilidade dos autores. Instituto de Informática Universidade Federal de Goiás www.inf.ufg.br
  • Bibliotecas Digitais e o Repositório Fedora Renan Rodrigues de Oliveira ∗ renan@inf.ufg.br Cedric Luiz de Carvalho † cedric@inf.ufg.br Abstract. Digital libraries are a set of electronic resources and associated technical capabilities to create, search and use information, where its collection is stored in digital format. For the construction of these new models of providing information, various tools are being continuously developed and refined. Fedora is an open source platform that provides an architecture designed to serve as the basis for the imple- mentation of digital repositories for a wide variety of applications. This work has the objective of discussing some concepts and characteristic of the Digital Libraries and to present the Fedora solution . Keywords: Digital Libraries, Open Archives Model, Digital Objects, Fedora Resumo. As bibliotecas digitais são um conjunto de recursos eletrônicos e capaci- dades técnicas associadas para criar, buscar e usar informações, em que seu acervo é armazenado em formato digital. Para a construção desses novos modelos de disponi- bilização de informação, várias ferramentas estão sendo continuamente desenvolvi- das e aperfeiçoadas. O Fedora é uma plataforma de código aberto que oferece uma arquitetura projetada para servir como base para a implementação de repositórios digitais para uma grande variedade de aplicações. Este trabalho tem como obje- tivo discutir alguns conceitos e característica das bibliotecas digitais e apresentar a solução Fedora. Palavras-Chave: Bibliotecas Digitais, Modelos de Arquivos Abertos, Objetos Digitais, Fedora 1 Introdução Com o aumento do uso da rede mundial de computadores e dos avanços tecnológicos que facilitam a publicação e difusão de informações, as bibliotecas digitais surgiram com objetivo de dar acesso a toda informação digital armazenada em um determinado repositório de dados. Estes dados podem ser de diferentes tipos de objetos digitais (documentos, imagens, planilhas, vídeos, programas, etc.), devidamente catalogados por metadados, geralmente com interface de acesso via Web (World Wide Web). ∗ Mestrando em Ciência da Computação – INF-UFG. † Orientador – INF-UFG 1
  • Bibliotecas Digitais e o Repositório Fedora 2 O conceito de biblioteca digital aparenta algo revolucionário, mas na verdade ele é resul- tado de um processo gradual e evolutivo. Nas últimas décadas, o computador tem sido utilizado de forma cada vez mais crescente. Desde os anos 70, muitas bibliotecas implementaram mecanismos de automatização com- putacional de seus processos, passando a acessar bancos de dados para recuperar referências bibliográficas e textos completos de artigos de periódicos, verbetes de enciclopédias e itens de outras fontes de referência. A partir do fenomenal crescimento da Internet, as possibilidades de acessar e recuperar informações aumentaram de forma nunca antes imaginada [13]. Uma biblioteca tradicional é aquela onde a maioria dos itens do seu acervo é constituída de documentos em papel ou de outro artefato físico. Uma característica das bibliotecas tradi- cionais é que tanto a coleção como o seu catálogo utilizam o papel como suporte de registro da informação. As bibliotecas digitais possuem seus acervos armazenados em formato digital em um repositório de dados centralizado ou distribuído. Associado a este repositório de dados, existe um sistema de informações com as funcionalidades necessárias à manipulação do acervo digital. Segundo a Digital Library Federation (consórcio de bibliotecas e agências relacionadas que usam tecnologias de informação eletrônica para estender suas coleções e serviços), as bib- liotecas digitais são organizações que produzem os recursos, incluindo as pessoas especializadas para selecionar, estruturar, oferecer acesso intelectual, interpretar, distribuir, preservar a integri- dade e garantir a persistência, ao longo do tempo, das coleções de trabalhos digitais, para que eles estejam legíveis e disponíveis para uso por uma comunidade ou conjunto de comunidades definidas [14]. As bibliotecas digitais prometem inúmeros e valiosos benefícios para a sociedade. O mais óbvio é o fim das restrições de espaço e tempo ao acesso à informação, além de contribuir para redução das desigualdades sociais e regionais [3]. Uma vez que são programas complexos, as bibliotecas digitais demandam grande esforço de desenvolvimento, sendo objetos de pesquisa multidisciplinar, construídas, adaptadas e tes- tadas ao longo de vários anos de pesquisas. Quando o potencial das bibliotecas digitais estiver realizado, incluindo a presença de mecanismos de processamento semântico, haverá a possibilidade de se ter acesso imediato a qualquer conhecimento humano documentado, a partir de qualquer lugar e de forma mais pre- cisa. As novas bibliotecas digitais terão funcionalidades inexistentes nas bibliotecas tradi- cionais, ampliando o conceito de biblioteca. Elas acelerarão o desenvolvimento da ciência e tecnologia e aumentarão a qualidade de vida dos cidadãos. Com a Internet de banda larga, novos serviços e formas mais complexas de conteúdo digital, como áudio e vídeo, podem ser facilmente disponibilizados. Com o avanço das redes móveis, esta informação estará acessível a locais não conectados por fios [3]. Esta facilidade com que uma biblioteca digital pode fazer trafegar um documento de um local para outro leva a concluir que as ações cooperativas com entidades afins venham a ser estimuladas. O computador que hospeda o acervo de uma determinada biblioteca digital (servi- dor) pode estar a milhares de quilômetros do computador do usuário (cliente), que faz requi- sições a documentos digitais remotos. Para os usuários, o que importa é que o documento por completo seja acessível de forma rápida, econômica e sem dificuldades de outra natureza [12]. Este trabalho tem como objetivo discutir alguns conceitos e características das bibliote- cas digitais e apresentar a arquitetura Fedora, que é a solução para bibliotecas digitais proposta pela Cornell University em parceria com a University of Virginia. Além deste capítulo in- trodutório, o restante do trabalho está dividido como se segue: na seção 2, são apresentadas
  • Bibliotecas Digitais e o Repositório Fedora 3 algumas características das bibliotecas digitais. Na seção 3, apresenta-se o projeto Biblioteca Digital Brasileira (BDB), apoiado pelo IBICT (Instituto Brasileiro de Informação em Ciência e Tecnologia), bem como outras iniciativas brasileiras de implementação de bibliotecas digi- tais. Na seção 4, apresenta-se o Modelo Open Archives, que surgiu como uma necessidade para prover interoperabilidade entre repositórios digitais, possibilitando o acesso ao acervo de infor- mações neles existentes, de forma integrada por parte dos usuários. Na seção 5, são apresen- tadas algumas ferramentas para implementação de bibliotecas digitais. Na seção 6, apresenta-se a arquitetura Fedora, que é uma ferramenta de código aberto que surge como alternativa para a implementação de repositórios digitais em uma variedade de setores. Na seção 7, apresenta-se a aplicação desenvolvida como protótipo, que manipula alguns serviços fornecidos pela API do Fedora através de chamadas via web services. Finalmente, na Seção 8, são apresentadas as considerações finais. 2 Bibliotecas Digitais As bibliotecas digitais são um conjunto de recursos eletrônicos e capacidades técnicas associadas para criar, buscar e usar informações. Nesse sentido, elas constituem uma extensão dos sistemas de armazenamento e recuperação de informação, que manipulam dados digitais nos mais variados formatos, operando em um ambiente distribuído [40]. A recuperação de informação é uma área da computação que lida com o armazenamento de documentos e a recuperação automática de informação associada a eles. Analisando o ambiente onde as bibliotecas digitais estão inseridas, podemos encontrar várias das seguintes características [13]: • acesso remoto pelo usuário, por meio de um computador conectado a uma rede; • utilização simultânea do mesmo documento por duas ou mais pessoas; • inclusão de produtos e serviços de uma biblioteca ou centro de informação; • existência de coleções de documentos, onde se pode acessar não somente a referência bibliográfica, mas também o seu texto completo; • possibilidade de acesso em rede a outras fontes externas de informação (bibliotecas, museus, bancos de dados, instituições públicas e privadas); • disponibilidade de documento de forma que a biblioteca local não necessite ser proprietária do documento solicitado pelo usuário; • possibilidade de registro e manipulação de diversos tipos de informação tais como texto, som, imagem e vídeo; • existência de unidade de gerenciamento do conhecimento, que inclui sistema inteligente ou especialista para ajudar na recuperação de informação mais relevante. O uso de mecanismos eficientes de busca e a utilização de metadados em bibliotecas digitais têm como objetivo melhorar a relação de documentos relevantes retornados. Os metadados são freqüentemente chamados de dados sobre dados ou informação sobre informação [34]. A principal finalidade dos metadados é documentar e organizar os dados das organizações, de forma estruturada, com o objetivo de minimizar duplicação de esforços e facilitar a manutenção dos dados.
  • Bibliotecas Digitais e o Repositório Fedora 4 3 O projeto Biblioteca Digital Brasileira O tema relativo às bibliotecas digitais é considerado estratégico para a sociedade de infor- mação de um país. O governo brasileiro sensível a esta demanda financiou o projeto Biblioteca Digital Brasileira (BDB). Este projeto é apoiado pelo IBICT (Instituto Brasileiro de Informação em Ciência e Tecnologia), tendo como proposta a integração, em um portal único, dos mais importantes repositórios de informação digital de forma a permitir consultas simultâneas e unificadas aos conteúdos informacionais destes acervos [7]. A proposta da BDB envolve a criação de um sistema cooperativo abrangente, operado integralmente na Internet, que se materializa em dois eixos principais: 1. o estabelecimento de ações e de esquemas de mediação de informação que integrem de forma consistente e padronizada os estoques de documentos digitais, bases de dados e serviços de informações relevantes para o país, permitindo que o usuário da BDB possa consultar simultaneamente, através de interface Web, todos os acervos do seu interesse; 2. a criação de serviços de informação inovadores, que reflitam demandas da sociedade e que possam ser integrados à BDB. O objetivo geral da BDB é contribuir para aumentar o acesso aos documentos eletrônicos que sejam de interesse para o desenvolvimento das atividades técnicas e científicas, assim como para os demais setores importantes para o desenvolvimento econômico e social do país, tais como os setores educacional e produtivo. Com relação às iniciativas brasileiras, apresenta-se outros importantes projetos referentes a implementações de bibliotecas digitais: • Biblioteca Digital de Teses e Dissertações [7]: O Instituto Brasileiro de Informação em Ciência e Tecnologia (IBICT) coordena o projeto da Biblioteca Digital de Teses e Dis- sertações (BDTD), que busca integrar os sistemas de informação de teses e dissertações existentes nas Instituições de Ensino Superior (IES) brasileiras, bem como estimular o registro e a publicação de teses e dissertações em meio eletrônico. A BDTD adota um modelo distribuído utilizando-se das tecnologias de arquivos abertos. As IES são prove- dores de dados e o IBICT opera nessa rede como agregador, coletando metadados de teses e dissertações destes provedores de dados, provendo serviços de informação sobre esses metadados e expondo-os para serem coletados por outros provedores de serviços. • Biblioteca Digital da UNICAMP [8]: A Biblioteca Digital da Universidade Estadual de Campinas, foi oficialmente instituída em 08/11/2001, com o objetido de disponibi- lizar e difundir a produção científica, acadêmica e intelectual da Universidade em for- mato eletrônico/digital de: artigos, fotografias, ilustrações, teses, obras de arte, registros sonoros, revistas, vídeos e outros documentos de interesse ao desenvolvimento científico, tecnológico e sócio-cultural. • Biblioteca Digital do Senado Federal [9]: A BDSF (Biblioteca Digital do Senado Federal) armazena, preserva, divulga e dá acesso à produção intelectual dos servidores do Senado Federal, entre outros documentos de interesse do Poder Legislativo, em for- mato digital.
  • Bibliotecas Digitais e o Repositório Fedora 5 • CRUESP [6]: Em 1999, o CRUESP iniciou suas atividades como grupo de estudos, instituído pela Resolução do Conselho de Reitores das Universidades Estaduais Paulistas 149/99, tendo por objetivo a integração dos Sistemas de Bibliotecas da USP, UNESP e UNICAMP. Hoje o CRUESP é um consórcio que reúne 89 bibliotecas, atendendo cerca de 180.000 usuários inscritos (docentes, alunos e funcionários), além de outros usuários pertencentes à comunidade externa, contando com um acervo de mais de 4.470.000 itens. • Portal Domínio Público [39]: Constitui-se em um ambiente virtual que permite a coleta, a integração, a preservação e o compartilhamento de conhecimentos, sendo seu principal objetivo o de promover o amplo acesso às obras literárias, artísticas e científicas (na forma de textos, sons, imagens e vídeos), já em domínio público ou que tenham a sua divulgação devidamente autorizada, que constituem o patrimônio cultural brasileiro e universal. • Biblio [5]: A Biblio é uma biblioteca virtual de literatura, restrita a autores de língua portuguesa, que permite o acesso a obras em domínio público para leitura imediata. Esta biblioteca virtual disponibiliza obras completas, em português e cujo autor tenha falecido há mais de 70 anos, conforme determina a Lei de Direitos Autorais Brasileira [31]. 4 Modelo Open Archives Um dos problemas mais relevantes em pesquisas nesta área é a interoperabilidade de dados e metadados envolvendo bibliotecas digitais. Neste contexto, o modelo Open Archives surgiu como uma necessidade para permitir interoperabilidade entre repositórios digitais, pos- sibilitando o acesso ao acervo de informações neles existentes, de forma integrada por parte dos usuários [29]. No início da década de 90, o Laboratório Nacional de Los Alamos, nos Estados Unidos, construiu e implantou o repositório digital arXiv. A idéia era experimentar uma alternativa para a comunicação científica, de forma a agilizar a publicação dos resultados das pesquisas e facilitar o seu acesso pela comunidade. Assim, os pesquisadores de qualquer parte do mundo ganharam a oportunidade de depositar os seus resultados de pesquisa, seja na forma de artigos ou na forma de relatórios técnicos em um repositório digital de livre acesso. Em contrapartida, os usuários nessa experiência, têm a possibilidade de comentar os tra- balhos depositados e os seus autores também tem a oportunidade de submeter uma nova versão com base nesses comentários. O sucesso dessa experiência estimulou outras áreas a criarem os seus repositórios. O surgimento de diversos repositórios dificulta ao usuário o acesso integrado ao conjunto de in- formações existente nesses diversos repositórios, dado que ele é obrigado a conhecê-los, tendo que acessar, individualmente, cada um deles, para fazer uma mesma consulta. Em julho de 1999, realizou-se uma reunião exploratória com os responsáveis por esses repositórios para buscar uma solução de interoperabilidade para integrá-los e facilitar aos usuários o acesso ao acervo de informação neles registrados. A reunião foi denominada Con- venção de Santa Fé. Como resultado dessa reunião, foi constituída a Open Archives Initiative (OAI), cuja meta principal foi contribuir para a transformação da comunicação científica. A linha de ação proposta para essa mudança é a definição de aspectos técnicos e de suporte orga- nizacional de uma estrutura de publicação científica aberta [29]. Essa iniciativa estabeleceu as especificações técnicas e os princípios administrativos formalizando o chamado modelo Open Archives, o qual possibilita um alto nível de
  • Bibliotecas Digitais e o Repositório Fedora 6 interoperabilidade funcional entre esses repositórios. Os seguintes componentes fazem parte desse modelo [29]: • mecanismo de submissão; • sistema de armazenamento a longo prazo; • uma política de gestão para a submissão e preservação de documentos; • uma interface aberta que permita a terceiros coletar os metadados dos respectivos ar- quivos. A interface aberta permite que os repositórios exponham os metadados dos documentos neles depositados para serem coletados por outros provedores de forma a fornecer serviços de informação com valor agregado, permitindo a descoberta, apresentação e análise de dados. Para que se possa fazer uma ampla disseminação da informação por terceiros, é essencial que os repositórios sejam dotados dessa interface. Esse modelo pressupõe dois grandes atores, os provedores de dados (data providers) e os provedores de serviços (service providers). Os provedores de dados são os gestores de repositórios, os quais devem ser dotados, no mínimo, das seguintes funcionalidades: • mecanismos de submissão para o auto-arquivamento dos trabalhos ou papers; • sistema de armazenamento a longo prazo; • mecanismos de exposição de metadados do arquivo para facilitar a sua colheita (recu- peração) por terceiros, ou provedores de serviços (OAI-PMH - Open Archives Initiative Protocol for Metadata Harvesting [26]). O modelo Open Archives proporciona alto nível de interoperabilidade, por meio de dois grandes pilares: o padrão de metadados Dublin Core [16] e o protocolo de coleta de metadados, denominado OAI-PMH. O uso desses dois padrões é requisito básico para a implantação desse modelo. O protocolo OAI-PMH é uma interface que um servidor de rede pode utilizar para que os metadados de objetos armazenados nele estejam disponíveis para aplicações externas que desejem coletar esses dados. Essa interface possui duas características: interoperabilidade e extensibilidade. A interoperabilidade decorre da obrigatoriedade embutida no protocolo para implemen- tação do padrão Dublin Core. Assim todos os repositórios que utilizam o protocolo OAI podem trocar metadados. Já a extensibilidade advém da oportunidade de se criar ou utilizar também padrões de metadados diferentes do Dublin Core. Descrições específicas para uma comunidade ou especificidade de metadados para satisfazer necessidades especiais podem ser criadas ou adaptadas de forma a funcionarem com o protocolo OAI [41]. Dublin Core é um padrão de metadados composto de elementos para descrever uma am- pla quantidade de recursos eletrônicos. O padrão Dublin Core compreende quinze elementos semânticos que foram estabelecidos através do consenso de grupos interdisciplinares interna- cionais de bibliotecários, cientistas da computação, comunidade de museus, e outros estudiosos deste campo. Por este motivo, os metadados descritos neste formato não podem ser preenchi- dos por um leigo, pois o preenchimento incorreto ou incompleto destes campos comprometem a qualidade dos metatados da biblioteca digital e consequentemente a recuperação destas infor- mações.
  • Bibliotecas Digitais e o Repositório Fedora 7 Os quinze elementos do padrão Dublin Core são [16]: Title, Creator, Subject, Description, Publisher, Contributor, Date, Type, Format, Identifier, Source, Language, Relation, Coverage e Rights. 5 Ferramentas para implementação de Bibliotecas Digitais A partir do exposto apresentado nas seções anteriores, pode-se constatar que uma biblioteca digital é muito mais do que uma coleção de textos e outros objetos digitalizados. As ferramentas tecnológicas para a construção desses novos modelos de divulgação de infor- mação estão sendo continuamente implementados e colocados à disposição das comunidades de desenvolvedores e usuários. Em sua maioria, as ferramentas para criação de bibliotecas digitais são software livres, com código aberto, geralmente desenvolvidos por universidades e disponibilizados gratuita- mente, sendo alternativa para que qualquer organização implemente seu acervo digital [44]. Dessa forma, estas ferramentas podem ser livremente instaladas, testadas, usadas e per- sonalizados pelos interessados neste tipo de aplicação. De alguma forma, estas ferramentas procuram cobrir as diferentes necessidades dos usuários [40]. No restante desta seção, são apresentados alguns desses programas analisados pelo Open Society Institute [35]. • Archimèd [1]: O Archimèd foi desenvolvido pela Laval University Library na cidade de Quebec no Canadá. O projeto desta ferramenta foi modelado para permitir o depósito de pre-prints (primeira versão de um documento publicado) e post-prints (versão final de um documento após revisões do autor) de universidades e pesquisadores. • ARNO [2]: O projeto ARNO (Academic Research in the Netherlands Online), foi de- senvolvido para dar suporte a implementação de repositórios institucionais e integrar repositórios distribuídos por todo o mundo. Entre os participantes do projeto estão a University of Amsterdam, Tilburg University e a University of Twente. • CDSware [11]: O CDSware (CERN Document Server Software), foi desenvolvido e está sendo mantido disponível publicamente pelo CERN (European Organization for Nuclear Research). O CERN utiliza o CDSware para gerenciar cerca de 350 coleções de dados, englobando cerca de 550.000 registros bibliográficos e 220.000 documentos completos, incluindo pre-prints, jornais, artigos, livros e fotografias. • DSpace [15]: O DSpace é um software livre desenvolvido pelo MIT (Massachusetts Institute of Technology) e pelos Laboratórios Hewlett-Packard para criação de repositórios institucionais e multidisciplinares para bibliotecas, arquivos e centros de pesquisa. Sua estrutura oferece um modelo de informação organizacional baseado em comunidades e coleções, o qual pode ser configurado de modo a refletir todo o conjunto de unidades administrativas de uma instituição. Permite os mais variados tipos de formatos de arquivos digitais, incluindo textos, som e imagem. • EPrints [17]: O EPrints foi desenvolvido pela University of Southampton, tendo se mostrado apropriado para a construção de repositórios institucionais. É uma ferramenta aberta, relativamente fácil de instalar e adaptável às necessidades de qualquer instituição de ensino e pesquisa.
  • Bibliotecas Digitais e o Repositório Fedora 8 • Fedora [24]: O Fedora (Flexible Extensible Digital Object and Repository Architecture) é uma plataforma de código aberto, desenvolvido pela University of Virginia e pela Cornell University, que oferece uma arquitetura projetada para servir como base para a imple- mentação de repositórios digitais para uma grande variedade de aplicações, tais como bibliotecas digitais, repositórios institucionais e outros sistemas gerenciadores de infor- mação. O núcleo central do Fedora é o repositório de serviços, que pode ser acessado utilizando interfaces via web service, que permite a criação, gerenciamento, armazenamento, acesso e o reuso dos objetos digitais. Todas as funções do Fedora, tanto no nível de administração do repositório como no nível do acesso aos objetos digitais são disponibilizados por este repositório de serviços. Em 2005, foi integrado o primeiro estágio para a tecnologia da Web Semântica no repositório de serviços do Fedora, introduzindo suporte para descrições RDF (Re- source Description Framework) de objetos digitais, relacionamentos RDF e indexação do repositório baseada em grafos. Com esta implementação, os objetos do repositório po- dem ser tratados como nós de um grafo, permitindo que se façam consultas neste grafo. O impacto desta adaptação foi significativo, uma vez que posiciona o Fedora como o único sistema de código aberto que combina “redes de informações” semânticas do conteúdo com suporte a persistência e gestão do conteúdo digital. • i-Tor [28]: O i-Tor (Tools and technologies for Open Repositories) foi desenvolvido pelo ITA (Innovative Technology Applied), uma seção do Instituto para Serviços de Informação Científica da Holanda. Através de uma interface Web, esta ferramenta permite que seus usuários apresentem vários tipos de informação, independente do local onde os dados são armazenados ou o formato em que são apresentados. • MyCoRe [33]: O MyCoRe é um software de código aberto, utilizado para que instituições possam construir seus próprios repositórios digitais. O MyCoRe atualmente está sendo desenvolvido por um consórcio de universidades para oferecer uma forte ferra- menta para dar suporte a bibliotecas digitais ou repositórios de conteúdo (Content Repos- itories, daí o nome “CoRe”). O software foi projetado para ser configurado e adaptado às exigências locais de cada instituição (daí o nome “My”), sem a necessidade de esforços de programação. • OPUS [36]: O OPUS (Online Publications of the University of Stuttgart) foi desen- volvido pela University Library e o Computing Center of the University of Stuttgart. O objetivo do projeto original foi oferecer um sistema onde estudantes e universidades pudessem gerenciar suas publicações eletrônicas, incluindo a publicação de artigos e dis- sertações. Na próxima seção, apresenta-se mais detalhadamente a arquitetura Fedora, que tornou- se uma das ferramentas mais poderosas e versáteis do seguimento de software livre para a implementação de repositórios digitais. O Fedora têm sido adotado por centenas de instituições, como base para a implemen- tação das mais variadas aplicações inovadoras. Isto deve-se ao fato de que o Fedora propor- cionar a manipulação de conteúdos multimídia, como gráficos, fotografias, arquivos de áudio e vídeo, além de possibilitar maior interoperabilidade em ambiente distribuído, devido a disponi- bilização de suas funcionalidades por interfaces via web services e dar suporte ao protocolo OAI-PMH.
  • Bibliotecas Digitais e o Repositório Fedora 9 6 A arquitetura Fedora O Fedora (Flexible Extensible Digital Object Repository Architecture) é uma arquitetura de código aberto que surgiu como alternativa para a implementação de repositórios de objetos digitais em uma variedade de setores, incluindo bibliotecas digitais, repositórios institucionais, tecnologias para educação, publicação de conteúdo e distribuições de informações na Web. O desenvolvimento do Fedora iniciou-se em 1997, na Cornell University, como um pro- jeto de pesquisa da NSF (National Science Foundation) e DARPA (Defense Advanced Research Projects Agency) [22], tendo como resultado o protótipo inicial do software, desenvolvido por Sandy Payette e Carl Lagoze. Payette criou uma implementação de referência para o sistema demonstrando sua arquitetura, tornando publicamente disponível no sítio da Cornell Univer- sity em 1998. Payette e Lagoze também publicaram importantes artigos sobre seus trabalhos daquela época [37] [38]. Em 2000, Thornton Staples e Rosser Wayland, da University of Virginia Library, publicaram um artigo sobre seus trabalhos na criação de uma implementação do Fedora [43]. O Fedora Commons é uma organização sem fins lucrativos fundada pela Cornell Univer- sity e pela University of Virginia em 2007. O Fedora Commons mantém a custódia da arquitetura do Fedora e guia seu desenvolvimento evolutivo [24]. O repositório Fedora é um software de código aberto licenciado sob a Mozilla Public License [32]. Na Figura 1 apresenta-se o repositório Fedora na sua principal característica arquitetural, como um framework de serviços de repositório de objetos digitais expansível. Esta funcionalidade esta disponível a partir da versão 2.1 do Fedora. Figura 1: Arquitetura do framework de serviços Fedora [20] Analisando a Figura 1, é possível verificar sua arquitetura voltada a construção de no-
  • Bibliotecas Digitais e o Repositório Fedora 10 vas funcionalidades ou serviços em torno do serviço de repositório de objetos digitais (Fedora Repository Service). Os serviços Fedora (Fedora Services) possuem funcionalidades que são divididas em nove serviços básicos, que já foram implementados e executam na interface web do próprio Fedora usando as quatro interfaces de aplicação do framework. A arquitetura é expansível de forma modular com serviços web externos via ORE (Ob- ject Reuse and Exchange) que é uma interface criada para facilitar a interoperabilidade entre serviços externos e os serviços do próprio Fedora. Além do ORE, é possível incorporar funcionalidades não essenciais a um repositório de objetos digitais diretamente em cada um dos outros oito tipos de serviços Fedora. A Figura 1 exemplifica esta possibilidade usando dois destes serviços. O primeiro caso é uma extensão do fluxo de trabalho (workflow) que é acrescentado a hierarquia de diretórios ou arquivos do repositório Fedora usando o serviço apropriado para este propósito (Directory Ingest Service). O segundo caso exemplifica uma extensão nos serviços de preservação da integridade de objetos digitais (Preservation Integrity) de duas maneiras distintas de serviços externos: • validação de objetos (principalmente de imagens) via JHOVE (JSTOR/Harvard Object Validation Environment); • identificação de formatos de objetos digitais mais precisos e rigorosos via extensão do GDFR (Global Digital Format Registry), cuja principal funcionalidade é definir registros das informações sobre da sintaxe e semântica dos diversos formatos de objetos digitais existentes no repositório. 6.1 O Modelo de Objeto do Fedora Um objeto do repositório Fedora é composto por seu conteúdo (dados e metadados) e um conjunto de comportamento ou serviços associados que podem ser aplicados ao objeto. Conforme pode ser observado na Figura 2, um objeto digital do Fedora consiste em quatro partes, que são apresentadas a seguir. 1. Identificador do objeto digital: Consiste em um identificador único persistente para o objeto digital. 2. Perspectiva Descritiva: Consiste nos principais metadados necessários para o gerenciamento, recuperação e relacionamento com outros objetos. A arquitetura do repositório Fedora impõe o uso do metadado FOXML (Fedora Object XML), que é diferente dos outros metadados que são tratados como conteúdo. As propriedades dos objetos armazemam informações sobre os mesmos, como por exemplo as datas de criação e modificação. Os metadados de relacionamento descrevem quaisquer relações entre objetos digitais no repositório Fedora. 3. Perspectiva do Item: Representa o conteúdo que é a essência do objeto digital (conteúdo textual, imagens, áudio, vídeo, entre outros). 4. Perspectiva de Serviço: Consiste no mecanismo de associação de comportamentos ou serviços, permitindo a definição de representações virtuais dos objetos digitais do Fedora. Todos os objetos do Fedora possuem um disseminator (Seção 6.4) padrão adicionado no momento da sua criação, para que ele possa ser imediatamente recuperado do repositório. Um objeto do Fedora pode possuir diversos disseminators personalizados.
  • Bibliotecas Digitais e o Repositório Fedora 11 Figura 2: Arquitetura dos objetos digitais do Fedora 6.2 Visão dos Objetos do Fedora Um objeto digital do Fedora pode possuir uma ou mais representações e relacionar-se com um ou mais objetos. Um exemplo típico de um objeto digital com múltiplas representações é uma imagem que pode estar disponível em múltiplos formatos. Todos os objetos digitais e cada representação são identificados por meio de um URI (Uniform Resource Identifiers). Esta perspectiva expõe somente o acesso ao conteúdo do repositório, ocultando toda com- plexidade interna de gerência e armazenamento. A Figura 3 descreve a visão representativa de três inter-relacionamentos de objetos do Fedora. Ela apresenta um grafo direcionado, onde os nós grandes são objetos digitais e os nós pequenos são representações dos objetos digitais. Estes nós estão ligados por dois tipos de arcos: de relacionamentos que conectam os objetos digitais e de representação que conectam os objetos digitais para suas respectivas visões. Cada objeto digital no diagrama, possui pelo menos uma representação relativa ao seu objeto digital original, pelo arco “hasRep”. Por exemplo, o nó chamado info:fedora/demo:11 é uma imagem com quatro representações, identificadas pelas respectivas URIs: 1. Metadados Dublin Core, identificado como info:fedora/demo:11/DC 2. Imagem em alta resolução, identificado como info:fedora/demo:11/HIGH 3. Miniatura da imagem, identificado como info:fedora/demo:11/THUMB 4. Imagem ampliada, identificado como info:fedora/demo:11/bdef:2/ZPAN Ainda analisando a Figura 3, observa-se um exemplo de relacionamentos entre obje- tos. Neste exemplo, o nó chamado info:fedora/demo:10 é uma coleção com dois itens (info:fedora/demo:11 e info:fedora/demo:12). Estes relacionamentos são representados pelo arco “hasMember” que dá origem a coleções de objetos. O relacionamento inverso “isMemberOf” não é mostrado no diagrama por motivos de simplificação.
  • Bibliotecas Digitais e o Repositório Fedora 12 Figura 3: Representação de um objeto do Fedora 6.3 Datastreams O modelo de objetos do Fedora define um componente conhecido como datastream, para representar o conteúdo do objeto. Um componente datastream pode encapsular seu conteúdo em um fluxo de bytes dentro do próprio objeto ou apenas armazenar uma referência para um conteúdo externo. Em todos os casos, seu conteúdo poder ser de qualquer tipo. Um datastreams pode referenciar qualquer tipo de conteúdo, estando armazenado localmente ou remotamente no repositório. Na Figura 4, apresenta-se um objeto digital como uma agregação de datastreams. Cada datastream possui uma representação do objeto digital que pode ser acessada. Neste caso, cada representação é uma transcrição simples de seu conteúdo que está atrás do componente datas- tream. Conforme pode ser observado na Figura 4, cada objeto digital possui um identificador único (PID) e um conjunto de propriedades descritivas. Cada datastream contém algumas infor- mações que são necessárias para o gerenciamento do objeto no repositório Fedora, armazenadas como propriedades, conforme apresentado na Figura 5. Em um datastream, três propriedades merecem atenção especial: Format URI, Control Group e Content Location. O Format URI faz um refinamento da definição do tipo de mídia e se prepara para o surgimento do registro global de formato digital, tal como o GDFR (Global Digital Format Registry). No exemplo da Figura 5, o valor desta propriedade ainda não foi determinado (TBD – To Be Determined). A propriedade Control Group define se o datastream representa um conteúdo local ou re- moto. Se a propriedade Control Group de um datastream possuir o valor “Managed”, significa que ele representa um conteúdo interno que está diretamente sob o controle do repositório Fe- dora. Por outro lado, se sua propriedade Control Group possuir o valor “External” ou “Redi- rected”, significa que seu conteúdo está armazenado em outro repositório.
  • Bibliotecas Digitais e o Repositório Fedora 13 Figura 4: Um objeto do Fedora com um PID, propriedades e datastreams A propriedade Content Location, é um URL que faz um referência para um serviço apon- tado fora do repositório responsável por fornecer o conteúdo. A capacidade de criar um objeto digital que engloba um conteúdo local com um conteúdo externo é uma importante caracterís- tica do Fedora, sendo útil em uma variedade de contextos. Um bom exemplo de um objeto híbrido (tanto local quanto remoto) é um objeto para o contexto educacional, onde o conteúdo local se refere aos planos de aula dos professores, anotações e provas. O conteúdo remoto são recursos compostos por referências de outros sítios. Figura 5: Propriedades de um datastreams 6.4 Disseminators O modelo de objetos do Fedora permite a definição de representações virtuais de um objeto digital. Um disseminator é o componente do objeto digital do Fedora utilizado para associar serviços aos objetos digitais. Uma representação virtual, também conhecida como dissemination, é uma visão do objeto que é produzida por uma operação de serviço (isto é, a invocação de um método) que pode receber como entrada um ou mais datastreams do respectivo objeto digital. Dessa forma, um disseminator permite a entrega de um conteúdo dinâmico ou computável de um objeto do Fedora. Este comportamento é ilustrado na Figura 6, onde a representação chamada info:fedora/demo:11/BDEF:2/ZPAN está apresentada em destaque. Da perspectiva de acesso, esta representação é uma imagem manipulada por uma aplicação Java, que fornece a
  • Bibliotecas Digitais e o Repositório Fedora 14 imagem ampliada. Observe que esta representação não está diretamente presente em qualquer datastream do objeto. Ao invés disso, ela é o resultado de uma operação de serviço definida pelo componente disseminator chamado “BDEF:2”, dentro do objeto que usa o datastream chamado “HIGH” como entrada. Figura 6: Um objeto do Fedora com disseminators Para possibilitar este comportamento, um disseminator deve conter três partes: 1. uma referência para a descrição da operação do serviço; 2. uma referência para descrição do serviço WSDL (Web Services Description Language), que define a ligação para o serviço Web que vai executar a operação; 3. o identificador de qualquer datastream no objeto, que pode ser utilizado como entrada para a operação do serviço. O Fedora armazena descrições de operações de serviço e descrições de serviços WSDL com um objeto digital especial, chamados respectivamente de BDefs (behavior definitions) e BMechs (behavior mechanisms). Os disseminators constituem uma característica muito importante do modelo de objeto digital do Fedora. Eles podem ser utilizados para criar uma representação comum para objetos digitais que possuem diferentes estruturas ou formatos. Por exemplo, um repositório digital pode conter documentos escolares em uma variedade de formatos (TXT, HTML, TeX, entre outros), que são armazenados como datastreams dentro de diversos objetos digitais do Fedora. Para propósitos de interoperabilidade, pode-se definir uma representação virtual comum (por exemplo, em formato PDF) para cada um destes objetos através da utilização de disseminators que possibilitam esta tarefa. 6.5 Gerenciando a Integridade dos Objetos do Fedora O modelo de objeto digital do Fedora define alguns datastreams especiais, para permitir a administração da integridade dos objetos. A Figura 7 apresenta estes datastreams, denominados relations, policy e audit trail.
  • Bibliotecas Digitais e o Repositório Fedora 15 Figura 7: Datastreams de Integridade: relationships, policy e audit trail O datastream relations descreve os relacionamentos entre objetos. O relacionamento “hasMember” é um exemplo de um tipo de declaração que é gerenciado através do datastrem relations. O datastream policy é utilizado para definir políticas de autorização para os objetos digi- tais, tanto no sentido de proteger a integridade do objeto quanto no sentido de controlar o acesso ao conteúdo do objeto. No Fedora, estas políticas são definidas utilizando a linguagem XACML (eXtensible Access Control Markup Language) [18]. O datastream audit trail mantém o registro de todas as mudanças de um objeto durante todo seu ciclo de vida. O Fedora automaticamente cria um registro auditável para todas as operações relativas aos objetos, detalhando quem, o que, quando, onde e o porquê das mudanças no objeto. Outra característica para gerenciar o ciclo de vida dos objetos é o controle de versão. O controle de versão é importante em aplicações onde é necessária a mudança do conteúdo dos objetos e deseja-se manter arquivado o registro histórico da visão de cada versão do objeto digital. O Fedora cria automaticamente uma nova versão para um objeto toda vez que ele é modificado. Este comportamento é apresentado na Figura 7, que apresenta um objeto digital com múltiplas versões do datastream chamado “HIGH”. O disseminator chamado “BDEF:2” tam- bém pode receber como entrada os antigos datastreams de “HIGH”, que não representam a versão atual. O Fedora garante que a versão desejada do objeto seja retornada, tanto no que diz respeito a requisições que são realizadas diretamente ao conteúdo do datastream, quanto a requisições para representações virtuais onde o conteúdo do datastream passa por um dissemi- nator. 6.6 Relacionamento entre Objetos do Fedora Cada objeto digital do Fedora armazena seus relacionamentos em um datastream especial no objeto digital, como declarações RDF, utilizando sintaxe XML [27]. Estes relacionamentos podem ser derivados de qualquer ontologia, incluindo a base ontológica fornecida pelo Fedora [19]. A seguir, o Código 1 apresenta um trecho desta base ontológica [21].
  • Bibliotecas Digitais e o Repositório Fedora 16 Código 1 – Trecho da base ontológica fornecida pelo Fedora 1 <?xml version="1.0" encoding="UTF-8"?> 2 <rdf:RDF base="info:fedora/fedora-system:def/relations-external#" 3 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 4 xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#"> 5 6 <rdf:Property rdf:ID="fedoraRelationship"> 7 <rdfs:comment> 8 The primitive property for all object-to-object 9 relationships in the fedora ontology 10 </rdfs:comment> 11 </rdf:Property> 12 13 <rdf:Property rdf:ID="isPartOf"> 14 <rdfs:label xml:lang="en-US">Is Part Of</rdfs:label> 15 <rdfs:comment xml:lang="en-US"> 16 A definition of the generic part/whole relationship 17 between fedora objects. The subject is a fedora object 18 representing a part and the predicate is a fedora 19 object representing a whole. 20 </rdfs:comment> 21 . 22 . 23 . Para descrever relacionamentos entre objetos, o Fedora disponibiliza um datastream conhecido como Relations. Este datastream permite a utilização de um subconjunto da lin- guagem RDF/XML, em que o sujeito de cada declaração deve ser o objeto digital no qual o datastream é definido. O Código 2 apresenta um exemplo do datastream Relations de um objeto digital do Fe- dora, identificado pelo URI info:fedora/demo:11. A declaração RDF/XML expressa as seguintes relações: • demo:11 é um membro de uma coleção representada pelo objeto demo:10 • demo:11 está no padrão descrito pelo objeto demo:Standard5 • demo:11 é uma manifestação de uma expressão representada pelo objeto demo:Expression2
  • Bibliotecas Digitais e o Repositório Fedora 17 Código 2 – Exemplo de um datastream Relations 1 <rdf:RDF xmlns:rdf ="http://www.w3.org/1999/02/22-rdf-syntax-ns#" 2 xmlns:nsdl="http://nsdl.org/std#" 3 xmlns:rel="http://example.org/rel#" 4 xmlns:frbr="http://example.org/frbr#"> 5 <rdf:Description 6 rdf:about="info:fedora/demo:11"> 7 <rel:isMemberOf 8 rdf:resource="info:fedora/demo:10"/> 9 <std:fulfillsStandard 10 rdf:resource="info:fedora/demo:Standard5"/> 11 <frbr:isManifestionOf 12 rdf:resource="info:fedora/demo:Expression2"/> 13 </rdf:Description> 14 </rdf:RDF> O Resource Index é um grafo de relacionamentos, que abrange todos os objetos digitais do repositório que são derivados por relacionamentos implícitos pelo próprio modelo de objeto digital do Fedora e relacionamentos explícitos indicados no datastream Relations do objeto. Em outras palavras, o Resource Index combina todos os relacionamentos dos objetos digitais do repositório em um único grafo. A interface de consulta para o grafo de relacionamentos atualmente permite três lin- guagem de consulta RDF [30]: RDQL (RDF Data Query Language), iTQL (Interactive Tucana Query Language) e SPO (Subject, Predicate, Object). O Código 3 apresenta uma consulta que lista todas as representações de todos os objetos que são membros de uma coleção particular. Código 3 – Exemplo de uma consulta RDF utilizando iTQL 1 select $dissemination 2 from <#ri> 3 where ($object <fedora-view:disseminates> $dissemination) 4 and $object <rel:isMemberOf> <demo:10> O Resource Index é disponibilizado como uma das intefaces do repositório de serviços do Fedora. Um exemplo de um serviço utilizando o Resouce Index é o provedor de serviços OAI (Open Archives Initiative) que expõe metadados sobre recursos do repositório Fedora. Por exemplo, o provedor de serviços OAI pode lançar uma consulta no Resouce Index, que retorna o resultado da consulta, provendo uma resposta OAI. 6.7 Acessando o Fedora O Fedora fornece uma interface administrativa, desenvolvida em Java, para o gerencia- mento dos objetos digitais no repositório. A Figura 8 apresenta a janela referente ao gerencia- mento dos datastreams dos objetos (neste caso, o objeto é identificado pelo PID demo:29).
  • Bibliotecas Digitais e o Repositório Fedora 18 Figura 8: Interface administrativa fornecida pelo Fedora O Fedora também fornece uma interface Web para pesquisa no repositório de objetos, apresentada na Figura 9. Todas as consultas, nesta interface Web, são case insensitive (não importa o fato das letras serem maiúsculas ou minúsculas) e permitem a aplicação de curingas (símbolos que podem ser utilizados em uma busca para representar um ou mais caracteres), utilizando os símbolos “*” e “?”. A busca simples, permite consultas por palavras ou frases em todos os campos do objeto digital. Exemplos: 1. *o* – Retorna objetos onde qualquer campo possui a letra “o”. 2. ?edora – Retorna objetos onde qualquer campo possui uma palavra iniciada com qualquer letra e termina com a palavra “edora”.
  • Bibliotecas Digitais e o Repositório Fedora 19 Figura 9: Interface Web para pesquisa fornecida pelo Fedora A busca avançada, permite a combinação de uma ou mais condições separadas por es- paços. Todos os objetos que satisfizerem todas as condições serão retornados. Uma condição é composta por um campo do objeto digital, seguido por qualquer operador e um valor. Exemplos: 1. fType=O – Retorna todos os objetos do tipo Fedora Data Object. 2. pid demo:* description fedora – Retorna todos os objetos de demonstração, onde o campo descrição contêm a palavra fedora. 3. cDate>=1976-03-04 creator *n* – Retorna todos os objetos criados a partir do dia 04 de março de 1976, onde pelo menos um de seus criadores possui a letra “n” em seu nome. Esta interface Web permite ao usuário do Fedora buscar objetos, obter a visão do perfil deste objeto (identificador, data da criação, proprietário, entre outros), listar e acessar direta- mente todos seus disseminators, listar e visualizar todos os seus datastreams e obter o registro Dublin Core do objeto. Como exemplo, apresenta-se a interface da Figura 10, que permite listar e acessar todos os disseminators do objeto. Neste caso, o objeto é identicado pelo PID demo:29 e possui o formato image/jpeg.
  • Bibliotecas Digitais e o Repositório Fedora 20 Figura 10: Lista de todos os disseminators do objeto identificado pelo PID demo:29 6.8 Intefaces de Sistema do Fedora Todas as funcionalidades do Fedora, tanto no nível de administração do repositório como no nível do acesso aos objetos digitais, são disponibilizadas pelo repositório de serviços (núcleo central do Fedora), que pode ser acessado utilizando interfaces disponibilizadas por meio de web services. Web service é uma solução utilizada na integração de sistemas e na comunicação entre aplicações diferentes [10]. Com esta tecnologia é possível que novas aplicações possam intera- gir com aquelas que já existem e que sistemas desenvolvidos em plataformas diferentes sejam compatíveis. Um web service permite que um aplicação envie e receba dados no formato XML. Cada aplicação pode ter sua própria linguagem, que é traduzida para uma linguagem universal, o formato XML [27]. XML é um conjunto de regras para a definição de marcadores semânticos, que dividem um documento em partes identificáveis. É uma meta-linguagem que define uma sintaxe para ser utilizada na criação de outras linguagens de marcação para um domínio específico, com estru- tura e semântica próprias. A linguagem XML é classificada como uma linguagem extensível, pois permite aos usuários definirem suas próprias etiquetas (tags), desde que elas estejam bem formatadas, ou seja, estejam de acordo com as regras de sintaxe definidas [27]. A manipulação do repositório Fedora é defina por um conjunto de APIs (Application Programming Interface), que são apresentadas a seguir [23]:
  • Bibliotecas Digitais e o Repositório Fedora 21 • API-M – Define a interface administrativa do repositório, incluindo operações necessárias para criar e gerenciar objetos digitais e seus componentes. A API-M é imple- mentada pelo protocolo SOAP (Simple Object Access Protocol). • API-M-Lite – Esta interface ainda está em desenvolvimento. A intenção é disponibilizar uma versão mais leve para a interface administrativa do Fedora, implementada pelo pro- tocolo REST (Representational State Transfer). Este protocolo permite a invocação de web services através de um simples URL (Uniform Resource Locator). • API-A – Define a interface para acesso dos objetos digitais armazenados no repositório. Este interface inclui operações necessárias para disponibilizar o acesso e descobrir infor- mações sobre os objetos do repositório. A API-A é implementada pelo protocolo SOAP. • API-A-Lite – Define uma versão mais leve para a interface de acesso dos objetos digitais, implementada pelo protocolo REST. 7 Um protótipo simples de demonstração do Fedora Esta seção apresenta o desenvolvimento de um protótipo, cujo propósito é demonstrar através de meios práticos, a manipulação de alguns serviços fornecidos pela API do Fedora através de chamadas via web services. O protótipo foi desenvolvido em linguagem PHP (um acrônimo recursivo para “PHP: Hy- pertext Preprocessor”) e AJAX (Asynchronous Javascript And XML). PHP é uma linguagem de programação de código aberto, bastante utilizada no ambiente Web. AJAX é um modelo de pro- gramação que faz uso sistemático de tecnologias oferecidas por navegadores, como JavaScript e XML, para tornar as páginas mais interativas com os usuários, utilizando-se de solicitações assíncronas de informações. O uso de web service), como é feito no protótipo desenvolvido, é possível uma vez que o Fedora disponibiliza a maioria de suas funcionalidades por meio de web services. Como já men- cionado neste relatório, esta tecnologia permite que aplicações desenvolvidas em plataformas diferentes possam interagir entre si, permitindo o envio e o recebimento de dados no formato XML. O protótipo desenvolvido fornece uma interface de busca simples para os objetos no repositório do Fedora, a qual pode ser vista na Figura 11. Ao fornecer os termos de uma busca, o protótipo faz uma chamada de serviço ao repositório Fedora, que faz a consulta nos objetos do repositório e retorna um arquivo XML como resposta para o protótipo. A consulta retorna todos os objetos que possuem os termos fornecidos em qualquer campo dos objetos digitais. Ao receber o arquivo XML de resposta, o protótipo apresenta o resultado da consulta para o usuário, conforme apresentado na Figura 12. O protótipo apresenta uma mensagem informando que nenhum resultado foi retornado caso o arquivo XML de resposta não possua informações sobre nenhum objeto.
  • Bibliotecas Digitais e o Repositório Fedora 22 Figura 11: Interface de busca do protótipo Figura 12: Listando o resultado de uma consulta
  • Bibliotecas Digitais e o Repositório Fedora 23 Ao clicar sobre um resultado, uma nova chamada de serviço é realizada no repositório Fedora, para buscar algumas informações básicas sobre o objeto (modelo do conteúdo, tipo, data de criação, data da última modificação e proprietário do objeto) e os links que fornecem informações sobre as ações e itens do objeto (estes links apontam para a interface web padrão fornecida pelo Fedora), conforme apresentado na Figura 13. Figura 13: Listando informações adicionais do objeto identificado pelo PID demo:6 Estas chamadas de serviços utilizaram os mecanismos fornecidos pela API-A-Lite do Fedora. O Código 4 apresenta, de forma simplificada, um trecho de código similar ao que é
  • Bibliotecas Digitais e o Repositório Fedora 24 executado para a chamada de serviço da Figura 12, que lista os resultados de um consulta. Código 4 – Buscando uma lista de objetos no repositório do Fedora 1 <pre> 2 3 <?php 4 $query = "http://localhost:8080/fedora/search?"; 5 $query .= "terms=University&pid=true&title=true&"; 6 $query .= "maxResults=10&xml=true"; 7 8 $xml = simplexml_load_file($query); 9 10 foreach ($xml->resultList->objectFields as $dados) { 11 echo $dados->pid . " - " . $dados->title . "<br>"; 12 } 13 ?> 14 15 </pre> Analisando o Código 4, observa-se que a consulta é montada na variável $query e em seguida a função simplexml_load_file faz a requisição ao repositório Fedora. A função simplexml_load_file converte o arquivo XML de retorno em um objeto da classe simplexml_element do PHP. A estrutura de repetição, implementada pelo laço foreach, imprime no browser todos os registros retornados pela consulta. O arquivo XML de retorno desta requisição é apresentado no Código 5.
  • Bibliotecas Digitais e o Repositório Fedora 25 Código 5 – Arquivo XML de retorno relativo a consulta do Código 4 1 <?xml version="1.0" encoding="UTF-8"?> 2 <result xmlns="http://www.fedora.info/definitions/1/0/types/"> 3 <resultList> 4 <objectFields> 5 <pid>demo:29</pid> 6 <title> 7 Coliseum in Rome 8 </title> 9 </objectFields> 10 <objectFields> 11 <pid>demo:30</pid> 12 <title> 13 Architectural Image of Drawing of Pavilion III, 14 University of Virginia 15 </title> 16 </objectFields> 17 <objectFields> 18 <pid>demo:6</pid> 19 <title> 20 Pavilion III, University of Virginia 21 </title> 22 </objectFields> 23 <objectFields> 24 <pid>demo:7</pid> 25 <title> 26 Architectural Image of Pavilion III, University 27 of Virginia 28 </title> 29 </objectFields> 30 <objectFields> 31 <pid>demo:10</pid> 32 <title> 33 Column Detail, Pavilion III, University of Virginia 34 </title> 35 </objectFields> 36 <objectFields> 37 <pid>demo:11</pid> 38 <title> 39 Exhibit Intro: Architectural drawings, Pavilion III, 40 University of Virginia 41 </title> 42 </objectFields> 43 </resultList> 44 </result> O Código 6 apresenta, de forma simplificada, um trecho de código similar ao que é execu- tado na chamada de serviço da Figura 13, que lista as informações adicionais de um determinado objeto.
  • Bibliotecas Digitais e o Repositório Fedora 26 Código 6 – Buscando um determinado objeto no repositório do Fedora 1 <pre> 2 3 <?php 4 $query = "http://localhost:8080/fedora/get/demo:6?xml=true"; 5 6 $xml = simplexml_load_file($query); 7 8 echo $xml->objContentModel . "<br>"; 9 echo $xml->objType . "<br>"; 10 echo $xml->objCreateDate . "<br>"; 11 echo $xml->objLastModDate . "<br>"; 12 echo $xml->objOwnerId . "<br>"; 13 echo $xml->objDissIndexViewURL . "<br>"; 14 echo $xml->objItemIndexViewURL . "<br>"; 15 ?> 16 17 </pre> Analisando o Código 6, observa-se que a consulta é montada na variável $query. Em seguida, a função simplexml_load_file faz a requisição ao repositório Fedora. O arquivo XML de retorno contêm os campos (objContentModel, objType, objCreateDate, objLastModDate, objOwnerId, objDissIndexViewURL e objItemIndexViewURL) com infor- mações relativas ao objeto identificado pelo PID demo:6. Na seqüência do código, estes campos são impressos no browser. O arquivo XML de retorno desta requisição é apresentado no Código 7. Código 7 – Arquivo XML de retorno relativo a consulta do Código 6 1 <objectProfile xsi:schemaLocation="http://www.fedora.info/ 2 definitions/1/0/access/ http://localhost:8080/ 3 objectProfile.xsd"pid="demo:6"> 4 <objLabel> 5 Pavillion III, IVA Image Collection - University of Virginia 6 </objLabel> 7 <objOwnerId>fedoraAdmin</objOwnerId> 8 <objContentModel>UVA_MRSID_IMAGE</objContentModel> 9 <objCreateDate>2008-04-27T13:47:10.479Z</objCreateDate> 10 <objLastModDate>2008-04-27T13:47:10.479Z</objLastModDate> 11 <objType>Fedora Data Object</objType> 12 <objDissIndexViewURL> 13 http://localhost:8080/fedora/get/demo:6/ 14 fedora-system:3/viewMethodIndex 15 </objDissIndexViewURL> 16 <objItemIndexViewURL> 17 http://localhost:8080/fedora/get/demo:6/ 18 fedora-system:3/viewItemIndex 19 </objItemIndexViewURL> 20 </objectProfile>
  • Bibliotecas Digitais e o Repositório Fedora 27 8 Considerações Finais As bibliotecas digitais tem se constituído como um importante instrumento para a disponi- bilização de informações, permitindo o acesso ao conhecimento de qualquer lugar onde exista um computador conectado à Internet. A disseminação de conteúdo de maneira eficiente entre repositórios digitais foi facilitado à partir do surgimento da Open Archives Initiative, que desenvolve e promove padrões de in- teroperabilidade entre repositórios digitais. Assim, ela criou o protocolo OAI-PMH, um meio simples de se compartilhar metadados entre servidores distribuídos. Atualmente, existem diversas ferramentas para a implementação de bibliotecas digitais, que estão sendo continuamente desenvolvidas e disponibilizadas para a comunidade. Em sua maioria, estas ferramentas são software livres, com código aberto, permitindo sua implemen- tação a um baixo custo, além de possibilitar que as mais diversas organizações realizem testes e modificações de forma integral, em um ambiente colaborativo. O Fedora constitui-se como uma importante alternativa para implementação de repositórios digitais, tais como bibliotecas digitais, repositórios institucionais e outros sistemas gerenciadores de informação. Uma importante característica do Fedora é a disponibilização de suas funcionalidades através de interfaces via web services, definidas por um conjunto de APIs. Este recurso permite o acesso completo ao repositório, por aplicações distintas e de forma bas- tante simplificada, conforme protótipo apresentado. Finalmente, observa-se o poderoso modelo de objetos digitais fornecido pela solução Fe- dora, capaz de expressar uma variedade de conteúdos complexos e seus relacionamentos, pro- movendo um grande avanço para a interoperabilidade semântica. 9 Agradecimento Ao Prof. Dr. João Carlos da Silva, pela avaliação do presente texto e pelas sugestões feitas, as quais muito contribuíram para a melhoria do texto original. Referências [1] Archimèd. Disponível em http://archimede.bibl.ulaval.ca, acessado em maio de 2008. [2] ARNO. Disponível em http://www.uba.uva.nl/arno, acessado em maio de 2008. [3] BAX, Marcello. A hora e a vez das Bibliotecas Digitais. Disponível em http://www. ufmg.br/boletim/bol1323/segunda.shtml, acessado em maio de 2008. [4] BEZERRA, Liv Cunha Borges. Implantação de Bibliotecas Digitais Baseados em Software Livre em Ambientes Acadêmicos. Projeto de Conclusão de Curso. Instituto de Informática, Universidade Federal de Goiás. Goiânia, 2007. [5] Biblio. Disponível em http://www.biblio.com.br, acessado em maio de 2008. [6] Biblioteca Digital Brasileira. Disponível em http://bibliotecas-cruesp.usp. br/unibibliweb, acessado em maio de 2008.
  • Bibliotecas Digitais e o Repositório Fedora 28 [7] Biblioteca Digital Brasileira. Disponível em http://www.ibict.br/ portal.php?id=programas, acessado em maio de 2008. [8] Biblioteca Digital da UNICAMP. Disponível em http://libdigi.unicamp.br, acessado em maio de 2008. [9] Biblioteca Digital do Senado Federal. Disponível em http://www2.senado. gov.br/bdsf, acessado em maio de 2008. [10] BRAVO, Ricardo. An implementation of policies in Web Server. Master in Science. Technological Institute of Aeronautics. São José dos Campos, 2004. [11] CDSware. Disponível em http://cdsware.cern.ch, acessado em maio de 2008. [12] CUNHA, Murilo Bastos da. Das Bibliotecas Convencionais às Digitais: diferenças e convergências. Revista Perspectivas em Ciência da Informação, Volume 13, Número 1, 2008. [13] CUNHA, Murilo Bastos da. Desafios na Construção de uma Biblioteca Digital. Revista Ciência da Informação, Volume 28, Número 3, 1999. [14] Digital Library Federation. Disponível em http://www.diglib.org, acessado em maio de 2008. [15] DSpace. Disponível em http://www.dspace.org, acessado em maio de 2008. [16] Dublin Core. Disponível em http://dublincore.org, acessado em maio de 2008. [17] Eprints. Disponível em http://software.eprints.org, acessado em maio de 2008. [18] Extensible Access Control Markup Language. Disponível em http://xml. coverpages.org/xacml.html, acessado em maio de 2008. [19] Fedora Open Source Repository Software: White Paper Fedora. Disponível em http://www.fedora.info/documents/WhitePaper/ FedoraWhitePaper.pdf, acessado em maio de 2008. [20] Fedora Service Framework. Disponível em http://www.fedora-commons.org/ confluence/display/FCR30/Service+Framework, acessado em maio de 2008. [21] Fedora Relsext Ontology. Disponível em http://www.fedora.info/ definitions/1/0/fedora-relsext-ontology.rdfs, acessado em maio de 2008. [22] Fedora Tutorial #1: Introduction to Fedora. Disponível em http://www. fedora-commons.org/pdfs/Tutorial1.02.28.05.pdf, acessado em maio de 2008. [23] Fedora Version 2.0: Open-Source Repository Supports XML and Web Services. Disponível em http://xml.coverpages.org/ni2005-03-18-a.html, aces- sado em maio de 2008.
  • Bibliotecas Digitais e o Repositório Fedora 29 [24] Fedora. Disponível em http://www.fedora-commons.org, acessado em maio de 2008. [25] FERREIRA, Eveline Cruz Hora Gomez. Geração Automática de Metadados: uma Contribuição para a Web Semântica. Tese de Doutorado. Departamento de Engen- haria de Sistemas Eletrônicos, Escola Politécnica da Universidade de São Paulo.São Paulo, 2006. [26] GARCIA, Patrícia de Andrade Bueno; SUNYE, Marcos Sfair. O Protocolo OAI-PMH para Interoperabilidade em Bibliotecas Digitais. I Congresso de Tecnologias para Gestão de Dados e Metadados do Cone Sul. Universidade Estadual de Ponta Grossa, Ponta Grossa – Paraná. 2003. [27] HAROLD, Elliotte Rusty. XML 1.1 Bible. Indianapolis, Wiley Publishing, 3rd Edition, 2004. [28] i-Tor. Disponível em http://www.i-tor.org/en/toon, acessado em maio de 2008. [29] KURAMOTO, Hélio. Iniciativas do IBICT para implementações tecnológicas para gestão e acesso à informação. Instituto Brasileiro de Informação em Ciência e Tecnologia – IBICT. Disponível em http://cg-conteudos.cgi. br/conteudos/conteudos-e-cultura/artigo_cbbd.doc, acessado em maio de 2008. [30] LAGOZE, Carl; PAYETTE, Sandy; SHIN, Edwin; WILPER, Chris. Fe- dora an Architecture for Complex Objects and their Relationships. Computing and Information Science, Cornell University. Disponível em http://arxiv.org/ftp/cs/papers/0501/0501012.pdf, acessado em maio de 2008. [31] Lei de Direitos Autorais Brasileira. Disponível em http://www.planalto. gov.br/CCIVIL/Leis/L9610.htm, acessado em maio de 2008. [32] Mozilla Public License. Disponível em http://www.mozilla.org/MPL/ MPL-1.1.html, acessado em maio de 2008. [33] MyCoRe. Disponível em http://www.mycore.de, acessado em maio de 2008. [34] NISO Press. Understanding Metadata. Disponível em http://www.niso.org/ publications/press/UnderstandingMetadata.pdf, acessado em maio de 2008. [35] Open Society Institute. A Guide to Institutional Repository Software. 3rd Edition. New York, 2004. [36] OPUS. Disponível em http://elib.uni-stuttgart.de/opus/doku/ english/index_english.php, acessado em maio de 2008. [37] PAYETTE, Sandra; BLANCHI, Christophe; LAGOZE, Carl; Overly, Ed- ward A. Interoperability for Digital Objects and Repositories. The Cornell/CNRI Experiments. Disponível em http://www.dlib.org/dlib/ may99/payette/05payette.html, acessado em maio de 2008.
  • Bibliotecas Digitais e o Repositório Fedora 30 [38] PAYETTE, Sandra; LAGOZE, Carl. Policy-Enforcing, Policy-Carrying Digi- tal Objects. Cornell University. Disponível em http://www.cs.cornell. edu/payette/papers/ecdl2000/pcpe-draft.ps, acessado em maio de 2008. [39] Portal Domínio Público. Disponível em http://www.dominiopublico.gov.br, acessado em maio de 2008. [40] POZO, David Patricio Viscarra del. Modelagem e Prototipação de uma Biblioteca Digital Usando a Abordagem 5S. Belo Horizonte.Dissertação de Mestrado. Instituto de Ciências Exatas, Universidade Federal de Minas Gerais. 2004. [41] Protocolo OAI-PMH. Disponível em http://clube-oai.incubadora.fapesp. br/portal/prot-oai, acessado em maio de 2008. [42] SARACEVIC, Tefko. Digital Library Evaluation: Toward an Evolution of Concepts. New Brunswick. School of Communication, Information e Library Studies, Rutgers Uni- versity. 2008. [43] STAPLES, Thornton; Ross, WAYLAND. Virginia Dons Fedora: A Pro- totype for a Digital Object Repository. Digital Library Research and De- velopment, University of Virginia. Disponível em http://www.dlib.org/ dlib/july00/staples/07staples.html, acessado em maio de 2008. [44] Tecnologias Open Source na Criação de Bibliotecas Digitais. Disponível em http://bibliotecas-cruesp.usp.br/3sibd/docs/teixeira385.pdf, acessado em maio de 2008.