333
Topic Maps: da Sintaxe ` a Semˆ antica Giovani Rubert Librelotto Disserta¸ ao submetida ` a Universidade do Minho para obten¸ ao do grau de Doutor em Inform´ atica, elaborada sob a orienta¸ ao do professor Doutor Pedro Rangel Henriques Departamento de Inform´ atica Escola de Engenharia Universidade do Minho Braga, 2005

Topic Maps: da Sintaxe a Semˆanticarepositorium.sdum.uminho.pt/bitstream/1822/4822/1/ThesisGioVF.pdf · heterog´eneas de informa¸c˜ao e da especifica¸cao da ontologia, ... pela

  • Upload
    leduong

  • View
    242

  • Download
    0

Embed Size (px)

Citation preview

  • Topic Maps: da Sintaxe a Semantica

    Giovani Rubert Librelotto

    Dissertacao submetida a Universidade do Minho para obtencao do grau de Doutor emInformatica, elaborada sob a orientacao do professor Doutor Pedro Rangel Henriques

    Departamento de InformaticaEscola de Engenharia

    Universidade do MinhoBraga, 2005

  • Resumo

    Segundo a definicao proposta em Topic Maps Data Model (Garshol and Moore, 2005),Topic Maps sao estruturas abstractas que podem codificar o conhecimento, conectando-o com recursos de informacao relevantes. Os Topic Maps permitem a estruturacao dainformacao atraves de uma rede semantica composta por topicos associados.Actualmente, a maior parte dos Topic Maps sao construdos manualmente. Este tipo deedicao acarreta custos de ordem temporal e financeira, pois apesar de haver ferramentaspropcias para a sua edicao, as mesmas perdem eficiencia quando o topic map atinge umnumero consideravel de topicos e associacoes. Acresce ainda o facto de que o utilizadortem dificuldade em verificar se a semantica do topic map condiz com o seu interesse.Os Topic Maps possuem uma caracterstica muito importante: a liberdade de representacaode um universo de discurso, pois a definicao de um topico e muito ampla. Porem, estaliberdade pode representar um potencial perigo para a consistencia do topic map. Paragarantir essa consistencia, um conjunto de condicoes contextuais (restricoes semanticas)deve ser imposto ao topic map.A norma Topic Maps nao fornece nenhum tipo de mecanismo para validar a semanticade documentos topic maps de acordo com regras especificadas por utilizadores. Por isso,urge completar a norma com um suporte a definicao de restricoes contextuais e criar ummecanismo de validacao automatica. O principal contributo deste doutoramento e umalinguagem de restricoes para topic maps, denominada XTche, e o respectivo processador. Alinguagem XTche baseada nos requisitos propostos recentemente em TMCL (Topic MapConstraint Language) (Nishikawa, Moore, and Bogachev, 2004) permite a descricao daestrutura da rede semantica formada pelos topicos e associacoes e a definicao de restricoessemanticas atraves de regras de esquema, regras contextuais e regras de existencia.Baseado nisto, decidiu-se pelo projecto e desenvolvimento de um ambiente que fosse capazde extrair dados de recursos de informacao e construir um topic map de acordo comuma especificacao, valida-lo e permitir uma navegacao conceptual sobre o conhecimentorepresentado no topic map.Resultou desta decisao o outro contributo deste doutoramento: o Metamorphosis, quee formado por um conjunto de linguagens de especificacao e ferramentas que permitemcriar uma interface para integracao de informacao oriunda de diversas fontes, atravesdo uso de uma ontologia representada em Topic Maps. A partir da descricao das fontesheterogeneas de informacao e da especificacao da ontologia, o Oveia (um dos componentesdo Metamorphosis) extra automaticamente o respectivo topic map. Depois de guardado num documento XTM (XML Topic Maps), ou numa base de dados este topic map seravalidado sintactica e semanticamente (face a um conjunto de restricoes especificadas numalinguagem apropriada) pelo Processador de XTche (outro dos componentes). Por fim, acomponente Ulisses gera uma interface Web para manipular o topic map extrado, a partirda descricao XTM valida. Estas componentes, algumas das quais com implementacoesalternativas ou mais que uma versao funcional, tem a particularidade de poderem serusadas separadamente, tal foi comprovado nos casos de estudos realizados.

  • ii

  • Abstract

    According to Topic Map Data Model (Garshol and Moore, 2005), Topic Maps are abstractstructures that can encode knowledge and connect this encoded knowledge to relevant in-formation resources. Topic Maps allow a domain knowledge representation in semanticnetworks, composed of topics and associations.Nowadays, almost all topic maps are built by hand. This kind of edition is time consumingand has important financial costs. There are several tools for topic map edition but theyhave some limitations like the lack of a topic map semantic validator.In order to cope with a broad range of scenarios, a topic is a very wide concept. On onehand, this makes Topic Maps a convenient model for knowledge representation; but onthe other hand, this can also put in risk the topic map consistency. A set of semanticconstraints must be imposed to the topic map in order to grant its consistency.The Topic Maps standard does not provide language constructors to specify the semantics.So it is not possible to derive from the standard mechanisms to validate a topic mapsagainst the contextual rules. Therefore it is necessary to improve the ISO 13250 standardadding a support for constraints definition enabling the creation of a processor for topicmap automatic validation.The main contribute of this thesis is a constraint language for topic maps called XTche andits processor. XTche language is TMCL-based (Topic Map Constraint Language) (Nishikawa,Moore, and Bogachev, 2004). This language allows to complement the description of thesemantic network structure (composed of topic and associations) with schema, contex-tual, and existence constraints, thus defining the semantics of topic maps that should bepreserved.Metamorphosis an environment that can extract data from information resources andbuild a topic map according to a specification, validate it, and generate a conceptual navi-gation over the topic map knowledge is another contribution of this thesis. Metamorphosis a Topic Maps oriented environment generates conceptual navigators for heterogenousinformation resources providing the desired interoperability.Metamorphosis architecture is composed of: (1) Oveia, a processor that builds topic maps.Its core is a processor that extracts the topics instances from the information resources andbuilds a topic map. It reads and processes the XSDS and XS4TM specifications. The topicmap generated by Oveia is stored as an XTM file or alternatively as a relational databasefollowing the OntologyDB approach; (2) XTche processor, that consumes the previousXTM file and validates the topic map according to a set of constraints defined in XTchelanguage; (3) Ulisses processor, that produces a whole semantic website based on a validtopic map; this website is a set of pages that displays all the information concerned withtopics and associations and provides a conceptual navigation over the semantic network(the topic map).

  • iv

  • Agradecimentos

    Quero ser teu amigo,Nem demais e nem de menos...Nem tao longe e nem tao perto.

    Na medida mais precisa que eu puder.Mas amar-te como proximo, sem medida...

    E ficar sempre em tua vidaDa maneira mais discreta que eu souber.

    Sem tirar-te a liberdade,Sem jamais te sufocar,

    Sem forcar a tua vontade.Sem falar quando for a hora de calar

    E sem calar quando for a hora de falar.

    Fernando Pessoa

    Ao Departamento de Informatica, pelo acolhimento recebido ao longo destes 4 anos, emespecial aos funcionarios Paula Anjo, Goretti, Helena, Cristina, Joao, Carla e Jaime.Ao grupo de Especificacao e Processamento de Linguagens, especialmente ao Ze Joao, Al-berto, Jorge Gustavo, Sandra Lopes, Fernanda, Paulo Matos e Alda Lopes, por formaremum grupo que tem a cara de uma famlia.Uma mencao distinta a Marta Jacinto, pelas conversas produtivas ao longo da duracaoda sua dissertacao de mestrado. O desenvolvimento de XCSL trouxe mais que algumaspublicacoes: criou uma boa amizade.Alunos da disciplina de Processamento Estruturado de Documentos Fernando Jorge LaundosFerreira da Costa e Mario Andre de Castro Vila Cova, pelo empenho no desenvolvimentodo Ulisses.Ao Weber Souza pelo convvio virtual que deu origem ao Oveia. A orientacao do seutrabalho de conclusao de curso na Universidade do Estado da Bahia rendeu bons frutos.Ao Jose Carlos Ramalho, pela receptividade desde o momento da chegada em Portugal,naquele dia 27 de Setembro de 2001, no aeroporto Sa Carneiro. Uma pessoa totalmenteinformada da area onde actua, sempre com novas ideias para dar sequencia aos projectos.Toda esta dissertacao teve sua participacao na idealizacao e concretizacao, por isso, esuma pessoa fundamental pela obra que aqui se apresenta. Sou muito grato a voce.Ao CNPq, pelo apoio financeiro ao longo deste doutoramento. Em especial ao professorDoutor Rafael Lins e aos funcionarios Katiane Regia Menezes, Eli Ribeiro da Silva e JoseAirton de Souza, que sempre estiveram a disposicao nos momentos de duvidas burocraticas.Ao professor Doutor Simao Sirineo Toscani, um agradecimento particular: se esse doutora-mento esta sendo finalizado agora, e porque comecou dia 03 de Agosto de 2000, quando meindicaste o professor Pedro Henriques como possvel orientador. Fizeste muito por mimorientando-me durante a faculdade e o mestrado, sendo mais que um orientador; fostesempre um amigo. E nem o senhor sabe o quao bem me fizeste, ao apresentar-me meuactual orientador. Ter o senhor no juri de doutoramento e uma satisfacao e uma expressaode gratidao.

  • vi

    Aos grandes amigos portugueses, que levarei para sempre comigo: David Costa, comnossos planos de viagem que ainda nao foram colocados em pratica (mas nao ta mortoquem peleia!), e o Pedro Gabriel, um companheiro de gabinete mpar, tao boa gente queate chego a relevar o seu pessimo gosto musical. Espero voces no Brasil, gajos.Ao Ricardo Martins, pelos 2 anos de convivencia em solo portugues. Este tempo provouque pessoas diferentes podem conviver muito bem e se tornar bons amigos.A Giovana, apesar de ficar pouco no DI semanalmente, soube sempre trazer aquele arfeminino para o meio desse bando de machos que vieram do Brasil pra Braga. Aindatemos que reviver aquelas noites de War com o Gustavo e o Ricardo.A comunidade baiana do DI: o Fabio, aquele cara sensato e correto, uma excelente emotivante companhia, principalmente para aguentar os finais de semana na universidade;o Tiago, o cara com a voz de dominado no telefone com a Tati, sempre pronto pra umpapo cabeca com a galera; e o Vitor, chegou por ultimo mas soube trazer um novo astralpro apartamento, o mais irado dos brazucas.A famlia paraucha Ronnie, Ana e Pedrinho Miguel, pela convivencia ao longo do tempoque moramos juntos, por trazer o lado famlia, algo que faltava por aqui.Ao Alf, pela sua personalidade singular. Uma pessoa que parece ser fechada e sisuda,porem sabe se expressar como poucos. Devia estar no Guinness nao por seu casamentorelampago (ne, Maria?), mas sim pelo seu potencial de trabalho. Esse sim e um exemploa seguir.O Gustavo merece uma citacao a parte. O tempo total desse doutoramento estivemos ladoa lado, seja morando no mesmo apartamento, seja no gabinete (quando voce vai trabalhar,claro!). Um cara sempre muito bem informado, principalmente no quesito fotografia digitale turismo. Um dia ainda descobriras que estas no curso errado... Voce e o mais oveia dosoveias. ;)Ao Marco, sem palavras... Faculdade, mestrado e doutorado juntos. Voce e meu dolo,tche, nao foi a toa que abri as portas da UMinho para voce. Sabia que voce merecia maisque ninguem estar numa instituicao como essa. Sei que alem de mim, o professor LuisBarbosa, seu orientador, tambem lhe agradece.Aos amigos da minha grande pequena Fortaleza dos Valos: os cumpadres Zando e Adri,por aquele cafofo acolhedor em Cruz Alta e a optima companhia; Fernando e Angela,pela amizade e nossa praia, a qual vai acontecer mais e mais vezes; os cumpadres Rafaoe Roberta, pela honra de apadrinhar vosso casamento; e a todos os demais, que foramimportantes em qualquer fase desta jornada.A minha famlia em geral, tios, tias, primos e primas. Citar o nome de todos os quase100 membros seria escrever como outra dissertacao. Para representar todos, cito meuavo Americo, falecido em 2001, justamente quando eu estava visitando minha famliapela primeira vez depois de ter vindo a Braga. Gostaria de estar lhe entregando essettulo pessoalmente. Mas estejas onde estiveres, saberas que tem em mim um neto muitoorgulhoso de ser um descendente seu. O senhor faz muita falta.Ao meu anjo, Daniele, agradeco pela compreensao nestes ultimos 6 meses quando eu naopodia dar a atencao que voce merecia. Obrigado por tornar magico cada fim de noite,mesmo estando longe de mim.Os cumpadres Jairo, Joice e a linda Sassa merecem destaque. Ja tenho meu lugarzinhonaquela casa. Obrigado nao so pelos jantares e bons momentos em todas as minhas

  • vii

    viagens ao Brasil, mas principalmente por quem voces sao. Voces foram fundamentaisnesse perodo em terras lusitanas e faco questao de manter essa grande amizade parasempre.Aos meus gurus Guigo e Tiago, um reconhecimento. Quando viram que eu estava inclinadoa nao encarar esse doutorado, souberam como me motivar e fazer eu ver que estariacometendo o maior erro da minha vida. Guigo, nossas eternas conversas pela internet,quase que diarias, sempre me fazendo sentir um pouquinho mais em casa. Nao tens ideiado quanto essas conversas foram importantes para mim. Tiago, mesmo com 4 anos amenos em idade, sempre tiveste 4 anos a mais em maturidade. Conversar contigo sempreme trouxe algo novo, uma licao. Sua visita aqui em Portugal foi um momento que parasempre ficara marcado. Ainda temos aquelas 3 garrafas de Vinho do Porto para degustar,uma por decada. Meus bruxos, nao nascemos da mesma mae, mas voces sabem que saoirmaos pra mim.E falando em irmaos, como nao citar a Bibi e o Dodo... Esses sim, irmaos de sangue quepude acompanhar desde o nascimento. Hoje estao fazendo faculdade, mas verei semprevoces como aquelas criancas que vieram trazer mais felicidades ao nosso lar. A Bibi,com sua personalidade forte, sempre brigando pelos seus direitos, sem perder a ternura. ODodo, com seu jeito tmido e um potencial e tanto. Muito me orgulho de voces, maninhos...Meu mano Ogi, temos uma vida juntos. E por nao ser suficiente o tempo que estivemosjuntos no Brasil, voce acabou vindo para ca fazer seu mestrado. Mais que isso, acaboutrazendo aquilo que mais me faltava: a minha propria famlia. Ter voce aqui nos aproximouainda mais, solidificando essa fraternidade que e uma bela amizade. Obrigado por tervindo.Para finalizar, meus pais... Nem Fernando Pessoa (com todo o respeito) teria talento comas palavras para expressar o quanto sou grato por voces, pela maneira como conduzemaquele lar, pela forma como educaram seus filhos, pela dedicacao a todos nos, sempreabrindo mao de suas prioridades, para nos oferecer do bom e do melhor. Quando euestava em duvida se viria para Portugal, surpreendentemente voces foram os primeirosa me apoiar. Quando pensava que voces estavam satisfeitos por eu ser um professoruniversitario em Cruz Alta, morando perto de todos, mostraram que eu nao podia meacomodar com aquilo. Sois os responsaveis por esta conquista. Na verdade, esse ttulodeveria ser dado a voces.E falando em pai, vou ter que parar de chamar o professor Pedro por professor. Desdeo princpio soubeste como me fazer sentir em casa. Naqueles telefonemas quase diarios,sempre estavas preocupado em saber como eu estava, se estava tudo bem; somente depoisdisso, vinha o trabalho. No fundo, nunca me viste como um orientando; sempre fui tratadocomo um filho. Estes quatro anos foram memoraveis, em muito gracas ao senhor. Sou umapessoa muito enraizada em minha cidade, famlia e amigos, mas gracas principalmente aosenhor, eu tive motivacao para percorrer todas as etapas deste doutoramento. Esperoter sido pelo menos metade do que o senhor foi para mim. Pois nem sob encomenda euencontraria uma pessoa, em outro pas, em outro mundo, como o senhor. Muito obrigado,do fundo do meu coracao.

  • viii

  • Conteudo

    1 Introducao 11.1 Restricoes em Topic Maps . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.2 A Historia deste doutoramento . . . . . . . . . . . . . . . . . . . . . . . . . 41.3 A Tese e os Contributos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61.4 Estrutura da Dissertacao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

    I Topic Maps: Definicao e Representacao 9

    2 Representacao de Conhecimento e Semantic Web 112.1 Dado, Informacao e Conhecimento . . . . . . . . . . . . . . . . . . . . . . . 122.2 Estruturando o Conhecimento . . . . . . . . . . . . . . . . . . . . . . . . . . 13

    2.2.1 Estruturas de Facetas . . . . . . . . . . . . . . . . . . . . . . . . . . 142.2.2 Dicionarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152.2.3 Indices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162.2.4 Taxonomias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162.2.5 Thesauri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182.2.6 Ontologias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202.2.7 Conexao entre os modelos . . . . . . . . . . . . . . . . . . . . . . . . 24

    2.3 Semantic Web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252.3.1 Arquitectura da Semantic Web . . . . . . . . . . . . . . . . . . . . . 26

    2.4 Linguagens para a Semantic Web . . . . . . . . . . . . . . . . . . . . . . . . 282.4.1 Resource Description Framework RDF . . . . . . . . . . . . . . . . 282.4.2 RDF Schema RDF(S) . . . . . . . . . . . . . . . . . . . . . . . . . 312.4.3 Topic Maps TM . . . . . . . . . . . . . . . . . . . . . . . . . . . . 332.4.4 XML-based Ontology Exchange Language XOL . . . . . . . . . . . 342.4.5 Simple HTML Ontology Extensions SHOE . . . . . . . . . . . . . 362.4.6 Web Ontology Language OWL . . . . . . . . . . . . . . . . . . . . 372.4.7 Comparativo entre as linguagens . . . . . . . . . . . . . . . . . . . . 40

    2.5 Sumario do captulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

    ix

  • x Conteudo

    3 Topic Maps 433.1 A norma ISO 13250 Topic Maps . . . . . . . . . . . . . . . . . . . . . . . . 45

    3.1.1 XML Topic Maps (XTM) . . . . . . . . . . . . . . . . . . . . . . . . 463.1.2 TAO - Topicos, Associacoes e Ocorrencias . . . . . . . . . . . . . . . 473.1.3 Nomes de Topicos (Topic Names) . . . . . . . . . . . . . . . . . . . 553.1.4 Nomes Variantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 563.1.5 Contexto (Scope) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

    3.2 Fusao de Topic Maps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 593.3 Identificador e Indicador de Tema: definicao da identidade de um tema . . 613.4 Linguagens concretas para Topic Maps . . . . . . . . . . . . . . . . . . . . . 63

    3.4.1 A sintaxe HyTM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 633.4.2 A sintaxe AsTMa= . . . . . . . . . . . . . . . . . . . . . . . . . . . . 653.4.3 A sintaxe LTM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

    3.5 Justificativa da escolha de Topic Maps em vez de RDF . . . . . . . . . . . . 673.5.1 Diferencas historicas . . . . . . . . . . . . . . . . . . . . . . . . . . . 673.5.2 Diferencas a primeira vista . . . . . . . . . . . . . . . . . . . . . . . 683.5.3 Entendendo as normas . . . . . . . . . . . . . . . . . . . . . . . . . . 683.5.4 Comparando as normas . . . . . . . . . . . . . . . . . . . . . . . . . 693.5.5 Por que usar Topic Maps como norma? . . . . . . . . . . . . . . . . 74

    3.6 Sumario sobre Topic Maps . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75

    4 Ontologias e Topic Maps 774.1 Ontologia relacionada com modelos de dados . . . . . . . . . . . . . . . . . 784.2 Como construir uma Ontologia . . . . . . . . . . . . . . . . . . . . . . . . . 794.3 Ontologia em Topic Maps . . . . . . . . . . . . . . . . . . . . . . . . . . . . 804.4 Topic Maps dirigidos por Ontologia . . . . . . . . . . . . . . . . . . . . . . . 82

    4.4.1 Como Ontologias se relacionam com Topic Maps . . . . . . . . . . . 824.4.2 Vantagens da abordagem TMdO . . . . . . . . . . . . . . . . . . . . 824.4.3 As tendencias para a abordagem TMdO . . . . . . . . . . . . . . . . 84

    4.5 Sumario sobre Ontologia e Topic Maps . . . . . . . . . . . . . . . . . . . . . 84

    5 Validacao Semantica em Topic Maps 875.1 Restricoes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 875.2 A necessidade de validacao em Topic Maps . . . . . . . . . . . . . . . . . . 885.3 O que ja se pode restringir? . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

    5.3.1 Com a norma Topic Maps . . . . . . . . . . . . . . . . . . . . . . . . 905.3.2 Em XML Topic Maps . . . . . . . . . . . . . . . . . . . . . . . . . . 91

    5.4 ISO 19756: Topic Map Constraint Language TMCL . . . . . . . . . . . . 935.4.1 Restricoes em Associacoes . . . . . . . . . . . . . . . . . . . . . . . . 945.4.2 Restricoes em Topicos . . . . . . . . . . . . . . . . . . . . . . . . . . 95

  • Conteudo xi

    5.4.3 Restricoes em Ocorrencias . . . . . . . . . . . . . . . . . . . . . . . . 965.4.4 Acrescimos a lista de Requisitos de TMCL . . . . . . . . . . . . . . 97

    5.5 O processo de validacao de Topic Maps . . . . . . . . . . . . . . . . . . . . 995.6 Sumario sobre Validacao Semantica em Topic Maps . . . . . . . . . . . . . 100

    II Topic Maps: Um Ambiente Processamento 101

    6 Metamorphosis 1036.1 Interoperabilidade em Sistemas de Informacao . . . . . . . . . . . . . . . . . 1046.2 Introducao ao Metamorphosis . . . . . . . . . . . . . . . . . . . . . . . . . . 1066.3 Arquitectura do Metamorphosis . . . . . . . . . . . . . . . . . . . . . . . . . 1076.4 Aplicacoes do Metamorphosis . . . . . . . . . . . . . . . . . . . . . . . . . . 1096.5 Sumario sobre o Metamorphosis . . . . . . . . . . . . . . . . . . . . . . . . . 110

    7 TM-Builder 1137.1 OntBuild: O Extractor Abstracto de Ontologias . . . . . . . . . . . . . . . . 114

    7.1.1 Uma linguagem para representacao de ontologias no OntBuild . . . . 1157.2 TM-Builder: Um extractor de Topic Maps . . . . . . . . . . . . . . . . . . . 1157.3 XSTM: Uma linguagem XML para especificar Extractores de Topic Maps . . 116

    7.3.1 Especificacao de Tipos de Topicos em XSTM . . . . . . . . . . . . . 1177.3.2 Especificacao de extraccao de Topicos em XSTM . . . . . . . . . . . 1207.3.3 Especificacao de Tipos de Associacoes em XSTM . . . . . . . . . . . 1227.3.4 Especificacao de extraccao de Associacoes em XSTM . . . . . . . . . 123

    7.4 Trabalhos Relacionados com o TM-Builder . . . . . . . . . . . . . . . . . . . 1287.5 Sumario sobre TM-Builder . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129

    8 Oveia 1318.1 Arquitectura do Oveia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1328.2 XSDS: Especificacao das Fontes de Dados . . . . . . . . . . . . . . . . . . . 133

    8.2.1 Datasources: definicao dos recursos de informacao . . . . . . . . . . 1348.2.2 Datasets: definicao da extraccao dos conjuntos de dados . . . . . . . 1348.2.3 Sintaxe de XSDS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1358.2.4 Exemplo de Especificacao em XSDS . . . . . . . . . . . . . . . . . . 136

    8.3 Extractor de Datasets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1388.4 XS4TM: Uma linguagem XML para especificar a extraccao de Topic Maps . 139

    8.4.1 A sintaxe de XS4TM . . . . . . . . . . . . . . . . . . . . . . . . . . 1408.4.2 Exemplo de Especificacao em XS4TM . . . . . . . . . . . . . . . . . 142

    8.5 Processador XS4TM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1438.6 Armazenamento de Topic Maps em base de dados relacionais . . . . . . . . 144

    8.6.1 Armazenamento de XML em Base de Dados . . . . . . . . . . . . . 144

  • xii Conteudo

    8.6.2 Solucao Adoptada: BD Ontologia . . . . . . . . . . . . . . . . . . . . 1468.7 Trabalhos Relacionados com o Oveia . . . . . . . . . . . . . . . . . . . . . . 1488.8 Sumario sobre o Oveia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149

    9 XTche 1519.1 Classificando as restricoes sobre Topic Maps . . . . . . . . . . . . . . . . . . 1539.2 Estendendo XML Schema para XTche . . . . . . . . . . . . . . . . . . . . . 155

    9.2.1 O esquema basico de uma especificacao XTche . . . . . . . . . . . . 1569.2.2 Elementos e atributos especficos da linguagem XTche . . . . . . . . 158

    9.3 Restringindo Topic Maps em XTche . . . . . . . . . . . . . . . . . . . . . . . 1629.3.1 Especificacao de Restricoes de Esquema . . . . . . . . . . . . . . . . 1629.3.2 Especificacao de Restricoes Contextuais . . . . . . . . . . . . . . . . 1649.3.3 Especificacao de Restricoes de Existencia . . . . . . . . . . . . . . . 166

    9.4 Estruturando Topic Maps com XTche . . . . . . . . . . . . . . . . . . . . . . 1679.5 Processando XTche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172

    9.5.1 TM-Validator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1739.5.2 Validacao de Especificacoes XTche . . . . . . . . . . . . . . . . . . . 174

    9.6 Trabalhos Relacionados com XTche . . . . . . . . . . . . . . . . . . . . . . . 1759.7 Sumario sobre XTche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 176

    10 Ulisses 17910.1 Visualizacao de Topic Maps . . . . . . . . . . . . . . . . . . . . . . . . . . . 180

    10.1.1 Visualizacao de Topicos e Associacoes . . . . . . . . . . . . . . . . . 18010.1.2 Filtragem em Topic Maps . . . . . . . . . . . . . . . . . . . . . . . . 18110.1.3 Abordagem escolhida . . . . . . . . . . . . . . . . . . . . . . . . . . 181

    10.2 Ulisses o navegador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18310.2.1 Ulisses I Navegacao em Topic Maps baseada em transformacoes XSL18410.2.2 Ulisses II Navegacao em Topic Maps com transformacao em tempo

    de execucao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18810.2.3 Ulisses III Navegacao em Topic Maps armazenados na BD Ontologia 189

    10.3 Trabalhos Relacionados com o Ulisses . . . . . . . . . . . . . . . . . . . . . . 19010.4 Sumario sobre o Ulisses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192

    III Topic Maps: Casos de Estudo 195

    11 O Ulisses aplicado a navegacao em Mapas de Conceitos 19711.1 Mapas de Conceitos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19811.2 Mapas de Conceitos em Topic Maps . . . . . . . . . . . . . . . . . . . . . . 20011.3 Um Topic Map para representar um Mapa de Conceitos . . . . . . . . . . . 202

    11.3.1 Escolha da raiz (ou smbolo inicial) do Topic Map . . . . . . . . . . 202

  • Conteudo xiii

    11.3.2 Definicao dos topicos correspondentes aos conceitos do MC . . . . . 20211.3.3 Definicao das associacoes correspondentes as relacoes do MC . . . . 20311.3.4 Definicao das ocorrencias de cada topico . . . . . . . . . . . . . . . . 205

    11.4 Geracao do Navegador para o Mapa de Conceitos . . . . . . . . . . . . . . . 20611.5 Sumario do caso de estudo do IIpCS . . . . . . . . . . . . . . . . . . . . . . 208

    12 O TM-Builder e o Oveia para a extraccao do mapa do site do DI-UM 21112.1 Definicao de uma ontologia para o DI-UM . . . . . . . . . . . . . . . . . . . 213

    12.1.1 Os conceitos no domnio do DI-UM . . . . . . . . . . . . . . . . . . . 21312.1.2 Uma taxonomia para o DI-UM . . . . . . . . . . . . . . . . . . . . . 21412.1.3 Relacionamentos entre os conceitos da taxonomia . . . . . . . . . . . 214

    12.2 TM-Builder aplicado ao DI-UM . . . . . . . . . . . . . . . . . . . . . . . . . 21512.2.1 Dump da base de dados para um documento XML . . . . . . . . . . 21612.2.2 Especificacao em XSTM . . . . . . . . . . . . . . . . . . . . . . . . . 21712.2.3 Processamento e resultados do TM-Builder aplicado ao DI-UM . . . 222

    12.3 Oveia aplicado ao DI-UM . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22312.3.1 Especificacao em XSDS . . . . . . . . . . . . . . . . . . . . . . . . . 22412.3.2 Especificacao em XS4TM . . . . . . . . . . . . . . . . . . . . . . . . 22512.3.3 Processamento e resultados do Oveia aplicado ao DI-UM . . . . . . . 228

    12.4 Sumario do caso de estudo do DI-UM . . . . . . . . . . . . . . . . . . . . . 229

    13 A linguagem XTche numa aplicacao de E-Commerce 23313.1 Modelo de dados da E-Sell . . . . . . . . . . . . . . . . . . . . . . . . . . . 234

    13.1.1 A entidade produto . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23513.1.2 A entidade cliente . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23613.1.3 A entidade ordem de compra . . . . . . . . . . . . . . . . . . . . . . 23713.1.4 A relacao conter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23813.1.5 A relacao comprar . . . . . . . . . . . . . . . . . . . . . . . . . . . . 240

    13.2 Restricoes sobre o topic map da E-Sell . . . . . . . . . . . . . . . . . . . . . 24113.3 Restricoes XTche sobre o topic map da E-Sell . . . . . . . . . . . . . . . . . 242

    13.3.1 Restricoes sobre a entidade cliente . . . . . . . . . . . . . . . . . . . 24213.3.2 Restricoes sobre a entidade produto . . . . . . . . . . . . . . . . . . . 24413.3.3 Restricoes sobre a entidade ordem de compra . . . . . . . . . . . . . 24513.3.4 Restricoes sobre o relacionamento comprar . . . . . . . . . . . . . . 24513.3.5 Restricoes sobre o relacionamento conter . . . . . . . . . . . . . . . 24613.3.6 Restricoes Contextuais . . . . . . . . . . . . . . . . . . . . . . . . . . 247

    13.4 Processamento da especificacao XTche e validacao do topic map da E-Sell . 24813.5 Sumario do caso de estudo da E-Sell Corporation . . . . . . . . . . . . . . . 250

    14 O Metamorphosis aplicado ao Museu da Emigracao 253

  • xiv Conteudo

    14.1 Sistema de Informacao do Museu da Emigracao . . . . . . . . . . . . . . . . 25514.1.1 Notas Biograficas contidas em Almanaque . . . . . . . . . . . . . . . 25514.1.2 Diarios de Viagem . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25714.1.3 Registos de Passaportes . . . . . . . . . . . . . . . . . . . . . . . . . 258

    14.2 Passos para a Integracao de Fontes Heterogeneas . . . . . . . . . . . . . . . 26014.3 Construcao do topic map pelo Oveia . . . . . . . . . . . . . . . . . . . . . . 261

    14.3.1 Especificacao das fontes em XSDS . . . . . . . . . . . . . . . . . . . 26114.3.2 Definicao da ontologia do universo de discurso . . . . . . . . . . . . 26414.3.3 Especificacao da Ontologia em XS4TM . . . . . . . . . . . . . . . . 26514.3.4 Instanciacao da Ontologia em XS4TM . . . . . . . . . . . . . . . . . 26714.3.5 Extraccao do topic map com o Oveia . . . . . . . . . . . . . . . . . . 269

    14.4 Validacao do topic map com XTche . . . . . . . . . . . . . . . . . . . . . . . 27214.5 Navegacao no topic map com Ulisses . . . . . . . . . . . . . . . . . . . . . . 27514.6 Sumario do caso de estudo do Museu da Emigracao . . . . . . . . . . . . . . 277

    15 Conclusao 27915.1 Contributos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28115.2 Trabalhos Futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 281

    A Regras para a Validacao de Especificacoes XTche 299

    B Comparando XTche, AsTMa! e OSL 301B.1 A linguagem de restricoes AsTMa! . . . . . . . . . . . . . . . . . . . . . . . 301

    B.1.1 Maplet Patterns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 301B.2 A linguagem de restricoes OSL . . . . . . . . . . . . . . . . . . . . . . . . . 303B.3 Comparando XTche, AsTMa! e OSL . . . . . . . . . . . . . . . . . . . . . . 304

    B.3.1 Condicoes estruturais rgidas . . . . . . . . . . . . . . . . . . . . . . 304B.3.2 Condicoes estruturais nao-rgidas . . . . . . . . . . . . . . . . . . . . 306B.3.3 Restricoes de Existencia . . . . . . . . . . . . . . . . . . . . . . . . . 307B.3.4 Restricoes Condicionais . . . . . . . . . . . . . . . . . . . . . . . . . 307B.3.5 Restricoes Booleanas de Negacao . . . . . . . . . . . . . . . . . . . . 309B.3.6 Restricoes Booleanas E e OU . . . . . . . . . . . . . . . . . . 310

  • Lista de Figuras

    2.1 A linha contnua da interpretacao. Fonte: Jack Park (2003). . . . . . . . . . 122.2 Uma taxonomia para o planeta Terra. . . . . . . . . . . . . . . . . . . . . . 172.3 Um thesaurus para o planeta Terra. . . . . . . . . . . . . . . . . . . . . . . 192.4 Uma ontologia para o planeta Terra. . . . . . . . . . . . . . . . . . . . . . . 222.5 Relacionamento entre ontologia, thesaurus, taxonomia, ndice e dicionario . 242.6 Arquitectura da Semantic Web. Fonte: Tim Berners-Lee (2000). . . . . . . 272.7 Esquema de representacao da RDF em grafo . . . . . . . . . . . . . . . . . 282.8 Diagrama de nos e arcos de RDF . . . . . . . . . . . . . . . . . . . . . . . . 292.9 Grafo RDF exemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 302.10 Um exemplo envolvendo RDF e RDF Schema . . . . . . . . . . . . . . . . . 322.11 Exemplo de aplicacao de RDF Schema. . . . . . . . . . . . . . . . . . . . . 332.12 Exemplo de ontologia em XOL. . . . . . . . . . . . . . . . . . . . . . . . . . 35

    3.1 Esquema da sintaxe XTM . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483.2 Ilustracao Simples da Norma Topic Maps . . . . . . . . . . . . . . . . . . . . 493.3 Topicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 493.4 Tipos de Topicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 503.5 Super-classes e sub-classes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 513.6 Ocorrencias de Topicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 533.7 Associacoes de Topicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543.8 Nomes de topicos em diversos contextos . . . . . . . . . . . . . . . . . . . . 583.9 Dois topic maps antes da uniao. Fonte: The Topic Maps Handbook (2003). 593.10 Dois topic maps apos da uniao. Fonte: The Topic Maps Handbook (2003). . 603.11 Temas nao-enderecaveis. Fonte: The Topic Maps Handbook (2003). . . . . 623.12 Identidade de dois topic maps. Fonte: The Topic Maps Handbook (2003). . 623.13 As famlias das duas normas. Fonte: Living with topic maps and RDF (2003). 683.14 Reificando uma Associacao. Fonte: Lars Marius Garshol (2003). . . . . . . 733.15 Reificando uma Declaracao. Fonte: Lars Marius Garshol (2003). . . . . . . 73

    4.1 Um topic map para o conceito Dinamizacao Cientfica . . . . . . . . . . . . 80

    xv

  • xvi Lista de Figuras

    5.1 Representacao de um topic map na sintaxe XTM e sua visao em forma degrafo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

    6.1 Perspectivas em interoperabilidade de sistemas de informacao. . . . . . . . . 1056.2 Arquitectura simplificada do Metamorphosis . . . . . . . . . . . . . . . . . . 1076.3 Arquitectura completa do Metamorphosis . . . . . . . . . . . . . . . . . . . . 108

    7.1 A arquitectura do sistema OntBuild . . . . . . . . . . . . . . . . . . . . . . . 1157.2 Arquitectura do TM-Builder . . . . . . . . . . . . . . . . . . . . . . . . . . . 1167.3 Esquema do elemento raiz de XSTM . . . . . . . . . . . . . . . . . . . . . . 1177.4 Estrutura de um tipo de topico em XSTM . . . . . . . . . . . . . . . . . . . 1187.5 XML-Schema do XATA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1187.6 Estrutura da definicao de extraccao de topicos em XSTM . . . . . . . . . . 1207.7 Estrutura de um tipo de associacao em XSTM . . . . . . . . . . . . . . . . . 1227.8 Estrutura da definicao de extraccao de associacoes em XSTM . . . . . . . . 1237.9 Estrutura da definicao de extraccao de associacoes one2one em XSTM . . . 1247.10 Estrutura da definicao de extraccao de associacoes M2N em XSTM . . . . . 127

    8.1 Arquitectura do Oveia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1328.2 Relacao entre datasources e datasets em XSDS . . . . . . . . . . . . . . . 1388.3 Exemplo de funcionamento do Extractor de Datasets . . . . . . . . . . . . . 1398.4 Relacao entre XSDS e XS4TM . . . . . . . . . . . . . . . . . . . . . . . . . . 1418.5 Relacao entre XSDS e XS4TM . . . . . . . . . . . . . . . . . . . . . . . . . 1438.6 Trecho do Modelo ER do BD Ontologia . . . . . . . . . . . . . . . . . . . . . 147

    9.1 Estrutura inicial de uma especificacao XTche . . . . . . . . . . . . . . . . . 1569.2 Estrutura do tipo de topico Artigo com atributos XTche . . . . . . . . . . . 1599.3 Regras contextuais para os topicos ingles, portugues e URL-PDF . . . . . . 1609.4 Regras para verificacao de existencia para o topico XML2004-XTche . . . . 1619.5 Definicao do tipo de topico cliente com exactas tres ocorrencias . . . . . . . 1619.6 Uma especificacao XTche para definir a estrutura do topico country . . . . 1639.7 Especificacao XTche para definir a estrutura da associacao comprar . . . . . 1639.8 Restricao contextual determinando que o topico perfil e, exclusivamente,

    um tipo de ocorrencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1659.9 Restricao contextual determinando que o topico artigo nao pode ser tipo

    de topico, nem contexto de associacao . . . . . . . . . . . . . . . . . . . . . 1669.10 Exemplo de especificacao de restricao de existencia rgida . . . . . . . . . . 1669.11 Exemplo de especificacao de restricao de existencia nao-rgida . . . . . . . . 1679.12 Gerador de Esqueleto XTM a partir de especificacoes XTche . . . . . . . . . 1679.13 Especificacao XTche para o tipo de topico cliente . . . . . . . . . . . . . . . 1699.14 Especificacao XTche para o tipo de associacao conter . . . . . . . . . . . . . 171

  • Lista de Figuras xvii

    9.15 Arquitectura de XTche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1739.16 Processador para a Validacao de Especificacoes XTche . . . . . . . . . . . . 175

    10.1 Visualizacao inicial de um topic map no Ulisses . . . . . . . . . . . . . . . . 18410.2 Visualizacao da ontologia de um topic map no Ulisses . . . . . . . . . . . . 18610.3 Visualizacao de um topico no Ulisses . . . . . . . . . . . . . . . . . . . . . . 18710.4 Visualizacao de uma associacao no Ulisses . . . . . . . . . . . . . . . . . . . 18810.5 Visualizacao de um topico no Omnigator . . . . . . . . . . . . . . . . . . . . 19010.6 Visualizacao de um topico no Omnigator . . . . . . . . . . . . . . . . . . . . 192

    11.1 Exemplo de um Mapa de Conceitos simples . . . . . . . . . . . . . . . . . . 19911.2 Um Mapa de Conceitos referente a disciplina de IIpCS . . . . . . . . . . . . 20011.3 Pagina do inicial do IIpCS gerada pelo Ulisses . . . . . . . . . . . . . . . . . 20611.4 Pagina referente ao conceito Unidades . . . . . . . . . . . . . . . . . . . . . 20711.5 Pagina referente ao conceito Processamento Numerico . . . . . . . . . . . . 20711.6 Pagina referente ao conceito Computador . . . . . . . . . . . . . . . . . . . 20811.7 Pagina referente ao conceito Hardware . . . . . . . . . . . . . . . . . . . . . 209

    12.1 Arquitectura do website do DI-UM . . . . . . . . . . . . . . . . . . . . . . . 21212.2 Uma taxonomia para o DI-UM . . . . . . . . . . . . . . . . . . . . . . . . . 21412.3 A visao grafica de uma ontologia para o DI-UM . . . . . . . . . . . . . . . . 21512.4 Parte dos relacionamentos do DI-UM . . . . . . . . . . . . . . . . . . . . . . 21712.5 Avaliacao de Tempo de Extraccao . . . . . . . . . . . . . . . . . . . . . . . 22912.6 Visualizacao do topic map do DI no Ulisses . . . . . . . . . . . . . . . . . . 230

    13.1 Diagrama entidade-relacionamento da base de dados da E-Sell . . . . . . . 23413.2 Especificacao XTche do tipo de topico Cliente . . . . . . . . . . . . . . . . . 24313.3 Especificacao XTche do tipo de topico produto . . . . . . . . . . . . . . . . . 24413.4 Especificacao XTche do tipo de associacao ordem de compra . . . . . . . . . 24513.5 Especificacao XTche do tipo de associacao comprar . . . . . . . . . . . . . . 24613.6 Especificacao XTche do tipo de associacao Conter . . . . . . . . . . . . . . 24713.7 Especificacao em XTche das restricoes contextuais . . . . . . . . . . . . . . 24713.8 Especificacao XTche completa para o caso de estudo de E-Sell . . . . . . . 251

    14.1 Exemplo da capa de um Almanaque. . . . . . . . . . . . . . . . . . . . . . . 25614.2 Um exemplo de uma historia de vida retirada do mesmo Almanaque. . . . . 25714.3 Esquema dos Almanaques. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25814.4 Excerto de um Diario de Viagem. . . . . . . . . . . . . . . . . . . . . . . . . 25914.5 Esquema de um Diario de Viagem. . . . . . . . . . . . . . . . . . . . . . . . 25914.6 Diagrama Entidade-Relacionamento da base de dados dos Passaportes. . . . 26014.7 Ontologia para o Museu da Emigracao . . . . . . . . . . . . . . . . . . . . . 265

  • xviii Lista de Figuras

    14.8 Etapa 1 O Projecto de Extraccao. . . . . . . . . . . . . . . . . . . . . . . 27014.9 Etapa 2 Seleccao do modo de armazenamento do topic map: na BD

    Ontologia (esquerda) ou num ficheiro XTM (direita) . . . . . . . . . . . . . 27114.10Etapa 3 Dados da extraccao . . . . . . . . . . . . . . . . . . . . . . . . . . 27114.11Etapa 4 Resultados da Extraccao . . . . . . . . . . . . . . . . . . . . . . . 27214.12Restricoes de esquema XTche para os tipos de topico Emigrante, Historia

    de Vida e Historia de Almanaque . . . . . . . . . . . . . . . . . . . . . . . . 27214.13Restricoes de esquema XTche para os tipos de associacao que envolvem os

    topicos Emigrante, Historia de Vida e Historia de Almanaque . . . . . . . . 27414.14Pagina principal do website do Museu da Emigracao . . . . . . . . . . . . . 27514.15Pagina sobre um emigrante . . . . . . . . . . . . . . . . . . . . . . . . . . . 27614.16Visao de um Passaporte. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276

    B.1 Regra XTche para a associacao orientar referente a um closed maplet pattern305B.2 Regra XTche para a associacao orientar referente a um open maplet pattern 306B.3 Regra XTche para a verificacao da existencia da associacao nacionalidade,

    com os papeis cidadao e nacao sendo desempenhados por Giovani e Brasil,respectivamente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307

    B.4 Regra XTche para definir que todo topico do tipo pessoa deve estar presenteem uma associacao do tipo orientar . . . . . . . . . . . . . . . . . . . . . . 309

    B.5 Regra XTche para definir que topico do tipo orientador nao pode ter nen-huma ocorrencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 309

    B.6 Regra XTche para definir opcionalidade . . . . . . . . . . . . . . . . . . . . 310

  • Lista de Tabelas

    2.1 Comparativo entre as Linguagens para Semantic Web . . . . . . . . . . . . 40

    7.1 Associacao one2one entre Autor e Instituicao . . . . . . . . . . . . . . . . . 1257.2 Associacoes MxN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127

    8.1 Comparativo entre KAON REVERSE e Oveia . . . . . . . . . . . . . . . . . 148

    12.1 Conceitos encontrados no domnio do Departamento de Informatica. . . . . 21312.2 Associacoes one2one . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22112.3 Associacoes MxN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22212.4 Teste de desempenho do Oveia . . . . . . . . . . . . . . . . . . . . . . . . . 229

    14.1 Conceitos encontrados no domnio do Museu da Emigracao. . . . . . . . . . 264

    xix

  • xx Lista de Tabelas

  • Captulo 1

    Introducao

    Querencia amadaplancies e serras

    Os bracos que me puxada linda mulher gauchaBeleza da minha terra

    Teixeirinha

    A norma ISO/IEC 13250 Topic Maps (Biezunsky, Bryan, and Newcomb, 1999) e uma normapara organizacao e representacao de conhecimento sobre um domnio especfico, que per-mite a descricao de temas e de seus relacionamentos. Steve Pepper (Pepper, 2000) definetema como um termo usado para designar alguma coisa, independentemente de ser algoconcreto (por exemplo, um automovel ou uma pessoa) ou apenas uma abstraccao mental(por exemplo, um sentimento).

    Um topic map1 pode ser visto como um conjunto organizado de topicos (representacaoformal de temas de um universo de discurso), contendo:

    uma estrutura hierarquica de topicos (definido pelas relacoes e-um ou contem);

    varios nomes para cada topico (ou tema de um ndice);

    ponteiros (ocorrencias) entre topicos e documentos externos (conectando os temasaos recursos de informacao);

    relacionamentos semanticos (associacoes) entre topicos.

    Um topic map e, basicamente, composto por topicos e associacoes que dao origem a umarede semantica estruturada que agrupa informacoes relacionadas sobre um certo domnio.

    1Quando se referir a norma ISO 13250 (Biezunsky, Bryan, and Newcomb, 1999) usa-se a notacao TopicMaps; por sua vez, quando esta a referir um mapa de topicos em particular, usa-se a notacao topic map(ou topic maps, no plural).

    1

  • 2 1. Introducao

    Essa rede e vista como um grafo: as associacoes sao os arcos, enquanto que os topicos saoos nodos.

    Tal como qualquer grafo, os Topic Maps podem ser representados em muitas linguagensdiferentes; dentre elas, podem ser escrito de acordo com uma sintaxe XML. XML TopicMaps (XTM) e definido por um DTD (Pepper and Moore, 2001b) que define a estruturados elementos que representam cada conceito da norma ISO 13250.

    No ambito de representacao de conhecimento (Knowledge Representation), os Topic Mapspossuem as seguintes caractersticas principais:

    Permitem estabelecer uma rede associativa estruturada entre os topicos;

    Organizam hierarquicamente os recursos num novo domnio de informacao/conheci-mento, relacionando-os com os topicos;

    Propiciam a interoperabilidade entre recursos de informacao distintos, atraves deuma visao conceptual integrada da ontologia sobre o domnio.

    De acordo com Ann Wrightson (Wrightson, 2001), Topic Maps e uma norma que permitea representacao de ontologias. Uma ontologia e uma forma de descrever um entendimentocomum partilhavel, sobre o tipo de objectos e relacionamentos entre eles, de tal formaque a comunicacao pode acontecer entre pessoas e sistemas. Em outras palavras, e aterminologia de um domnio, definindo o universo de discurso. As ontologias podem serusadas para:

    Criar um vocabulario estruturado e valido, que possa ser usado por uma comunidade;

    Definir e usar relacionamentos logicos e regras entre os temas, permitindo um usoeficiente de agentes inteligentes;

    Desenvolver, manter e publicar conhecimento (que pode sofrer mudancas rapida-mente) sobre um domnio (todo ou parte dele), fornecendo facilmente visoes distintassobre o mesmo.

    O desenvolvimento de uma ontologia basicamente envolve a catalogacao de um conjunto detemas e relacoes, usando e/ou implementando um tipo de documento (para intercambio)e ferramentas para processar tais documentos.

    A habilidade de conectar recursos, onde quer que eles estejam, e organiza-los de acordocom uma ontologia, torna a norma Topic Maps um componente chave para a gestao deconhecimento na Web.

    Os factos acima explicam a importancia de Topic Maps para descrever conhecimento emgeral; em particular, suas aplicacoes para a definicao de ontologias e um dos campos queesta em crescimento.

    Se por um lado esta introducao ajuda no entendimento de nosso interesse em Topic Maps naarea de representacao de conhecimento, por outro lado, os conceitos ate aqui introduzidos

  • 1.1. Restricoes em Topic Maps 3

    apontam para a necessidade indubitavel de mecanismos que possam garantir a correccaosemantica de Topic Maps.

    Para construir sistemas confiaveis, e crucial ter certeza sobre a completa correccao darede semantica subjacente. Assim como em outros campos, como linguagens formais eprocessamento de documentos, e aconselhavel validar a sintaxe e a semantica de topicmaps antes de seu uso. Esse e o foco principal desta tese, onde e proposta a linguagemchamada XTche, para definir esquemas e restricoes em Topic Maps.

    1.1 Restricoes em Topic Maps

    Um das principais vantagens de Topic Maps e a liberdade em sua criacao. A informacaopode ser facilmente representada num topic map, visto que a definicao de um topico emuito abrangente. Contudo, esta liberdade pode ser uma ameaca a consistencia de umtopic map. Consequentemente quando se esta a desenvolver um topic map, os projectistasnecessitam impor certas regras.

    A norma Topic Maps nao possui nenhuma forma de restringir os valores concretos e rela-tivos que topicos e associacoes podem tomar. Assim sendo, nao sugere nenhum mecanismopara validar topic maps de acordo com um conjunto de regras semanticas (ou de conteudo)definidas por utilizadores. Enquanto que a validacao estrutural decorre da sua definicaoformal estabelecida pela norma, o processo de validar e garantir a consistencia semanticade topic maps esta deixada a cargo do projectista. A validacao manual de um pequenotopic map pode ser realizada facilmente, porem quando trata-se de um topic map detamanho consideravel, tal processo torna-se praticamente impossvel, sendo fundamentalum mecanismo de validacao automatica.

    Uma linguagem formal necessita ser definida para a especificacao destas restricoes sobretopic maps ser compreendida e realizada por um processo automatizado.

    Um exemplo de uma validacao que pode ser efectuada em topic maps, pode ser: garantirque cada associacao do tipo orientacao so contem dois topicos participantes, onde umesta desempenhando o papel de orientador e o outro desempenha o papel de orien-tando.

    Uma linguagem chamada Topic Map Constraint Language (TMCL) (Nishikawa, Moore,and Bogachev, 2004) esta actualmente em vias de ser normalizada pelo do comite ISO/IECJTC1/SC34 para a definicao de restricoes em Topic Maps, sob a nomenclatura ISO 19756.O objectivo de TMCL e permitir uma especificacao formal de regras para documentostopic map. No momento, TMCL nao e uma linguagem concreta; pelo contrario, contemapenas indicacao dos requisitos que deverao ser contemplados pelas futuras versoes delinguagens concretas.

    Ha um consideravel numero de vantagens obtidas a partir da definicao de uma linguagemde restricoes para topic maps. Como mencionado anteriormente, uma linguagem de re-stricoes e usada para definir regras as quais irao garantir a consistencia de um topic map.Tal linguagem tambem auxilia a definicao da semantica de topic maps.

  • 4 1. Introducao

    1.2 A Historia deste doutoramento

    O incio dos trabalhos de doutoramento no ambito do grupo de Especificacao e Pro-cessamento de Linguagens (EPL) desta tese foi em Outubro de 2001, onde a semanticaestava em foco. Naquele momento, a preocupacao principal era garantir a semantica emdocumentos XML. Para este fim, na sequencia da tese de doutoramento de Jose CarlosRamalho (Ramalho, 2000) desenvolveu-se a linguagem XCSL (XML Constraint Specifica-tion Language) para permitir a especificacao de restricoes em documentos XML. Apos oXML Europe 20022, onde XCSL foi apresentada a comunidade XML e comparada com aslinguagens similares Schematron (Dodds, 2001) e XML Schema (Duckett et al., 2001) ,a pesquisa tomou um novo rumo.

    Em Agosto de 2002, deu-se incio a pesquisa sobre Topic Maps. Apos um levantamentobibliografico sobre o tema, partiu-se para a construcao de topic maps na sintaxe XTM. Oprimeiro topic map desenvolvido manualmente baseado no DTD de XTM representavao domnio do grupo de Especificacao e Processamento de Linguagens da Universidadedo Minho. O topic map foi construdo a partir dos dados sobre este grupo de pesquisacontidos num documento XML.

    Este processo manual levou a pensar na automatizacao da construcao. Para isso, desenvol-veu-se uma folha de estilos XSL que mapeava o documento XML original para o esquemade XTM. Com isso, toda vez que se desejava inserir novos elementos no topic map, bastavaacrescentar dados no ficheiro XML e processar a folha de estilos novamente.

    Entretanto, para outro caso de estudo uma biblioteca de filmes digitais seguiu-se estamesma abordagem de automatizacao e, portanto, foi necessario desenvolver uma novafolha de estilos, desta vez adequada a estrutura da fonte XML em questao. Neste passose verificou que esta nova folha tinha caractersticas muito similares a anterior. Entaodecidiu-se pela definicao de uma linguagem de especificacao de extractores de topic maps,onde o projectista define: (1) de onde sao extrados os dados do documento XML fonte,para a montagem do topic map desejado; (2) e o domnio, na ontologia a ser representada.Essa linguagem recebeu o nome de XSTM (XML Specification for Topic Maps), enquantoque o extractor foi chamado TM-Builder. Foi entao construdo um gerador de TM-Buildersa partir de especificacoes XSTM, o qual foi chamado de XSTM-P.

    Uma vez obtido um topic map, havia a necessidade de visualizar a informacao nele rep-resentado. Com essa finalidade em mente, no final de 2002 desenvolveu-se o Ulisses noambito da disciplina de Processamento Estruturado de Documentos dos cursos de Licen-ciatura Matematica e Ciencias da Computacao (LMCC) e Licenciatura em Engenhariade Sistemas (LESI) e Informatica da Universidade do Minho. O Ulisses e responsavel porproduzir uma navegacao Web sobre os topic maps criados e possuia, naquele momento,duas variantes: (I) geracao de paginas HTML estaticas para cada topico (atraves de umafolha de estilos XSL), representando as associacoes como links; (II) interpretacao do topicmap em tempo de navegacao atraves de uma CGI (Common Gateway Interface) escritaem Perl, gerando as paginas dinamicamente de acordo com a navegacao realizada peloutilizador.

    2XML Europe 2002 http://www.xmleurope.com/2002/

    http://www.xmleurope.com/2002/

  • 1.2. A Historia deste doutoramento 5

    A partir de entao, o TM-Builder foi aplicado em diversos casos de estudo, propiciandouma criacao automatica de topic maps a partir de fontes XML. Porem, no incio de 2003deparou-se com uma situacao onde a fonte era uma base de dados relacional. Nessecaso, houve a necessidade de fazer o descarregamento dos dados para um ficheiro XML.Isso serviu de motivacao para a definicao de um extractor que nao fosse limitado a umdeterminado tipo de fonte. Assim nascia o Oveia.

    O Oveia tornou possvel a extraccao de dados directamente de base de dados relacionais,pois alem de uma linguagem onde se especifica a ontologia do topic map desejado (XS4TM XML Specification for Topic Maps3), definiu-se uma linguagem para a especificacao dasfontes (XSDS XML Specification for Data Sources). Deste modo, o Oveia permite quevarias fontes possam ser consultadas para a criacao de um unico topic map, propiciandoassim a interoperabilidade entre as fontes.

    Este par de geradores supriu uma das carencias da comunidade de Topic Maps. Contudo,percebeu-se que uma carencia ainda maior derivava da ausencia de um mecanismo devalidacao semantica de topic maps. O grau de liberdade na criacao de um topic map e vistocomo uma das principais vantagens desta norma (permitindo a representacao de qualquerdomnio); contudo tambem pode ser visto como uma desvantagem, pois tal representacaopode ser muito ampla, tornando o topic map inconsistente. Isso trouxe a tona todo oprocesso realizado em XCSL, porem agora voltado para o domnio da representacao deconhecimento.

    A fim de impedir este tipo de inconsistencia, no final de 2003 decidiu-se pela definicao ecriacao de uma linguagem para a especificacao de regras que permitam validar semanti-camente um topic map. Desta forma, surgia XTche. Baseada nos requisitos de TMCL,XTche tem como objectivo permitir que o projectista defina um conjunto de restricoesa serem aplicadas em topic maps. Estas restricoes tambem podem ser utilizadas paradefinir a estrutura de uma famlia de topic maps. Alem disso, XTche possui uma sintaxebaseada em XML Schema, o que facilita a sua especificacao num ambiente visual utilizandoqualquer editor de XML Schema, como por exemplo o XML Spyr.

    Tema principal da investigacao durante todo o ano de 2004, a linguagem XTche foi formal-izada e submetida as duas principais conferencias de XML a nvel mundial, sendo aceitena XML Conference & Exhibition 2004 4 e na Extreme Markup Languages 2005 5.

    Entre as principais metas tracadas para XTche destaca-se a perspectiva de uma submissaoao comite ISO/IEC JTC 1/SC346, comite ISO responsavel pelo projecto de TMCL. Essasubmissao tera como objectivo contribuir com o desenvolvimento de TMCL, fornecendouma linguagem (sintaxe e semantica) e seu processador.

    De uma forma geral, os processadores desenvolvidos no ambito deste trabalho de doutora-mento TM-Builder, Oveia, XTche e Ulisses podem ser integrados, onde um processo

    3As linguagens XSTM e XS4TM possuem o mesmo nome, apenas se diferenciam pelas siglas paraidentificar que a primeira define a criacao de um TM-Builder, enquanto que a segunda especifica a extraccaono Oveia.

    4XML Conference & Exhibition 2004 http://www.xmlconference.org/xmlusa/2004/5Extreme Markup Languages 2005 http://www.extrememarkup.com/extreme/2005/6ISO/IEC JTC 1/SC34 http://www.y12.doe.gov/sgml/sc34/

    http://www.xmlconference.org/xmlusa/2004/http://www.extrememarkup.com/extreme/2005/http://www.y12.doe.gov/sgml/sc34/

  • 6 1. Introducao

    toma como entrada a sada do anterior. A agregacao de todos esses processadores de-fine o ambiente Metamorphosis, um ambiente que permite a especificacao de extraccao econstrucao de topic maps a partir de fontes heterogeneas, a sua validacao semantica e avisualizacao da rede semantica representada no topic map gerado.

    1.3 A Tese e os Contributos

    Topic Maps e uma norma para a representacao do conhecimento envolvido em um de-terminado universo de discurso, o domnio de aplicacao em causa, baseado numa redesemantica formada por topicos e associacoes. A principal vantagem de Topic Maps e o graude liberdade de expressao, possibilitando a descricao completa de qualquer domnio. Nessecontexto, a tese que aqui se defende e a de que e necessario um mecanismo de validacaopara garantir a preservacao da semantica de cada topic map, com base num conjunto derestricoes (estruturais e de conteudo) definidas por um especialista no domnio.

    A maior contribuicao desta tese e, portanto, a definicao de uma linguagem (sua sintaxe esua semantica) para a especificacao de restricoes a serem aplicadas em Topic Maps, como fito de estabelecer com precisao a sua conexao semantica. Alem da linguagem querespeita a proposta TMCL elaborada pela ISO completa esse contributo o ProcessadorXTche, um processador que gera TM-Validators a partir de especificacoes XTche. TM-Validator e o processador gerado responsavel por validar as restricoes em qualquer topicmap concreto.

    A linguagem utilizada neste doutoramento para a representacao de topic maps e XTM; alinguagem de restricoes proposta, XTche, para declarar as regras semanticas e baseada emXML Schema. Com isso, a composicao de regras na linguagem XTche pode ser realizadaem editores de XML Schema, o que facilita sua visualizacao.

    1.4 Estrutura da Dissertacao

    A dissertacao Topic Maps: da Sintaxe a Semantica divide-se em tres partes princi-pais. A primeira refere-se ao estado da arte, apresentando o universo de discurso ondea tese acima esta inserida. A segunda parte apresenta os contributos desta tese: umambiente que permite a definicao, extraccao, validacao e navegacao em topic maps. Emespecial, o processo de validacao e visto com mais profundidade, por ser considerado omaior contributo a comunidade cientfica. A parte final apresenta quatro diferentes casosde estudo que confirmam a utilidade da proposta aqui defendida.

    A Parte I e composta por quatro captulos. O Captulo 2 insere o leitor nas areas detrabalho onde se integram os Topic Maps: representacao de conhecimento e Semantic Web.O Captulo 3 e todo dedicado ao tema desta tese: Topic Maps conceitos subjacentes,definicoes e representacoes sao apresentados de acordo com a norma ISO 13250. Umrelacionamento entre Topic Maps e ontologias e discutido no Captulo 4.

    O Captulo 5 aborda o tema mais relevante para esta tese: a validacao semantica de

  • 1.4. Estrutura da Dissertacao 7

    Topic Maps, apresentando os motivos que levaram a definicao de uma metodologia, econsequentemente, a uma linguagem que permita uma verificacao completa do conteudosemantico de topic maps.

    A Parte II, composta por cinco captulos, inicia-se com a apresentacao do ambiente proposto o Metamorphosis no Captulo 6. Este ambiente e composto pelos modulos que saoapresentados nos captulos subsequentes.

    O Captulo 7 introduz o TM-Builder, o qual e considerado a origem deste ambiente. Umgerador de extractores de topic maps todo baseado em XML: a fonte de dados a serinterrogada (documentos XML), o processador implementado (em XSL) e o formato dotopic map gerado (em XTM). Originalmente, ate se chamou ao sistema de stylesheet de2o nvel devido ao facto de existirem, na realidade, 2 nveis de processadores XSL: umque extrai os dados das fontes para criar o topic map o TM-Builder; outro que geraesse extractor. O topic map e criado a partir de uma ontologia representada na linguagemXSTM, a qual define como a informacao, que esta armazenada nas fontes, deve ser mapeadapara um topic map.

    A fim de suprir determinadas carencias do TM-Builder, foi desenvolvido o Oveia. Conformeo que sera apresentado no Captulo 8, o Oveia permite a extraccao de topic maps em fontesheterogeneas de informacao, nao estando limitado apenas a documentos XML. A partir daespecificacao das fontes de dados em XSDS e de uma ontologia representada em XS4TM,o Oveia interroga directamente as fontes, extraindo os dados seleccionados e montando otopic map de acordo com a especificacao XS4TM.

    O Captulo 9 e visto como uma sequencia do Captulo 5. Na Parte I sera apresentadoa motivacao para uma linguagem de restricoes em Topic Maps, o que sera concretizadona Parte II com a definicao da linguagem XTche. Portanto, o Captulo 9 descreve oprojecto de uma linguagem que possibilite a especificacao formal de restricoes em TopicMaps, permitindo expressar condicoes de esquema, contextuais e de existencia sobre partesespecficas de um topic map. A partir de uma especificacao XTche, o seu processador(Processador XTche) cria um validador de topic maps (TM-Validator) que aplicara as regrasencontradas na especificacao. No final do processo, o validador e capaz de informar aoutilizador se o topic map esta de acordo com as regras ou nao; neste ultimo caso, os errossao reportados para um ficheiro XML.

    O Captulo 10 tem por objectivo a visualizacao eficiente do conhecimento encenado encon-trada em um topic map, devendo para isso permitir uma navegacao livre, mas estrutural,na especfica rede semantica. Isto e um assunto crtico porque topic maps podem contermilhoes de topicos e associacoes. Este captulo inicialmente apresenta algumas tecnicasde navegacao sobre Topic Maps, para posteriormente descrever o Ulisses e suas 3 variantespara a visualizacao de Topic Maps.

    Apos a finalizacao da parte responsavel por apresentar os contributos da tese, a Parte IIIfornece quatro casos de estudos que detalharao o funcionamento de cada um dos modulosdo Metamorphosis.

    A navegacao propiciada pelo Ulisses sobre o Mapa de Conceitos associado ao programade uma disciplina universitaria e discutida no Captulo 11. Alem disso, e realizado uma

  • 8 1. Introducao

    comparacao da norma Topic Maps com os Mapas de Conceitos.

    O Captulo 12 exibe o TM-Builder e o Oveia na extraccao de um Mapa do Site do Depar-tamento de Informatica da Universidade do Minho. Seu objectivo principal e mostrar aextraccao de topic maps para usa-los na representacao do conhecimento que encontra-se nomapa de um site. Portanto, e a aplicacao desses modulos do Metamorphosis na EngenhariaWeb, mostrando a aplicacao da variante do Ulisses que navega sobre a BD Ontologia.

    O Captulo 13 mostra o processo de validacao semantica realizado pelo XTche para umtopic map que representa o domnio de uma aplicacao de comercio electronico. Este casode estudo foi completamente baseado numa proposta encontrada nos requisitos de TMCL.Os editores da futura norma ISO 19756 sugerem um caso onde a linguagem para restricaoem Topic Maps deva ser aplicado, permitindo a definicao de todas as regras necessarias.Portanto, o captulo em questao mostra como se especifica, na linguagem XTche, cadatipo de restricao sobre um topic map que representa esse domnio.

    Depois da apresentacao de um caso de estudo para cada componente do Metamorpho-sis, mostrando que eles podem ser usados independentemente, o Captulo 14 apresentaaplicacao de todo o Metamorphosis ao caso do Museu Virtual da Emigracao. O Museu daEmigracao contem no seu espolio fontes de informacao compostas por documentos XML epor uma base de dados relacional. A funcao do Metamorphosis e propiciar uma visao ho-mogenea destes recursos atraves da criacao de um topic map que represente este universode discurso. Para isso, usa-se o Oveia para a extraccao do topic map, a linguagem XTchepara valida-lo e o Ulisses para a navegacao sobre o conhecimento do domnio. O resultadoe uma visao integrada do Museu da Emigracao, de acordo com a ontologia especificadapelo projectista.

    A conclusao recorda a tese, resume os objectivos alcancados com este trabalho de doutora-mento, ressaltando a sua contribuicao principal, e examina possveis areas para trabalhosfuturos.

    O Apendice A define as regras para a validacao de uma especificacao XTche que devemser respeitadas pelo projectista no momento da especificacao. Todas as regras estao im-plementadas no Validador de XTche processador apresentado no Captulo 9 responsavelpor conferir se o codigo criado pelo projectista pertence a linguagem XTche.

    O Apendice B descreve a comparacao das linguagens de especificacao de restricoes emTopic Maps: XTche, AsTMa! e OSL. Sao abordados varias situacoes onde e necessariaa intervencao de um mecanismo que garanta a validade semantica de um topic map emostrado como cada linguagem proporciona este tratamento. Este apendice e um comple-mento ao Captulo 9, onde ha uma seccao que faz um resumo da comparacao encontradano apendice em questao.

  • Parte I

    Topic Maps: Definicao eRepresentacao

    9

  • Captulo 2

    Representacao de Conhecimento eSemantic Web

    As armas e os baroes assinaladosque da ocidental praia lusitana

    por mares nunca de antes navegadospassaram ainda alem da taprobana

    Lus Vaz de Camoes

    Considerando a maneira usual que os utilizadores manuseiam os navegadores da WorldWide Web (Web), o processo baseia-se em saltar de uma pagina a outra baseado empalavras-chaves, ligacoes Web (links) ou em um ndice.

    O utilizador le e interpreta o significado do documento encontrado o qual foi estruturadode uma forma qualquer pelo seu criador decidindo se tal documento e o que ele buscava;caso negativo, uma nova procura devera ser realizada.

    Todavia, o conhecimento no documento nao estara necessariamente disponvel ao uti-lizador: pode ser requerido uma base solida sobre o assunto para entender a informacaoque o documento apresenta. Por exemplo, um documento sobre desnaturacao das protenasem biologia contem um conhecimento que a maioria das pessoas nao consegue extrair. Oconhecimento nao pode ser capturado e extrado porque estas pessoas nao consegueminterpretar as palavras contido no documento, ou seja, elas nao consegues decifrar o sig-nificado pretendido. E por que? Porque tais pessoas nao possuem um modelo conceptualsuficientemente rico sobre este determinado domnio.

    Por outro lado, os computadores sao uteis para organizacao e processamento de dados, tipi-camente mantendo as informacoes em hierarquias rgidas, enquanto a mente humana tem ahabilidade especial de ligar pequenas unidades de informacao de forma aleatoria. Com basenesta constatacao, a segunda geracao da Web, cunhada como Semantic Web (Berners-Lee,Hendler, and Lassila, 2001), envolve a disposicao dos conceitos e de seus relacionamentosdentro de um universo de discurso de forma que nao apenas a sintaxe determine uma busca:

    11

  • 12 2. Representacao de Conhecimento e Semantic Web

    a semantica seria fundamental. Assim, um computador poderia representar associacoesentre coisas que poderiam parecer nao relacionadas, mas que de facto, compartilham algumrelacionamento.

    Os motores de busca actuais, baseados em palavras-chave, requerem que o utilizador sejaseu interpretador semantico, isto e, o utilizador deve compreender o conhecimento contidoem um documento sem uma interpretacao de sua semantica realizada por um programa.

    Este captulo discute formas de solucionar esta situacao apresentando inicialmente, naseccao 2.1, o que se entende no ambito desta tese por dado, conhecimento e informacao. Aseccao 2.2 mostra algumas metodologias para representar abstractamente o conhecimento.Uma visao geral sobre Semantic Web encontra-se na seccao 2.3. Por fim, serao introduzidasalgumas das principais linguagens para a representacao de conhecimento mais utilizadaspara obter-se a Semantic Web (seccao 2.4).

    2.1 Dado, Informacao e Conhecimento

    Os termos dado, informacao e conhecimento sao usualmente utilizados de formas mal-definidas, o que e aceitavel em conversas coloquiais. Contudo, tal uso pode resultar emuma destruicao de distincoes tecnicas crticas, a ponto que esses termos possam ser vistoscomo sinonimos.

    Dados e conhecimento sao simplesmente pontos finais em uma linha contnua, como sugerea Figura 2.1. No lado esquerdo, encontra-se o dado; do lado direito, o conhecimento (Parkand Hunting, 2003).

    Figura 2.1: A linha contnua da interpretacao. Fonte: Jack Park (2003).

    O conhecimento e uma modelacao simbolica complexa (uma representacao) de algumaspecto de um universo de discurso (isto e, o que uma pessoa pode falar sobre sereshumanos); dado e uma modelacao simbolica simples. A seguinte equacao expressa orelacionamento entre conhecimento e dados:

    Conhecimento = Dado + Interpretacao

    O termo informacao e usado nesta tese no sentido mais tecnico, como Frost (Frost, 1986)derivou de Shannon (Shannon, 1974):

    Information is a measure of the extent to which a piece of knowledge tells yousomething which you did not previously know.

  • 2.2. Estruturando o Conhecimento 13

    Portanto, a informacao contida em algum dado depende do que uma pessoa sabe sobre otema e, em geral, isto pode variar de indivduo para indivduo. A informacao representamudanca no conhecimento, pois ela altera o conhecimento sobre um determinado tema:

    Novo Conhecimento = Velho Conhecimento + Informacao

    A partir disto, pode-se definir interpretacao como o mapeamento entre um conjunto estru-turado de dados e um modelo de algum conjunto de objectos em um universo de discursocom respeito ao significado pretendido para estes objectos e os relacionamentos entre osobjectos.

    Interpretacao, por consequencia, e o mapeamento entre notacoes: por exemplo, sequenciasde caracteres de algum alfabeto (para textos) ou algum conjunto de codigos binariosdefinidos (para graficos, vdeo, etc.), e o que tais notacoes pretendem significar em umuniverso de discurso definido para humanos. As notacoes sao smbolos sem sentido amenos que elas tenham uma interpretacao, isto e, mapeados para um objecto em ummodelo. Interpretacao e semantica: e interpretar as notacoes sintacticas de acordo comsua semantica pretendida.

    Tipicamente, o modelo existe na mente de um humano. Quando os humanos entendem,eles simbolicamente representam os objectos de um domnio em algum modelo, assim comoos relacionamentos entre esses objectos. Os humanos tem a semantica do domnio em suasmentes, a qual e bem estruturada e interpretada.

    Na incapacidade de abarcar e manipular a complexidade do todo, o humano necessita dearranjar modelos (representacao reduzida/parcial e normativa) para entender e trabalhara realidade.

    Quando um humano le um documento textual, ele le as notacoes nas paginas e interpreta-as de acordo com o seu modelo mental; isto e, ele fornece a semantica (o significado). Se haum desejo em difundir o conhecimento contido em um documento, e necessario torna-lodisponvel a outros humanos, esperando que eles fornecam um interpretador semantico(seus modelos mentais). Contudo, nao ha conhecimento neste documento sem inter-pretacao; a interpretacao extrai o conhecimento a partir das notacoes contidas em umapagina.

    Se o desejo e que um computador possa auxiliar na difusao do conhecimento contido emum documento, e necessario automatizar parcialmente o processo de interpretacao, o quesignifica que e necessario construir e representar em uma forma utilizavel por computadoresalguma porcao de nosso modelo mental.

    2.2 Estruturando o Conhecimento

    Actualmente, diferentes solucoes tem sido apresentadas para o problema de como estru-turar o conhecimento existente em um domnio; porem, muitas tem sido rejeitadas. Ha,contudo, algumas que tem prevalecido e causado uma boa impressao em todas as areasonde o conhecimento e abundante.

  • 14 2. Representacao de Conhecimento e Semantic Web

    Esses sistemas de organizacao de conhecimento sao mecanismos que permitem uma estru-turacao da informacao e podem ser empregados em casos onde exista uma grande coleccaode dados, como museus, bibliotecas e arquivos.

    Nesta seccao serao apresentados as principais formas de organizacao de conhecimento, osquais podem ser divididos nas seguintes classes:

    Tipo universal para representacao interna da informacao :

    Estruturas de Facetas (Feature Structure);

    Sistemas baseados em listas de termos: normalmente este tipo de lista tem uma es-trutura simples para a representacao de conhecimento. Os exemplos mais conhecidossao:

    Dicionarios; Indices;

    Sistemas baseados em grafos: determinam associacoes entre os termos atraves de umconjunto de relacoes semanticas. Como exemplos, tem-se:

    Taxonomias; Thesaurus; Ontologias;

    Redes Semanticas (Semantic Network).

    Estas formas de representacao do conhecimento, que sao apresentadas nas subseccoesseguintes, estao na origem da norma Topic Maps (Biezunsky, Bryan, and Newcomb, 1999)tal como ela hoje se apresenta.

    2.2.1 Estruturas de Facetas

    Em sua tese de doutoramento, Jose Joao Almeida (de Almeida, 2003) disse que a utilizacaode um tipo universal para representacao interna da informacao a manipular tem sido umaconstante de quase todos os ambientes.

    Para determinar qual seria esse tipo universal, varios pontos devem ser levados em con-sideracao, como por exemplo o uso de um sistema tipado ou nao (Lamport and Paulson,1999), assim como estudar as consequencias a nvel do poder expressivo, da complexidadede implementacao e a nvel da facilidade de ligacao com outros ambientes.

    Com base nestes pontos, as Estruturas de Facetas (EF) ou Feature Structures apresentam-se como uma boa aproximacao para a representacao interna da informacao. As EF foramintroduzidas por Martin Kay (Kay, 1979) e rapidamente se tornaram populares como modode representar informacao em areas de processamento de linguagem natural.

  • 2.2. Estruturando o Conhecimento 15

    Ao descrever informacao usando EF, ha uma necessidade de arrumar a informacao emcompartimentos que associam um nome de atributo a um valor. Esse valor pode seratomico ou uma outra EF. Considere-se o seguinte exemplo, correspondente a informacaoligada a palavra comprador (de Almeida, 2003):

    1 [ name -> comprador

    2 genero -> masculino

    3 cat -> adjectivo_nomeComum

    4 numero -> singular

    5 radical -> [

    6 name -> comprar

    7 Cla -> v. tr.

    8 Conjugac~ao -> 1

    9 Fonetica -> k~oprar

    10 FrasesExemplo ->

    15 Derivadas -> [

    16 ...

    17 ...

    A informacao contida nesta FS esta compartimentada em varios atributos. Certos atribu-tos tem valores atomicos (exemplo genero) outros tem valores complexos (exemplo radical).

    2.2.2 Dicionarios

    Um dicionario1 e uma coleccao alfabetada dos vocabulos de uma lngua ou de qual-quer ramo do saber, com a respectiva significacao, caracter fonetico, morfico e sintactico(lexico). Pode ser visto tambem como um mapeamento de termos para a sua descricao oudefinicao.

    As principais caractersticas de dicionarios sao:

    e um documento simples para definicao de termos que requerem esclarecimentos, demodo a melhorar a comunicacao e a reduzir o risco de mal-entendidos;

    e criado durante o levantamento de requisitos, e e continuamente aperfeicoado emcada ciclo de desenvolvimento, a medida que novos termos sao encontrados;

    e feito em paralelo as especificacoes de requisitos, aos casos de uso e ao modeloconceptual.

    Um dicionario pode ser visto como um vocabulario explicativo dos termos, conceitos,palavras, expressoes, frases utilizadas no domnio de aplicacao em questao e que podemdar margens a interpretacoes erradas ou que sejam desconhecidas do publico alvo e naotenham sido explicados no texto.

    1Para uma definicao do termo dictionary, veja The American Heritage Dictionary of the English Lan-guage: Fourth Edition, em http://www.bartleby.com/61/88/D0208800.html Acedido em 15/11/2004

  • 16 2. Representacao de Conhecimento e Semantic Web

    Um tipo de dicionario e o glossario. Glossario2 e um vocabulario em que se da a explicacaode certas palavras antigas ou pouco conhecidas sobre um determinado tema. Tambem podeser visto como um dicionario de termos tecnicos de uma arte ou ciencia.

    Em vez de um apontador para uma ocorrencia de um conceito, como faz um ndice, umdicionario apenas fornece a definicao do conceito. Ele pode conter informacoes adicionais,tais como as referencias veja (see) e veja tambem (see also), ou fornecer um guia sobre ouso ou pronuncia da linguagem em questao.

    2.2.3 Indices

    Um ndice3 e uma lista em ordem alfabetica dos termos relevantes que surgem em umdocumento, ou conjunto de documentos, mapeados para a sua localizacao nos referidosdocumentos, ou seja, o ndice mapeia os termos para os locais onde aparecem a informacaosobre eles.

    Por exemplo, em um livro indica-se a pagina (ou paginas) onde cada termo e mencionado;numa biblioteca, indica-se a posicao (sala, estante, prateleira) de cada obra descrita peloseu ttulo, autor, ou assunto. Ja numa base de dados, associa-se a chave de cada registocom a sua localizacao fsica no disco. No caso de um ndice remissivo em um livro, cadaconceito e associado com a lista de paginas onde tal conceito foi definido.

    Ao contrario dos 3 modelos de representacao de conhecimento que serao apresentados aseguir os quais descrevem relacoes entre termos o ndice mapeia termos em posicoes(o que tambem facilita a busca).

    2.2.4 Taxonomias

    Taxonomia (do Grego: taxis significa organizacao ou divisao e nomos significa lei) e aciencia de classificacao.

    Uma boa taxonomia4 apresenta somente uma dimensao. Em taxonomia, as categoriasdevem ser mutuamente exclusivas, assim como um conceito individual deve ser encontradoem um local somente. A taxonomia deve ser exaustiva; todas as possibilidades devem serincludas.

    Uma das mais conhecidas taxonomias e a inventada por um cientista sueco, Carolus Lin-naeus (1707-1778), na qual ele classifica os organismos vivos (Prescott, Harley, and Harley,

    2Para uma definicao do termo glossary, veja The American Heritage Dictionary of the English Language:Fourth Edition, em http://www.bartleby.com/61/66/G0156600.html Acedido em 15/11/2004

    3Para uma definicao do termo index, veja The American Heritage Dictionary of the English Language:Fourth Edition, em http://www.bartleby.com/61/7/I0100700.html Acedido em 15/11/2004.

    4Para uma definicao do termo taxonomy, veja The American Heritage Dictionary of the English Lan-guage: Fourth Edition, em http://www.bartleby.com/61/54/T0065400.html Acedido em 15/11/2004.e um sistema de classificacao, organizando entidades/conceitos. Enquanto a ontologia descreve com-pletamente o domnio e os diferentes conceitos que compoem este domnio, uma taxonomia descreve orelacionamento hierarquico entre os conceitos, identificando os membros das classes e subclasses

  • 2.2. Estruturando o Conhecimento 17

    1996). Considera-se que o seu trabalho esta na origem da botanica moderna e da nomen-clatura zoologica.

    Uma classificacao divide os conceitos que compoem um domnio em diferentes classes, as-sim como define os relacionamentos entre estes diferentes conceitos. Esses relacionamentosdizem muito sobre o significado dos conceitos individuais.

    Um exemplo de uma taxonomia e apresentado na Figura 2.2. Esta taxonomia representauma hierarquia dos conceitos encontrados no domnio do planeta Terra. As relacoes estaodefinidas atraves de ligacoes entre os conceitos: os conceitos inferiores sao sub-classes dosconceitos acima deles. As sub-classes herdam as caractersticas de suas classes. Assimsendo, a partir da taxonomia da Figura 2.2 pode-se dizer que um humano e um mamfero,que por sua vez, e um animal5.

    Figura 2.2: Uma taxonomia para o planeta Terra.

    Em uma taxonomia, as sub-classes herdam propriedades das classes acima delas (super-classes). Por exemplo, qualquer animal pode ser considerado um ser vivo; mas nao pode,ao mesmo tempo, ser planta ou animal; isto significa que ambos partilham as propriedades

    5Figura adaptada a partir da original encontrada em http://www.labschool.org/hondasite/taxonomy.html

    http://www.labschool.org/hondasite/taxonomy.htmlhttp://www.labschool.org/hondasite/taxonomy.html

  • 18 2. Representacao de Conhecimento e Semantic Web

    dos organismos, mas depois cada um tem suas caractersticas distintas. Todos os filhos deum nodo pai sao disjuntos. Todos os nodos filhos herdam informacoes dos nodos pai. Umnodo filho pode ter mais propriedades que o seu nodo pai; e, no mnimo, ele tera todas aspropriedades de seu nodo pai.

    2.2.5 Thesauri

    Thesauri6 basicamente extende as taxonomias a fim de torna-las mais completas para adescricao de um domnio, permitindo outros tipos de relacoes entre as classes, alem deuma simples hierarquia (Garshol, 2004a).

    Alem da sua capacidade de organizacao, um thesaurus tambem tem um valor didatico,porque utiliza conceitos especficos da area de conhecimento que contempla e permite, pormeio das relacoes entre os termos, uma melhor compreensao da area.

    Um thesaurus pode entao ser visto como uma rede de termos interrelacionados atraves deum conjunto (geralmente nao muito grande) de relacoes semanticas dentro de um domnioparticular. A rede contem referencias cruzadas e fornece as associacoes entre eles. Dadoum certo termo, o thesaurus indica quais os termos que tem o mesmo significado, qual asuper-classe, as sub-classes, etc.

    Em suma e de acordo com a norma ISO 2788, 1986:2 standard (1986) (ISO, 1986):

    Thesaurus is the vocabulary of a controlled indexing language, formally or-ganized so that the a priori relationships between concepts (for example asbroader and narrower) are made explicit.

    Um thesaurus e um ndice controlado utilizado tanto na indexacao, quanto na recuperacaode documentos. Situando-se entre a ontologia (qualquer relacao entre termos) e a taxono-mia (relacao hierarquica), o thesaurus descreve relacoes de sinonimia e hierarquias, dasquais se destacam:

    Uso (Use): refere outro termo que deve ser seleccionado ao inves de um certo termo.Significa que ambos os termos sao sinonimos;

    Termo Generico ou Superior: relacao hierarquica que indica a super-classe (termogenerico);

    Termo Especfico: relacao hierarquica que indica as sub-classes (termos especficos);

    Termo Relacionado: refere outro termo relacionado de forma nao hierarquica que estarelacionado com um certo termo, sem ser um sinonimo (Uso);

    Nota de Contexto (Scope Note): um texto anexado ao termo explicando seu signifi-cado dentro do thesaurus.

    6Para uma definicao do termo thesaurus, veja The American Heritage Dictionary of the English Lan-guage: Fourth Edition, em http://www.bartleby.com/61/6/T0160600.html Acedido em 15/11/2004.

  • 2.2. Estruturando o Conhecimento 19

    Um exemplo de um thesaurus esta descrito na Figura 2.3. Este thesaurus e baseado nataxonomia da Figura 2.2, referindo-se tambem aos conceitos encontrados no domnio doplaneta Terra. Alem das relacoes definidas na taxonomia (do tipo e-um), este thesauruscontem relacoes do tipo termo relacionado (ligando termos com algo em comum) e uso(apresentando um uso de uma classe).

    Figura 2.3: Um thesaurus para o planeta Terra.

    Um bom exemplo de thesaurus e o da UNESCO(UNESCO, 1995). O Thesaurus UNESCOe um vocabulario controlado7 desenvolvido pela University of London Computer Centre(ULCC) com permissao da United Nations Educational, Scientific and Cultural Organi-zation (UNESCO), que inclui a indexacao e pesquisa nas diversas areas do conhecimentocontidas nas bases de dados da UNESCO.

    7Vocabulario controlado e um documento que especifica quais sao os termos preferidos para seremusados domnio em questao. Padronizando os termos, e possvel evitar problemas de inconsistencia nasbuscas realizadas. Por exemplo, quando se procura pela palavra-chave professores de historia, podemnao aparecer resultados relevantes porque o documento que continha a informacao desejada possui o termodocentes ao inves de professores.

  • 20 2. Representacao de Conhecimento e Semantic Web

    2.2.6 Ontologias

    Hoje em dia, os sistemas convencionais de consulta utilizam tecnicas de base sintactica so-bre uma forma de concordancia lexica, mais do que uma aplicacao da base de conhecimentodo campo de interesse. Em muitos domnios, o utilizador esta interessado em encontrarinformacao onde a relevancia dos documentos nao pode ser medida atraves do uso desistemas de busca por palavras chaves. Neste contexto, algumas propostas envolvem acriacao de metadados que envolvem a nocao de ontologia.

    Dentro de uma mesma area podem ser encontradas diferentes definicoes e caracterizacoesde ontologia8. Na area de Inteligencia Artificial, Guarino define a ontologia como umacaracterizacao axiomatica do significado do vocabulario logico (Guarino, 1997); para Sowa,a ontologia define os tipos de coisas que existem no domnio de uma aplicacao (Sowa, 2000).

    Segundo Gruber (Gruber, 1993), uma ontologia e uma especificacao explcita de uma con-ceptualizacao. Tambem pode ser entendida como um conjunto de termos hierarquicamenteestruturados para a descricao de um domnio, o qual pode ser utilizado como um esqueletofundamental para uma base de conhecimento.

    Na area de Sistemas de Informacao, na qual se encaixa esta dissertacao, ontologia e definidacomo um conjunto de conceitos e termos ligados entre si (numa rede) que podem ser us-ados para descrever alguma area do conhecimento ou construir uma representacao parao conhecimento (Swartout and Tate, 1999). Segundo Chandrasekaran (Chandrasekaran,1999), ontologias sao teorias de conteudo sobre os tipos de objectos, propriedades de ob-jectos e relacionamentos entre objectos que sao possveis em um domnio de conhecimentoespecfico.

    Uma ontologia tambem pode ser vista como uma teoria logica para descrever o significadopretendido de um vocabulario formal, isto e, seu comprometimento com uma conceptu-alizacao particular de um domnio. Estas incluem estruturas que permitem manipulartermos de uma forma muito eficiente e util para o utilizador e mecanismos de validacaopara comunicacao inter-programas. A importancia de seu uso e devida a capacidade derepresentar hierarquias de classes de objectos (taxonomias) e seus relacionamentos.

    As ontologias colaboram no sentido de se obter uma Web onde os recursos disponveis saoacessveis nao somente por seres humanos, mas tambem por processos automatizados. Elaspodem ser vistas como metadados que representam explicitamente a semantica dos dados,de forma processavel por maquina, tornando-se factor chave para o desenvolvimento daSemantic Web. Isto reflecte a visao de Berners Lee (Berners-Lee, Hendler, and Lassila,2001).

    Os sistemas de raciocnio baseados em ontologias podem operacionalizar esta semanticano sentido de agregar varios servicos a Web. As ontologias ajudam as pessoas e os com-putadores tanto a aceder a informacao que eles precisam quanto a comunicarem-se entre side forma efectiva. Isto e possvel tornando explcita a ligacao entre a forma e o conteudoda informacao. As ontologias tem, portanto, um papel crucial no sentido que permitem

    8Para uma definicao do termo ontology, veja The American Heritage Dictionary of the English Language:Fourth Edition, em http://www.bartleby.com/61/32/O0083200.html Acedido em 15/11/2004.

  • 2.2. Estruturando o Conhecimento 21

    o acesso, a interoperabilidade e a comunicacao baseados em conteudo, fornecendo a Webum nvel de servico qualitativamente novo.

    O desenvolvimento de ontologias ira fornecer o mecanismo de construcao da parte semanticada Semantic Web. O modelo em camadas proposto por Berners-Lee (Berners-Lee, 2000)tem sido acei