You are on page 1of 22

Ontologias: conceitos, usos, tipos, metodologias, ferramentas e linguagens

E. A. M. Morais A. P. L. Ambrsio

Technical Report

INF_001/07 2007 -

Relatrio Tcnico

December

Dezembro

The contents of this document are the sole responsibility of the authors. O contedo do presente documento de nica responsabilidade dos autores.

Instituto de Informtica Universidade Federal de Gois


www.inf.ufg.br

Ontologias: conceitos, usos, tipos, metodologias, ferramentas e linguagens


Edison Andrade Martins Morais
edison@inf.ufg.br

Ana Paula L. Ambrsio


apaula@inf.ufg.br

Abstract. The objective of this technical report is describe the ontologie concepts, its main uses, types, development methodologies, specication tools and representation languages. Keywords: Ontologie. Resumo. O objetivo deste relatrio tcnico descrever os conceitos de ontologia, seus principais usos, tipos, metodologias de desenvolvimento, ferramentas de especicao e linguagens de representao. Palavras-Chave: Ontologia.

Introduo

Atualmente, o volume de dados disponveis, principalmente na Internet, muito grande, e vem crescendo rapidamente [29]. Devido a estas altas taxas de crescimento, torna-se necessria a utilizao de tcnicas para melhoria no tratamento e organizao destes dados, atuando principalmente na sua seleo, processamento, recuperao e disseminao [2]. Segundo Almeida et al. [2], tcnicas de tratamento e organizao de dados podem ser classicadas de diversas formas, por exemplo, a partir de seus termos, em glossrios ou dicionrios, por classicao ou categorias, atravs de taxonomias, ou a partir de conceitos e seus relacionamentos, utilizando ontologias, tesauros ou redes semnticas. Ontologia uma tcnica de organizao de informaes que vem recebendo especial ateno nos ltimos anos, principalmente no que diz respeito representao formal de conhecimento [22] [24]. Geralmente criadas por especialistas, tendo sua estrutura baseada na descrio de conceitos e dos relacionamentos semnticos entre eles, as ontologias geram uma especicao formal e explcita de uma conceitualizao compartilhada [4]. Uma razo para a popularidade das ontologias existe devido grande promessa de compartilhamento e entendimento comum de algum domnio de conhecimento que possa ser comunicado entre pessoas e computadores. Neste sentido, ontologias tm sido desenvolvidas para facilitar o compartilhamento e reutilizao de informaes [21].

Mestrando em Cincia da Computao INF/UFG. Orientadora INF/UFG.

Ontologias: conceitos, usos, tipos, metodologias, ferramentas e linguagens

A comunidade da Internet acredita que, em um futuro prximo, todo negcio da rede dever fornecer a semntica de suas pginas atravs de uma ontologia [15], pois as ontologias oferecem uma Lngua Franca que permite que mquinas processem e integrem recursos de Internet de maneira inteligente, possibilitando buscas rpidas e acuradas e facilitando a comunicao entre dispositivos heterogneos na rede. O objetivo deste relatrio tcnico descrever os conceitos de ontologia, seus principais usos, tipos, metodologias de desenvolvimento, ferramentas de especicao e linguagens de representao. Este relatrio est organizado da seguinte forma: a Seo 2 descreve o conceito de ontologia em seu sentido losco e relacionado cincia da computao, seus principais usos benefcios e problemas, os tipos de ontologias existentes, e uma forma de constru-las; A Seo 3 descreve os principais usos, benefcios e problemas relacionados s ontologias; A Seo 4 descreve os tipos de ontologias existentes; A Seo 5 descreve as principais metodologias, ferramentas e linguagens utilizadas na Construo de Ontologias; A concluso est descrita na Seo 6.

2
2.1

Ontologia
Sentido Filosco

Em seu sentido losco, ontologia possui diversas denies. De acordo com Almeida et al. [2], o ramo da metafsica1 que estuda os tipos de coisas que existem no mundo. A palavra derivada do grego ontos, ser, e logos, palavra. Entretanto, seu termo de origem a palavra aristotlica categoria, termo este utilizado no sentido de classicao. Neste sentido, Aristteles2 apresenta categorias que servem de base para classicar entidades, e introduz o termo differentia (Figura 1) para propriedades diferentes na classicao de espcies de mesmo gnero (categoria).

Figura 1: Ontologia no Sentido Filosco Segundo Blackburn et al. [5], tambm a parte da losoa que trata da natureza do ser, ou seja, da realidade, da existncia dos entes e das questes metafsicas em geral. J Smith [45],
um ramo da losoa que estuda o mundo como ele , ou seja, o estudo do ser ou da realidade. a cincia do ser como ser, ou dos princpios e das causas do ser e de seus atributos essenciais. Ela abrange ainda o ser imvel e incorpreo, princpio dos movimentos e das formas do mundo, bem como o mundo mutvel e material, mas em seus aspectos universais e necessrios [5]. 2 Filsofo grego nascido em Estagira, colnia grega da Trcia, no litoral setentrional do mar Egeu, em 384 a.C, foi um dos maiores pensadores de todos os tempos e considerado o criador do pensamento lgico [5].
1

Ontologias: conceitos, usos, tipos, metodologias, ferramentas e linguagens

refere-se ao termo como a cincia do o que ? ou o estudo das coisas que existem, da descrio de tipos e estruturas de objetos, suas propriedades, eventos, processos e relacionamentos em cada rea do mundo real. Entretanto, apesar dos lsofos utilizarem ontologias durante anos para descrever domnios naturais do mundo, ainda no h um consenso, principalmente na rea de Cincia da Computao, sobre a real semntica do termo ontologia [25].

2.2

Ontologias e Cincia da Computao

Existem na literatura vrias denies para o termo ontologia em Cincia da Computao. Gruber [21] arma que ontologia uma especicao de uma conceitualizao, ou seja, uma descrio de conceitos e relacionamentos que existem entre estes conceitos. Esta denio genrica, bastante diferente do sentido losco de ontologia, considera as ontologias apenas como um conjunto de conceitos e denies. Uma denio mais especca pode ser encontrada em [7]. Neste caso, uma ontologia denida como uma especicao formal e explcita de uma conceitualizao compartilhada, onde especicao formal quer dizer algo que legvel para os computadores, explcita so os conceitos, propriedades, relaes, funes, restries e axiomas explicitamente denidos, conceitualizao representa um modelo abstrato de algum fenmeno do mundo real e compartilhada signica conhecimento consensual. Entretanto, apesar de apresentarem diferentes denies, tanto [21], quanto [7], armam que o principal propsito da construo de ontologias permitir compartilhamento e reutilizao de conhecimento. Logo, para permitir compartilhamento e reutilizao de conhecimento, em Cincia da Computao, importante que os conceitos, presentes nas ontologias possuam de fato uma especicao formal. Neste sentido, [24] sugere uma maneira de criar denies formais para conceitos. Seja a estrutura <D,W > tal que D representa o domnio em questo e W representa todos os conceitos existentes em D. Esta estrutura chamada de Espao de Domnios. Uma conceituao C uma estrutura <D,W,R> sendo R o conjunto de relaes escolhidas como pertinentes para representar este domnio. Desta forma, uma conceituao dene uma estrutura pretendida do mundo, representada por S. Do ponto de vista computacional, para que uma conceituao possa ser efetivamente usada, ela precisa ser especicada em uma determinada linguagem L. A estrutura de S , ento, mapeada para constantes e predicados da linguagem L, seguindo uma funo de interpretao. Portanto, no sentido denido por [24], as ontologias passam a ser mecanismos de especicao parcial, tornando-se representativas apenas em relao a um determinado domnio e no com a completude do conhecimento. Ao conjunto destes elementos de um domnio que podem ser representados em uma ontologia dado o nome de Universo de Discurso [25]. Na prtica, uma ontologia dene uma linguagem, conjunto de termos, que ser utilizada para formular consultas [2]. A ontologia dene as regras de combinao entre os termos e seus relacionamentos, estes relacionamentos so criados por especialistas, e os usurios formulam consultas usando os conceitos especicados.

Ontologias: conceitos, usos, tipos, metodologias, ferramentas e linguagens

Principais Usos, Benefcios e Problemas relacionados s Ontologias


Ontologias podem ser utilizadas em vrias reas da Cincia da Computao, dentre elas: Recuperao de informaes na Internet Projetos relacionados recuperao de informao na Internet, dentre eles, OntoSeek [6], que recupera informaes de catlogos de produtos on-line utilizando um sistema de agentes inteligentes, o Ontoweb (http://www.ontoweb.com.br), que um sistema de anlise de informaes na Internet, que possibilita uma pesquisa contextualizada nas fontes acessadas, o SEAL (Semantic Portal) [35], que permite o desenvolvimento de portais semnticos baseados em ontologia, ou o OntoSearch [42], que permite a reutilizao de ontologias na Web-Semntica [4] provendo estruturas de busca em um grande banco de dados de ontologias e outros documentos semnticos na Internet. Processamento de Linguagem Natural Projetos de processamento de linguagem natural [19] [1] [2], como o Oncoterm [38], por exemplo, que facilita a traduo de textos mdicos sobre oncologia mediante uma ontologia baseada em textos especializados e dicionrios mdicos. Gesto do Conhecimento Projetos de representao (gesto) do conhecimento [12] [13] [2], como o CoMMA [17] (Corporate Memory Management through Agents), por exemplo, que prope o armazenamento da memria corporativa da empresa atravs do uso de ontologias. Web-Semntica A Web-Semntica uma viso para o futuro da Internet na qual a informao dada com signicado explcito, tornando mais fcil para mquinas processarem e integrarem informaes disponveis na rede automaticamente [4]. Educao Existem alguns projetos na rea de educao em ambiente de Internet, por exemplo, RichODL [43], que um ambiente de aprendizado desenvolvido para treinar estudantes na modelagem e simulao de ambientes dinmicos. Neste exemplo, as ontologias so utilizadas para descrever o domnio fsico do sistemas modelados. J o SchoolOnto (Scholary Ontologies Project) [44] um biblioteca digital baseada em ontologias. Ela possibilita a interpretao de domnios, e auxilia na modelagem de pesquisas dinmicas que necessitam de ferramentas para tratar inconsistncias.

Alm de serem utilizadas em diversas reas, o uso de ontologias traz diversas vantagens. De acordo com Guizzardi [25], os principais benefcios relacionados utilizao de ontologias so: Comunicao As ontologias possibilitam a comunicao entre pessoas acerca de determinado conhecimento, pois permitem raciocnio e entendimento sobre um domnio. Essa relao auxilia na obteno de consenso, principalmente sobre termos tcnicos, entre comunidades prossionais, de pesquisa, etc.

Ontologias: conceitos, usos, tipos, metodologias, ferramentas e linguagens

Formalizao A formalizao est relacionada especicao da ontologia, que permite eliminar contradies e inconsistncias na representao de conhecimento, alm de no ser ambga. Alm disso, essa especicao pode ser testada, validada e vericada. Representao de Conhecimento e Reutilizao As ontologias formam um vocabulrio de consenso que permite representar conhecimento de um domnio em seu nvel mais alto de abstrao, possuindo, desta forma, potencial de reutilizao. Apesar de vrios usos e benefcios, as ontologias ainda apresentam alguns problemas [25], dentre eles: Escolha das Ontologias A escolha de uma ontologia pode se tornar um processo poltico, uma vez que uma ontologia pode no ser totalmente adequada a todos os indivduos ou grupos relacionados a algum domnio especco. Criao e Evoluo das Ontologias Ontologias precisam ser criadas e evoluir. Poucos trabalhos, entretanto, tm enfocado este aspecto, principalmente na lngua portuguesa. Alguns trabalhos sobre ontologias de domnio podem ser obtidos em [11]. Bibliotecas de Ontologias A noo de biblioteca de ontologias est relacionada independncia entre elas. Desta forma, a interface entre estas ontologias se constitui em um problema, uma vez que cada uma delas pode ter sido desenvolvida em um contexto diferente. Metodologia de Desenvolvimento Este considerado o principal problema relacionado s ontologias, principalmente pela falta de trabalhos descrevendo metodologias para seu desenvolvimento. Existe uma ausncia de atividades padronizadas, ciclos de vida e mtodos sistemticos de desenvolvimento, assim como um conjunto de critrios de qualidade, tcnicas e ferramentas. Isso faz com que o processo de criao de ontologias seja uma atividade quase artstica. Mais detalhes sobre como construir ontologias esto descritos na Seo 5.

Tipos de Ontologias

Ontologias podem ser classicadas quanto ao seu grau de formalismo, aplicao, contedo ou funo (estrutura) [2]. Quanto ao grau de formalismo, as ontologias podem ser categorizadas em altamente informais, quando expressas em linguagem natural; semi-informais, quando expressas em linguagem natural de forma restrita e estruturada; semi-formais, expressas em linguagem articial denida formalmente; e rigorosamente formais, onde os termos so denidos com semntica formal, teoremas e provas. Em relao aplicao, as ontologias podem ser de autoria neutra, quando, por exemplo, um aplicativo descrito em uma nica lngua e depois convertido para o uso em diversos

Ontologias: conceitos, usos, tipos, metodologias, ferramentas e linguagens

sistemas, reutilizando-se as informaes; como especicao, baseada em uma ontologia de domnio, que utilizada para documentao e manuteno no desenvolvimento de softwares; e de acesso comum a informao, quando, por exemplo, um vocabulrio inacessvel e a ontologia torna a informao possvel de ser entendida, proporcionando conhecimento compartilhado dos termos. J em sua classicao quanto ao contedo, as ontologias podem ser terminolgicas, quando representam termos que sero utilizados para modelar o conhecimento de um domnio especco; de informao, que especicam, por exemplo, a estrutura de registros de um banco de dados; de modelagem de conhecimento, que especicam as conceitualizaes do conhecimento; de aplicao, que contm as denies necessrias para modelar conhecimento em uma aplicao; de domnio, que expressam conceitualizaes que so especcas em um domnio; genricas, que denem conceitos genricos e comuns a vrias reas do conhecimentos; e de representao, que explicam as conceitualizaes que esto por trs dos formalismos de representao do conhecimento. Quanto sua funo, as ontologias podem ser classicadas em cinco categorias [23] [25]: Ontologias Genricas So consideradas ontologias gerais. Descrevem conceitos mais amplos, como elementos da natureza, espao, tempo, coisas, estados, eventos, processos ou aes, independente de um problema especco ou domnio particular. De acordo com Guizzardi [25], pesquisas enfocando ontologias genricas procuram construir teorias bsicas do mundo, de carter bastante abstrato, aplicveis a qualquer domnio (conhecimento de senso comum). Exemplos de trabalhos utilizando este tipo de ontologia podem ser obtidos em [34] e [37]. Eles esto relacionados principalmente ao uso de ontologias em seu sentido losco de categorizao e lingstica. Ontologias de Domnio Descrevem conceitos e vocabulrios relacionados a domnios particulares, tais como medicina ou computao, por exemplo. Este o tipo de ontologia mais comum, geralmente construda para representar um micro-mundo [25]. Em [11] esto listados alguns trabalhos que utilizam este tipo de ontologia. Ontologias de Tarefas Descrevem tarefas ou atividades genricas, que podem contribuir na resoluo de problemas, independente do domnio que ocorrem, por exemplo, processos de vendas ou diagnstico. Sua principal motivao facilitar a integrao dos conhecimentos de tarefa e domnio em uma abordagem mais uniforme e consistente, tendo por base o uso de ontologias [25]. Exemplos de trabalhos nesta categoria podem ser obtidos em [40]. Ontologias de Aplicao Descrevem conceitos que dependem tanto de um domnio particular quanto de uma tarefa especca. Devem ser especializaes dos termos das ontologias de domnio e de tarefa correspondentes (Figura 2). Estes conceitos normalmente correspondem a regras aplicadas a entidades de domnio enquanto executam determinada tarefa [25].

Ontologias: conceitos, usos, tipos, metodologias, ferramentas e linguagens

Figura 2: Ontologias de Aplicao [25] Ontologias de Representao Explicam as conceituaes que fundamentam os formalismos de representao de conhecimento, procurando tornar claros os compromissos ontolgicos embutidos nestes formalismos [25]. Um exemplo desta categoria a ontologia de frames, utilizada em Ontolngua [20]. Nas prximas sees esto descritas as principais metodologias, ferramentas e linguagens utilizadas na construo de ontologias de domnio.

Construo de Ontologias

A construo de ontologias de domnio envolve, primeiramente, a denio de seu domnio e escopo. Uma vez denidos estes elementos, devem ser escolhidos uma metodologia (Seo 5.1), uma ferramenta (Seo 5.2) e uma linguagem (Seo 5.3) para sua especicao. Na prtica, as metodologias, ferramentas e as linguagens so utilizadas na denio da estrutura da ontologia. Nem todas as ontologias tm a mesma estrutura [2], mas a maioria delas possui alguns elementos bsicos, como: Classes Normalmente organizadas em taxonomias, as classes representam algum tipo de interao da ontologia com um determinado domnio (Figura 3).

Figura 3: Exemplo de taxonomia de classes.

Ontologias: conceitos, usos, tipos, metodologias, ferramentas e linguagens

Relaes Representam o tipo de interao entre os elementos do domnio (classes). Axiomas So utilizados para modelar sentenas consideradas sempre verdadeiras [2]. Instncias So utilizadas para representar elementos especcos, isto , os prprios dados da ontologia. Funes Eventos podem ocorrer no contexto da ontologia.

5.1

Metodologias para Construo de Ontologias

Metodologias de desenvolvimento de ontologias existem no intuito de sistematizar sua construo e manipulao. Entretanto, nenhuma das metodologias descritas a seguir totalmente madura, principalmente se comparadas com metodologias de engenharia de software [2]. Enterprise [30] baseada em quatro fases (Figura 4): identicao do propsito, identicao do escopo, formalizao e documentao formal. A identicao do propsito determina o nvel de formalidade que a ontologia deve ser descrita; Na identicao do escopo uma especicao produzida de acordo com o domnio que a ontologia precisa representar; A formalizao a criao do cdigo, denies formais e axiomas relacionados ontologia; A documentao formal a fase onde a ontologia ser documentada e as fases de identicao do escopo e formalizao podem ser revistas.

Figura 4: Metodologia Enteprise. Methontology [30] baseada na construo da ontologia a partir do conhecimento de um domnio. Suas atividades principais so (Figura 5): especicao de requisitos, conceitualizao do domnio do conhecimento, formalizao do modelo conceitual em uma linguagem formal, implementao de um modelo formal e manuteno de ontologias implementadas.

Ontologias: conceitos, usos, tipos, metodologias, ferramentas e linguagens

Esta metodologia possui ainda algumas atividades de suporte desempenhadas durante o processo de construo da ontologia: aquisio do conhecimento, integrao, avaliao, documentao e gerenciamento de congurao.

Figura 5: Methontology. On-To-Knowledge [46] Esta metodologia baseada em quatro fases (Figura 6): kick-off, renamento, avaliao e manuteno. No kick-off os requisitos para construo da ontologia so capturados e especicados, questes de competncia so identicadas, ontologias potencialmente reutilizveis so estudadas e uma primeira verso da ontologia construda. No renamento, uma ontologia mais madura construda a partir da primeira verso. Na avaliao, os requisitos e as questes de competncia so checados e a ontologia colocada em ambiente de produo. A manuteno envolve atividades de adaptao da ontologia s mudanas nos requisitos e correo de erros.

Figura 6: On-to-Knowledge.

Ontologias: conceitos, usos, tipos, metodologias, ferramentas e linguagens

10

Existem outras metodologias alm das descritas nesta Seo. Mais informaes sobre estas metodologias podem ser obtidas em [2] e [30]. Pelo fato das metodologias descritas nesta Seo ainda no demonstrarem um processo sucientemente estruturado a ponto de suportar a construo de ontologias como uma verdadeira disciplina de engenharia, Guizzardi [25] sugere uma abordagem sistemtica para sua construo. Essa metodologia, inicialmente proposta por Falbo [14], baseada em seis fases: identicao de propsito e especicao de requisitos, captura da ontologia, formalizao da ontologia, integrao com ontologias existentes, avaliao e documentao. Ainda segundo Guizzardi [25], esta abordagem une as principais caractersticas das metodologias descritas nesta Seo. Seu ciclo de vida iterativo, e alguns processos, como avaliao da qualidade e documentao, ocorrem durante todo o ciclo de vida (atividades guarda-chuva). A gura 7 mostra o diagrama de atividades que ilustra esta metodologia.

Figura 7: Processo Iterativo de Construo de Ontologias. Identicao de propsito e especicao de requisitos Esta a primeira atividade realizada na construo de ontologias. Seu principal objetivo identicar a competncia da ontologia, ou seja, seus usos e propsitos, atravs da delimitao do que relevante para a ontologia e o que no . Alm disso, nesta fase, podem ser identicados potenciais usurios da ontologia, e o contexto que motivou sua construo. Aps denir a competncia, nalmente os requisitos da ontologia devem ser especicados. Essa especicao envolve a descrio do propsito e dos usos da ontologia, isto , a denio das questes que a ontologia deve ser capaz de responder (questes de competncia). Estas questes, alm de justicar a existncia da ontologia, servem para futura avaliao da mesma. Captura da ontologia Considerada a fase mais importante, seu objetivo capturar o conjunto de elementos de

Ontologias: conceitos, usos, tipos, metodologias, ferramentas e linguagens

11

um domnio que podem ser representados em uma ontologia, com base nas questes de competncia relacionadas a esta. A captura envolve a identicao e especicao de conceitos (classes), seus relacionamentos e todos os demais elementos necessrios para a representao da ontologia, tais como propriedades, axiomas, instncias, etc. Falbo [14] sugere ainda que esta especicao seja acompanhada de um vocabulrio de termos, que auxiliem no seu entendimento, e seja representada atravs de uma linguagem grca, no sentido de facilitar sua futura comunicao com especialistas de domnio. Alguns conceitos que no podem ser obtidos a partir de outros conceitos da ontologia (conceitos primitivos) devem se especicados utilizando-se linguagem natural, com o mnimo de ambigidade e inconsistncia possvel. J os conceitos no primitivos devem ser especicados com referncia clara aos conceitos primitivos. A utilizao de taxonomias (organizao em categoria e sub-categorias) tambm deve ser utilizada na representao dos conceitos, pois auxilia sua organizao, facilitando seu entendimento. Os conceitos, suas propriedades e relacionamentos formam a base de qualquer ontologia. Entretanto, para denir a semntica de seus termos devem ser construdos os axiomas, que so utilizados para modelar sentenas sempre verdadeiras [2]. Na prtica, os axiomas especicam denies de termos na ontologia e restries sobre sua interpretao. Geralmente especicados em linguagem natural (Falbo [14] cita que os axiomas tambm podem ser especicados atravs de lgica de primeira ordem, como sentenas de primeira ordem usando os predicados da ontologia), os axiomas podem ser divididos em dois tipos: axiomas de derivao e axiomas de consolidao. Axiomas de derivao so aqueles que permitem explicitar informaes a partir do conhecimento previamente existente. Axiomas de consolidao descrevem a coerncia das informaes existentes, isto , denem condicionantes para o estabelecimento de uma relao ou para a denio de um objeto como instncia de um conceito [14]. O axiomas de derivao, por sua vez, se dividem em dois tipos [14]: axiomas epistemolgicos e axiomas ontolgicos. Os axiomas epistemolgicos so descritos para mostrar restries impostas pela forma de estruturao dos conceitos. J os ontolgicos descrevem restries de signicao impostas no domnio. Esta classicao dos axiomas uma boa diretriz para guiar quais so os tipos que devem ser capturados em uma ontologia, ou seja, axiomas que considerem a estruturao dos conceitos e relaes (epistemolgicos), seus signicados e restries (ontolgicos) e as leis de integridade que os regem (consolidao) [14]. O processo de denio de axiomas deve ser fortemente guiado pelas questes de competncia. Estes axiomas devem ser necessrios e sucientes para expressar estas questes e para caracterizar suas solues. Alm disso, qualquer soluo para uma questo de competncia deve ser descrita pelos axiomas da ontologia e deve ser consistente com eles. Caso os axiomas propostos no sejam sucientes para responder s questes de competncia, novos axiomas devem ser introduzidos na ontologia, at que esta condio seja verdadeira, assim como axiomas redundantes devem ser eliminados. Desta forma, o processo de captura da ontologia iterativo e fortemente ligado avaliao de axiomas. Formalizao da ontologia

Ontologias: conceitos, usos, tipos, metodologias, ferramentas e linguagens

12

Formalizao da ontologia corresponde especicao da ontologia em uma linguagem. Na prtica, uma ontologia pode ser representada atravs de qualquer linguagem no formal (natural), embora a representao formal seja considerada a mais apropriada na maioria dos casos. Uma linguagem formal uma linguagem fundamentada em um modelo matemtico. Geralmente envolve pressuposies implcitas que entram despercebidas no processo de deduo, tem smbolos no ambguos e formulaes exatas, portanto, a clareza e a correo de uma deduo podem ser testadas com maior facilidade e preciso. Entretanto, o que determina a escolha da linguagem a ser utilizada na formalizao da ontologia depende diretamente do propsito da ontologia a ser desenvolvida. Mais detalhes sobre linguagens formais de especicao esto descritos na Seo 5.3. Integrao com ontologias existentes De acordo com Falbo [14], durante os processos de captura e/ou formalizao, pode surgir a necessidade de integrar a ontologia em questo com outras j existentes, visando aproveitar conceituaes previamente estabelecidas. De fato, uma boa prtica desenvolver ontologias funcionais modulares, gerais e que sejam mais amplamente reutilizveis e, quando necessrio, integr-las, obtendo o resultado desejado. Avaliao Avaliar uma ontologia signica vericar se a mesma satisfaz os requisitos denidos em sua construo. Guizzardi [25] sugere que esta etapa seja realizada em paralelo com as fases de captura e formalizao. Para isso, podem ser denidos um conjunto de critrios para guiar tanto o desenvolvimento, quanto a avaliao da qualidade das ontologias construdas. Dentre estes critrios esto: clareza, coerncia, extensibilidade e compromissos ontolgicos mnimos. Alm disso, as questes de competncia devem ser utilizadas para avaliao dos axiomas. Documentao Segundo Guizzardi [25], todo o desenvolvimento da ontologia deve ser documentado. Esta etapa inclui os propsitos, requisitos e cenrios de motivao, as descries textuais da conceituao, a ontologia formal e os critrios de projeto adotados. Assim como a avaliao, esta uma atividade que deve cobrir todo o ciclo de vida de desenvolvimento da ontologia. Os termos capturados na conceituao do universo de discurso devem ser descritos em um Dicionrio de Termos, considerando dois princpios importantes: o princpio do vocabulrio mnimo e o princpio da auto-referncia. O princpio do vocabulrio mnimo diz respeito ao vocabulrio utilizado na denio dos termos da ontologia. Ele deve ser o menor possvel e no deve apresentar ambigidades. Qualquer termo que no tenha um signicado claro e no ambguo, deve ser formalmente denido no Dicionrio. O princpio da auto-referncia indica que a denio de um termo no Dicionrio deve, sempre que possvel, ser feita utilizando outros termos do mesmo. Com base nestes princpios, o uso de hipertextos surge como uma potencial abordagem para a documentao de ontologias. Esta tecnologia mostra-se adequada, j que torna natural a denio de novos termos a partir de outros mais primitivos, e permite a navegao entre denies, exemplos e a formalizao, incluindo os axiomas.

Ontologias: conceitos, usos, tipos, metodologias, ferramentas e linguagens

13

5.2

Ferramentas para Construo de Ontologias

Existem vrias ferramentas para construo de ontologias. A seguir so apresentadas trs delas. Comparaes e/ou mais informaes sobre estas e outras ferramentas podem ser obtidas em [2]. Protg 2000 [41] um ambiente interativo para construo de ontologias, que oferece uma interface grca (Figura 8) para sua edio. Sua arquitetura modulada e permite a insero de novos recursos. Foi desenvolvido pelo grupo de informtica mdica da Universidade de Stanford (http://www.stanford.edu/). Possui cdigo aberto em uma aplicao standalone, composta por um editor de ontologia e uma biblioteca de plugins com funcionalidades. Atualmente importa/exporta para diversas linguagens, dentre elas Flogic [32], OIL [16], XML [9] e Prolog [39].

Figura 8: Protg WebODE [3] Foi desenvolvido no laboratrio de inteligncia articial da Universidade Politcnica de Madri (http://www.fi.upm.es/). uma aplicao Web (Figura 9), onde as ontologias so armazenadas em bases de dados relacionais. Possui servios de documentao, avaliao e fuso de ontologias. D suporte para Methontology (Seo 5.1). Atualmente importa/exporta, dentre outras linguagens, para XML, RDF(S) [33], OIL, DAML + OIL [28], Flogic e Prolog.

Figura 9: WebODE

Ontologias: conceitos, usos, tipos, metodologias, ferramentas e linguagens

14

OntoEdit [35] um ambiente grco para edio de ontologias que permite inspeo, navegao, codicao e alterao de ontologias. Foi desenvolvido pela AIFB (Institut fr Angewandte Informatik und Formale Beschreibungsverfahren) na Universidade de Karlsruhe [31]. Possui arquitetura extensvel baseada em plugins e atualmente est disponvel nas seguintes verses: OntoEdit Free e OntoEdit Professional (Figura 10). Possui suporte para On-to-Knowledge (Seo 5.1) e importa/exporta para Flogic, XML, RDF(S), DAML+OIL.

Figura 10: OntoEdit Atualmente, vrias ferramentas similares existem disponveis, mas no h uma ferramenta completa. Seu usurio deve ler sobre as caractersticas (descrio, arquitetura, interoperabilidade, representao e usabilidade) de cada uma para escolher aquela que est mais de acordo com os seus objetivos e/ou necessidades. No h correspondncia entre as metodologias para construir ontologias e ferramentas, exceto para Methontology e WebODE, assim como On-To-Knowledge e OntoEdit. Muitas ferramentas apenas focam sobre poucas atividades do ciclo de vida, como projeto e implementao. H muitas ferramentas similares disponveis, porm no so capazes de interoperarem. Isso provoca srios problemas quando existe a necessidade de se integrar ontologias em bibliotecas de ontologias de diferentes ferramentas ou quando necessrio fazer a fuso de ontologias disponveis em diferentes ferramentas ou linguagens.

5.3

Linguagens para Representao de Ontologias

As linguagens utilizadas na especicao de ontologias podem ser divididas em trs tipos [2]: linguagens de ontologias tradicionais, Linguagens padro Web e linguagens de ontologias Web-based. Linguagens de ontologias tradicionais Cycl, Ontolngua, F-Logic, CML, OCML, Loom, KIF. Linguagens padro Web XML, RDF.

Ontologias: conceitos, usos, tipos, metodologias, ferramentas e linguagens

15

Linguagens de ontologias Web-based OIL, DAML+OIL, SHOE, XOL, OWL. O critrio para escolha de uma linguagem para especicao de ontologias varia de acordo com o tipo a ser especicado. No objetivo deste texto tratar este aspecto. Uma comparao entre as principais linguagens pode ser obtida em [48]. Pelo fato de serem as linguagens recomendadas pelo W3C (World Wide Web Consortium) [47], a seguir so descritas as principais caractersticas da Ontolngua, RDF e OWL. Mais detalhes sobre estas e as outras linguagens citadas nesta Seo podem ser obtidos em [2] e [48]. Ontolngua [10] Baseada em KIF (Knowledge Interchange Format) [18], foi criada em 1992 pelo Laboratrio de Sistemas do Conhecimento da Universidade de Stanford. Combina paradigmas de frames e predicados de clculo de primeira ordem. considerada a mais expressiva de todas as linguagens para representar ontologias. Permite representar conceitos, taxonomias de conceitos, relaes n-rias, axiomas, instncias e procedimentos. Nenhum suporte de raciocnio fornecido com a linguagem. Exemplo: Cdigo 1 Especicao em Ontolngua
1 2 3 4

(define-class female-person (?person) "female humans" :iff-def (and (human ?person) (= (gender ?person) female)))

RDF [36] Foi desenvolvido pelo W3C como uma linguagem baseada em rede semntica para descrever recursos da Web. RDF(S) a combinao de RDF e RDF Schema, que tambm foi desenvolvido pela W3C como uma extenso do RDF com primitivas baseadas em frame. RDF(S) bastante expressiva, pois permite a representao de conceitos, taxonomias de conceitos e relaes binrias. Algumas mquinas de inferncia tm sido criadas para esta linguagem, principalmente para checar restries. Exemplo: Cdigo 2 Especicao em RDF
1 2 3 4

<Class ID="Female"> <subClassOf resource="#Animal"/> <disjointWith resource="#Male"/> </Class>

OWL - Ontology Web Language [26] Esta linguagem recomendada da W3C desde fevereiro de 2004. uma linguagem para ser utilizada quando as informaes contidas em documentos web, precisam ser processadas por aplicaes em situaes em que seu contedo precisa mais do que ser apresentado apenas para humanos.

Ontologias: conceitos, usos, tipos, metodologias, ferramentas e linguagens

16

Pode ser usada para representar explicitamente o signicado de termos em vocabulrios e os relacionamentos entre os termos. Possui mais facilidades para expressar signicados e semntica que XML, RDF e RDF(S), alm de representar contedo interpretvel por mquinas na Web. uma reviso da linguagem DAML + OIL. Exemplo: Cdigo 3 Especicao em OWL
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23

<owl:AllDifferent> <owl:distinctMembers rdf:parseType="Colecao"> <vin:VinhoCor rdf:about="#Tinto" /> <vin:VinhoCor rdf:about="#Branco" /> <vin:VinhoCor rdf:about="#Rose" /> </owl:distinctMembers> </owl:AllDifferent> <owl:AllDifferent> <owl:distinctMembers rdf:parseType="Colecao"> <vin:VinhoCorpo rdf:about="#Leve" /> <vin:VinhoCorpo rdf:about="#Mdio" /> <vin:VinhoCorpo rdf:about="#Cheio" /> </owl:distinctMembers> </owl:AllDifferent> <owl:AllDifferent> <owl:distinctMembers rdf:parseType="Colecao"> <vin:VinhoSabor rdf:about="#Suave" /> <vin:VinhoSabor rdf:about="#Moderado" /> <vin:VinhoSabor rdf:about="#Forte" /> </owl:distinctMembers> </owl:AllDifferent> <owl:AllDifferent> wine.xml

Para construir uma ontologia, primeiro necessrio estabelecer o que a aplicao precisa em termos de expressividade. Nem todas as linguagens permitem representar os mesmos componentes e raciocnio do mesmo modo. Tradutores entre linguagens ainda no so sucientes para assegurar que a informao no ser perdida no processo. Por isso, tomar uma boa deciso sobre o uso de uma linguagem especca para representar ontologia importante para desenvolver aplicaes baseadas em ontologias. Atualmente, uma das linguagens mais utilizadas para representao de ontologias a XML. Apesar de ser menos expressiva, se comparada a OWL, a linguagem XML mais popular no ambiente da Internet, seja para a construo de arquivos de congurao, seja para o intercmbio de dados entre aplicaes na Web ou estruturao e armazenamento de dados, alm de ser suportada pela ferramenta Protg, que tambm utilizada neste trabalho. Acredita-se que no futuro [9], com a contnua expanso da Web, e o advento da WebSemntica, XML se tornar a linguagem universal para representao de dados. Logo, todas as aplicaes sero capazes de se comunicar, uma vez que elas podero entender os vocabulrios e/ou marcaes de outros documentos produzidos por outras aplicaes.

Ontologias: conceitos, usos, tipos, metodologias, ferramentas e linguagens

17

XML (Extensible Markup Language) uma linguagem que permite a construo de documentos legveis para seres humanos e que podem ser facilmente tratados por mquinas. um conjunto de regras para a denio de marcadores semnticos, que dividem um documento em partes identicveis. uma meta-linguagem que dene uma sintaxe para ser utilizada na criao de outras linguagens de marcao para um domnio especco, com estrutura e semntica prprias [27]. O cdigo 4 mostra um exemplo de especicao em XML. Cdigo 4 Especicao em XML
1 2 3 4 5 6 7 8 9 10 11 12

<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE Agenda SYSTEM "C:\Mestrado\Biblioteca.dtd"> <bibliografia> <livro> <titulo> Verdes Campinas </titulo> <autor webid="http://exemplo.com/#OP5"> Olimpio Pereira </autor>. </livro> </bibliografia>

Mais detalhes sobre a linguagem XML podem ser obtidos em [9] e [8].

Concluso

A crescente complexidade dos objetos armazenados na Internet e o grande volume de dados exigem processos de recuperao cada vez mais sosticados, apresentando novos desaos. De fato, com a exploso do nmero de documentos e de usurios na Web, modelos para recuperao precisa de informaes passaram a ser de grande importncia. Em relao as ontologias, dois pontos principais devem ser considerados: Em primeiro lugar, necessrio trabalhar na criao de ferramentas que facilitem: Desenvolvimento de uma ontologia durante todo o ciclo de vida, incluindo: integrao, fuso, reengenharia, avaliao de contedo, traduo para diferentes linguagens e formatos, troca de contedo com outras ferramentas, etc. Gerenciamento de ontologias: gerenciamento de congurao e evoluo de ontologias isoladas assim como de bibliotecas. Suporte de Ontologias: cronograma, documentao, tcnicas avanadas para visualizao do contedo da ontologia, etc. Suporte metodolgico para construo de ontologias. Em segundo lugar, necessrio trabalhar na criao dos seguintes servios: Softwares que ajudem a localizar a ontologia mais apropriada para uma dada aplicao;

Ontologias: conceitos, usos, tipos, metodologias, ferramentas e linguagens

18

Mtricas formais que comparam similaridade semntica e distncia semntica entre termos da mesma ontologia ou em ontologias diferentes; Softwares que permitam incremental, consistente e seletivas atualizaes da ontologia, a qual est sendo usada por uma dada aplicao; Mdulos de queries para consultar ontologias; Acesso remoto para sistemas de bibliotecas de ontologias; Softwares que facilitem a integrao da ontologia com sistemas de herana e bases de dados.

Agradecimento

Ao Prof. Dr. Cedric Luiz de Carvalho, pela avaliao do presente texto e pelas sugestes feitas, as quais muito contribuiram para a melhoria do texto original.

Referncias
[1] AGUADO, G. E. A. Ontogeneration: reusing domain and linguistic ontologies for spanish text generation? In: EUROPEAN CONFERENCE ON ARTIFICIAL INTELLIGENCE, BRIGHTON, ENGLAND, p. 2328, 1998. [2] ALMEIDA, M; BAX, M. Uma viso geral sobre ontologias: pesquisa sobre denies, tipos, aplicaes, mtodos de avaliao e de construo. Revista Cincia da Informao, 32(3), 2003. [3] ARPREZ, J. C; CORCHO, O; FERNNDEZ-LPEZ, M; GMEZ-PREZ, A. Webode: a scalable workbench for ontological engineering. In: INTERNATIONAL CONFERENCE ON KNOWLEDGE CAPTURE. Victoria, British Columbia, Canad, 2001. [4] BERNERS-LEE, T; HENDLER, J; O., L. The semantic web. Scientic American, 05 2001. [5] BLACKBURN, S; MARCONDES, D. Dicionrio Oxford de Filosoa. Traduo de Murcho et al., Rio de Janeiro, Jorge Zahar, 1997. [6] BORGO, S; GUARINO, N; MASOLO, C; VETERE, G. Using a large linguistic ontology for internet-based retrieval of object-oriented components. [7] BORST, W. Construction of Engineering Ontologies for Knowledge Sharing and Reuse. PhD thesis, University of Twente, P.O. Box 217 - 7500 AE Enschede - The Netherlands, 1997. [8] BOSAK, J. XML, java, and the future of the web. World Wide Web Journal, 2(4):219 227, 1997. [9] BRAY, T; PAOLI, J; SPERBERG-MCQUEEN, C; MALER, E; YERGEAU, F. Extensible markup language (xml) 1.0. Disponvel em http://www.w3.org/TR/2004/ REC-xml-20040204/, acessado em abr/2007, 2 2004.

Ontologias: conceitos, usos, tipos, metodologias, ferramentas e linguagens

19

[10] CHAUDHRI, V. K. Open knowledge base connectivity 2.0. [11] CLARK, P. Some ongoing kbs ontology projects and groups. http://www. cs.utexas.edu/users/mfkb/related.html, acessado em novembro de 2006, 2006. [12] DOMINGUE, J. Tadzebao and webonto: discussing, browsing and editing ontologies on the web. In: 11TH BANFF KNOWLEDGE ACQUISITION WORKSHOP. BANFF, ALBERTA, CANADA., 1998. [13] DOMINGUE, J; MOTTA, E. A knowledge-based news server supporting ontologydriven story enrichment and knowledge retrieval. In: KNOWLEDGE ACQUISITION, MODELING AND MANAGEMENT. DAGSTUHL CASTLE, GERMANY., 1999. [14] FALBO, R. A. Integrao de Conhecimento em um Ambiente de Engenharia de Software. PhD thesis, Universidade Federal do Rio de Janeiro, 1998. [15] FELICSSIMO, C. H; SILVA, L. F; BREITMAN, K. K; LEITE, J. C. S. Gerao de ontologias subsidiada pela engenharia de requisitos. In: Luis Eduardo Galvo Martins, X. F, editor, ANAIS DO WER03 - WORKSHOP EM ENGENHARIA DE REQUISITOS, volume 27-28, p. 255269, Piracicaba-SP, Brasil, 11 2003. [16] FENSEL, D; VAN HARMELEN, F; HORROCKS, I; MCGUINNESS, D; PATELSCHNEIDER, P. Oil: An ontology infrastructure for the semantic web. IEEE Intelligent Systems, 16:3844, 2001. [17] GANDON, F. Engineering an ontology for a multi-agents corporate memory system. In: INTERNATIONAL SYMPOSIUM ON THE MANAGEMENT OF INDUSTRIAL AND CORPORATE KNOWLEDGE., p. 209228, 2001. [18] GENESERETH, M. R. Knowledge interchange format. [19] GERMANN, U. Making semantic interpretation parser-independent. In: PROCEEDINGS OF THE AMTA CONFERENCE, 1998. [20] GRUBER, T. Ontolingua: A mechanism to support portable ontologies, 1992. [21] GRUBER, T. What is an ontology. http://www-ksl.stanford.edu/kst/ what-is-an-ontology.html, acessado em jan/2005., 1 2005. [22] GUARINO, N. Formal ontology, conceptual analysis and knowledge representation. International Journal of Human and Computer Studies, 43(5/6):625640, 1995. [23] GUARINO, N. Understanding, building and using ontologies. International Journal of Human and Computer Studies, 45(2/3), 2 1997. [24] GUARINO, N. Formal ontology in information systems. In: IOS Press, A, editor, FOIS98, TRENTO, ITALY, p. 315, 06 1998. [25] GUIZZARDI, G. Desenvolvimento para e com reuso: Um estudo de caso no domnio de vdeo sob demanda. Masters thesis, Universidade Federal do Esprito Santo, 2000.

Ontologias: conceitos, usos, tipos, metodologias, ferramentas e linguagens

20

[26] HARMELEN, F. V; MCGUINNESS, D. L. Owl web ontology language overview. Disponvel em http://www.w3.org/TR/2004/ REC-owl-features-20040210/, acessado em abr/07, 2 2004. [27] HAROLD, E. R. The XML Bible. IDG Books, 2 edition, 1999. [28] HORROCKS, I; CONNOLLY, D; HARMELEN, F; MCGUINNESS, D; PATELSCHNEIDER, P; STEIN, L. Daml+oil reference description, 3 2001. [29] IDC. Idc. http://www.idc.com, acessado em julho de 2005, 07 2005. [30] JONES, D; BENCH-CAPON, T; VISSER, P. Methodologies for ontology development. in Proc. IT KNOWS Conference, XV IFIP World Computer Congress, Budapest, August., 1998. [31] KARLSRUHE, U. Institut fr angewandte informatik und formale beschreibungsverfahren. http://www.aifb.uni-karlsruhe.de/, 2006. [32] KIFER, M; LAUSEN, G; WU, J. Logical foundations of object-oriented and framebased languages. Journal of ACM, 42:741843, July 1995. [33] LASSILA, O; SWICK, R. Resource description framework (rdf) model and syntax specication. W3C Working Draft, p. 1008, 1998. [34] LENAT, D. Cyc: A large-scale investment in knowledge infrastructure. Communications of the ACM, 38(11):3338, 1995. [35] MAEDCHE, A; STAAB, S; STOJANOVIC, N; STUDER, R; SURE, Y. Semantic portal - the seal approach, 2001. [36] MANOLA, F; MILLER, E. Rdf primer. Disponvel em http://www.w3.org/TR/ 2004/REC-rdf-primer-20040210/, acessado em Abr/2006, 2 2004. [37] MILLER, G. Wordnet: A on-line lexical database. International Journal of Lexicography, (3-4), 1990. [38] MORENO, A. O; HERNNDEZ, C. P. Reusing the mikrokosmos ontology for concept-based multilingual terminology databases. INTERNATIONAL CONFERENCE ON LANGUAGE RESOURCES E EVALUATION, 2000. [39] MUGGLETON, S. Inductive Logic Programming. In: THE MIT ENCYCLOPEDIA OF THE COGNITIVE SCIENCES (MITECS). MIT Press, 1999. [40] MUSEN, M. A. E. A. Protege-ii: Computer support for development of intelligent systems from libraries of components. MEDINFO 95 - WORLD CONGRESS ON MEDICAL INFORMATICS, 8 1995. [41] NOY, N. F; MCGUINNESS, D. L. Ontology development 101: A guide to creating your rst ontology. http://protege.stanford.edu/publications/ ontology_development/ontology101-noy-mcguinness.html, Acessado em Nov/2006, 2006. [42] ONTOSEARCH. Welcome to ontosearch2. http://www.ontosearch.org/, acessado em Nov/2006., 11 2006.

Ontologias: conceitos, usos, tipos, metodologias, ferramentas e linguagens

21

[43] PAUL, Z. Z. Sharing engineering design knowledge in a distributed environment. [44] SHUM, S. B; MOTTA, E; DOMINGUE, J. Scholonto: an ontology-based digital library server for research documents and discourse. Int. J. on Digital Libraries, 3(3):237248, 2000. [45] SMITH, B. Ontology: Philosophical and computational. http://wings. buffalo.edu/philosophy/faculty/smith/articles/ontologies. htm, acessado em outubro de 2006, 10 2006. [46] STAAB, S; SCHNURR, H; STUDER, R; SURE, Y. Knowledge processes and ontologies. IEEE Intelligent Systems, 16(1):2634., 2001. [47] W3C. World wide web consortium. http://www.w3.org/, 2006. [48] WACHE, H; OGELE, V; VISSER, T; STUCKENSCHMIDT, U; SCHUSTER, H; NEUMANN, G; UBNER, H. Ontology-based integration of information - a survey of existing approaches. citeseer.ist.psu.edu/article/ wache01ontologybased.html, 2001.

You might also like