Sunteți pe pagina 1din 22

Ontologias: conceitos, usos, tipos, metodologias,

ferramentas e linguagens
E. A. M. Morais

Technical Report

A. P. L. Ambrsio

INF_001/07

December

2007

Relatrio Tcnico

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

Ana Paula L. Ambrsio

edison@inf.ufg.br

apaula@inf.ufg.br

Abstract. The objective of this technical report is describe the ontologie concepts, its
main uses, types, development methodologies, specification 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 especificao 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
classificadas de diversas formas, por exemplo, a partir de seus termos, em glossrios ou dicionrios, por classificao 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
especificao 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 especificao e linguagens de
representao.
Este relatrio est organizado da seguinte forma: a Seo 2 descreve o conceito de ontologia em seu sentido filosfico 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.

Ontologia

2.1

Sentido Filosfico

Em seu sentido filosfico, ontologia possui diversas definies. 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 classificao. Neste sentido,
Aristteles2 apresenta categorias que servem de base para classificar entidades, e introduz o
termo differentia (Figura 1) para propriedades diferentes na classificao de espcies de mesmo
gnero (categoria).

Figura 1: Ontologia no Sentido Filosfico


Segundo Blackburn et al. [5], tambm a parte da filosofia que trata da natureza do ser,
ou seja, da realidade, da existncia dos entes e das questes metafsicas em geral. J Smith [45],
1

um ramo da filosofia 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].

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 filsofos 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 definies para o termo ontologia em Cincia da Computao.


Gruber [21] afirma que ontologia uma especificao de uma conceitualizao, ou seja, uma
descrio de conceitos e relacionamentos que existem entre estes conceitos. Esta definio
genrica, bastante diferente do sentido filosfico de ontologia, considera as ontologias apenas
como um conjunto de conceitos e definies.
Uma definio mais especfica pode ser encontrada em [7]. Neste caso, uma ontologia
definida como uma especificao formal e explcita de uma conceitualizao compartilhada,
onde especificao formal quer dizer algo que legvel para os computadores, explcita so
os conceitos, propriedades, relaes, funes, restries e axiomas explicitamente definidos,
conceitualizao representa um modelo abstrato de algum fenmeno do mundo real e compartilhada significa conhecimento consensual.
Entretanto, apesar de apresentarem diferentes definies, tanto [21], quanto [7], afirmam
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
especificao formal. Neste sentido, [24] sugere uma maneira de criar definies 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 define uma estrutura pretendida
do mundo, representada por S.
Do ponto de vista computacional, para que uma conceituao possa ser efetivamente
usada, ela precisa ser especificada 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 definido por [24], as ontologias passam a ser mecanismos de especificao 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 define uma linguagem, conjunto de termos, que ser utilizada
para formular consultas [2]. A ontologia define as regras de combinao entre os termos e seus
relacionamentos, estes relacionamentos so criados por especialistas, e os usurios formulam
consultas usando os conceitos especificados.

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 significado 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 profissionais, de pesquisa, etc.

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

Formalizao
A formalizao est relacionada especificao da ontologia, que permite eliminar contradies e inconsistncias na representao de conhecimento, alm de no ser ambga.
Alm disso, essa especificao pode ser testada, validada e verificada.
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 especfico.
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 classificadas 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 artificial definida
formalmente; e rigorosamente formais, onde os termos so definidos 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 especificao, 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 classificao quanto ao contedo, as ontologias podem ser terminolgicas,
quando representam termos que sero utilizados para modelar o conhecimento de um domnio
especfico; de informao, que especificam, por exemplo, a estrutura de registros de um banco
de dados; de modelagem de conhecimento, que especificam as conceitualizaes do conhecimento; de aplicao, que contm as definies necessrias para modelar conhecimento em uma
aplicao; de domnio, que expressam conceitualizaes que so especficas em um domnio;
genricas, que definem 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 classificadas 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 especfico 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 filosfico 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 especfica. 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 definio de seu domnio e escopo. Uma vez definidos estes elementos, devem ser escolhidos uma metodologia
(Seo 5.1), uma ferramenta (Seo 5.2) e uma linguagem (Seo 5.3) para sua especificao.
Na prtica, as metodologias, ferramentas e as linguagens so utilizadas na definio 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 especficos, 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): identificao do propsito, identificao do escopo,
formalizao e documentao formal.
A identificao do propsito determina o nvel de formalidade que a ontologia deve ser
descrita; Na identificao do escopo uma especificao produzida de acordo com o
domnio que a ontologia precisa representar; A formalizao a criao do cdigo, definies formais e axiomas relacionados ontologia; A documentao formal a fase onde
a ontologia ser documentada e as fases de identificao 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): especificao 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 configurao.

Figura 5: Methontology.
On-To-Knowledge [46]
Esta metodologia baseada em quatro fases (Figura 6): kick-off, refinamento, avaliao e
manuteno.
No kick-off os requisitos para construo da ontologia so capturados e especificados,
questes de competncia so identificadas, ontologias potencialmente reutilizveis so
estudadas e uma primeira verso da ontologia construda.
No refinamento, 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
suficientemente 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:
identificao de propsito e especificao 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 figura 7 mostra o diagrama de atividades que ilustra esta metodologia.

Figura 7: Processo Iterativo de Construo de Ontologias.


Identificao de propsito e especificao de requisitos
Esta a primeira atividade realizada na construo de ontologias. Seu principal objetivo
identificar 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
identificados potenciais usurios da ontologia, e o contexto que motivou sua construo.
Aps definir a competncia, finalmente os requisitos da ontologia devem ser especificados. Essa especificao envolve a descrio do propsito e dos usos da ontologia, isto ,
a definio das questes que a ontologia deve ser capaz de responder (questes de competncia). Estas questes, alm de justificar 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 identificao e especificao 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 especificao seja acompanhada de um vocabulrio de termos, que auxiliem no seu entendimento,
e seja representada atravs de uma linguagem grfica, 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 especificados utilizando-se linguagem natural, com o mnimo de ambigidade e inconsistncia possvel. J os conceitos no primitivos devem ser
especificados 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 definir a semntica de seus termos devem ser construdos os axiomas,
que so utilizados para modelar sentenas sempre verdadeiras [2].
Na prtica, os axiomas especificam definies de termos na ontologia e restries sobre
sua interpretao. Geralmente especificados em linguagem natural (Falbo [14] cita que
os axiomas tambm podem ser especificados 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 , definem condicionantes para o estabelecimento de uma
relao ou para a definio 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 significao impostas no domnio.
Esta classificao 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 significados e restries (ontolgicos) e as
leis de integridade que os regem (consolidao) [14].
O processo de definio de axiomas deve ser fortemente guiado pelas questes de competncia. Estes axiomas devem ser necessrios e suficientes 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 suficientes 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 especificao 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 especificao 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 significa verificar se a mesma satisfaz os requisitos definidos em
sua construo. Guizzardi [25] sugere que esta etapa seja realizada em paralelo com as
fases de captura e formalizao. Para isso, podem ser definidos 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 definio dos
termos da ontologia. Ele deve ser o menor possvel e no deve apresentar ambigidades.
Qualquer termo que no tenha um significado claro e no ambguo, deve ser formalmente
definido no Dicionrio.
O princpio da auto-referncia indica que a definio 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 definio de novos termos a partir de outros mais primitivos, e permite a navegao
entre definies, exemplos e a formalizao, incluindo os axiomas.

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

5.2

13

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 grfica
(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 artificial 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 grfico para edio de ontologias que permite inspeo, navegao, codificao 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 especificao 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 especificao de ontologias varia de acordo
com o tipo a ser especificado. 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 Especificao 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 Especificao 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 significado de termos em vocabulrios


e os relacionamentos entre os termos.
Possui mais facilidades para expressar significados 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 Especificao 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 suficientes para assegurar que a informao
no ser perdida no processo. Por isso, tomar uma boa deciso sobre o uso de uma linguagem
especfica 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 configurao, 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 definio de marcadores semnticos, que dividem um documento em
partes identificveis. uma meta-linguagem que define uma sintaxe para ser utilizada na criao de outras linguagens de marcao para um domnio especfico, com estrutura e semntica
prprias [27].
O cdigo 4 mostra um exemplo de especificao em XML.
Cdigo 4 Especificao 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 sofisticados, apresentando novos desafios. 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 configurao 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 definies,
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. Scientific American, 05
2001.
[5] BLACKBURN, S; MARCONDES, D. Dicionrio Oxford de Filosofia. 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
specification. 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 first 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.