Ontologia Web Semantica Freitas

Embed Size (px)

Citation preview

  • 8/8/2019 Ontologia Web Semantica Freitas

    1/52

    Ontologias e a Web Semntica

    Frederico Luiz Gonalves de Freitas

    Programa de Ps-Graduao em InformticaUniversidade Catlica de Santos - UniSantos

    R. Carvalho de Mendona, 144, Vila Mathias - 11070-906Santos - SP Brasil - Fone: +55 13 3205 5500

    [email protected]

    Resumo. A falta de solues capazes de captar a semntica das pginas daWeb criou uma demanda de servios que se ajusta aplicao de ontologias.Este tecnologia desponta como uma forma vivel de estruturar informaesesparsas, disponveis na rede. Este trabalho abrange os principais

    fundamentos tericos e histricos relativos s ontologias. So abordados seus formalismos de representao, benefcios, ferramentas, princpios e tcnicasde construo e aplicaes. apresentada ainda a mais direta aplicao deontologias: a Web semntica, que, com suas linguagens e padres, constituira base para a efetivao do comrcio eletrnico e de um tratamento maisacurado das informaes da Web.

    Abstract. The absence of solutions capable of capturing the semantics of Webpages has created a strong demand for services suitable to the application of

    ontologies. This technology emerges as a viable alternative to structure sparseinformation available in the Web. This work comprises the main theoreticaland historical topics concerned to ontologies. Its knowledge representation

    formalisms, gains, tools, building principles and techniques and applicationsare detailed. It is also presented the main ontology application: the SemanticWeb with its languages and standards, which will constitute then basis for theexpansion of electronic commerce and a more accurate and intelligenttreatment of information in the Web.

    Conhecimento a capacidade de atuar num contexto.Karl-Erik Sveiby, Ontoprise Gmbh, Alemanha

    1. A Controvrsia declarativo-procedimental revisitada

    As duas abordagens de elaborao de solues computacionais, aparentemente emoposio, que surgiram logo aps o advento das linguagens de alto nvel - quando seiniciou a discusso sobre a melhor forma de projetar sistemas - so:

    A abordagem declarativa, que descreve fatos e entidades acerca de um determinadodomnio (metfora do o qu), fazendo uso de motores de inferncia, que deduzemnovos fatos a partir dos existentes, entre eles a soluo ou ao a ser tomada;

    A abordagem procedimental, que descreve o funcionamento de processos em suasnuances mais detalhadas (metfora do como), sem maiores compromissos emdescrever as caractersticas das entidades a serem representadas.

  • 8/8/2019 Ontologia Web Semantica Freitas

    2/52

    Os anos 70 e 80 assistiram a um debate entre qual delas seria a melhor forma deconceber e programar sistemas. Na realidade, parece existir complementaridade entre asduas abordagens, j que cada uma se adequa melhor a determinadas tarefas.

    Em termos de eficincia e controle, a programao imperativa apresentou melhorperformance, tornando-se o paradigma de programao comumente empregado. Achegada da Internet e dos sistemas abertos - ambientes desorganizados e ricos, querequerem a existncia de agentes inteligentes com forte orientao cooperao econseqentemente comunicao -, tm demonstrado a necessidade massiva deexpressividade e de reuso flexvel de conhecimento, provocando uma premente revisode conceitos. O ressurgimento com vigor de solues declarativas, baseadas em lgica,acarreta inmeros benefcios, especialmente para a classe de tarefas relacionada a estesambientes. As ontologias e o incio da implementao da Web Semntica baseada nestatecnologia, teis para comrcio eletrnico e outras aplicaes, modificaram

    substancialmente as prerrogativas da controvrsia declarativo-procedimental em relao poca em que foi postulada [Winograd 75].

    1.1. Abstraes e paradigmas de programao

    A evoluo da informtica est intimamente ligada elevao do nvel das abstraes dassolues propostas. So as abstraes que proporcionam genericidade e abrangncia ssolues dos problemas, facilitando o seu reuso em problemas similares. O prpriocomputador foi projetado com o intuito de ser a mquina que abstrai as outras mquinas,podendo substitu-las, desde que possua conhecimento suficiente para desempenhar astarefas e dispositivos de entrada e sada adequados.

    Alis, no seria exagero dizer que a histria da informtica pode ser vista como aabstrao crescente de representaes. Os cdigos binrios e endereos das primeirasmquinas foram abstrados para mnemnicos e rtulos simblicos e posteriormente paravariveis; as modificaes nestes endereos, para atribuies sobre variveis; saltos, paraestruturas de controle; expresses, para funes; comandos para procedimentos;estruturas de armazenamento, para estruturas de dados; assemblera para linguagens dealto nvel; consultas a bancos de dados, para linguagens de consulta; modelos fsicos dedados, para modelos conceituais; dados e operaes, para tipos abstratos de dados ouobjetos; tipos, para polimorfismo; compiladores, para gramticas formais e geradores decompiladores; e, finalmente, as abstraes que deram origem ao paradigma declarativo

    lgico: funes para relaes lgicas e funcionamento ou cdigo para conhecimentoexplcito expresso num formalismo lgico de representao de conhecimento.

    Tambm comum que abstraes capazes de resolver problemas complexossejam subestimadas ou relegadas a segundo plano por problemas tericos e/ou prticos,para depois serem revistas, aceitas e empregads em larga escala, como ocorreu, porexemplo com outra sub-rea de Inteligncia Artificial, a rea de redes neurais,virtualmente abandonada at a chegada dos perceptrons com mltiplas camadas[Rumelhart et al 86].

    O paradigma de programao declarativo lgico pode ser visto como umaabstrao da tradicional programao imperativa. Embora date do fim dos anos 50 e

    esteja consistentemente fundamentado por teorias de lgica matemtica com razes aindamais antigas, o paradigma declarativo lgico seguiu uma trajetria pontilhada de

  • 8/8/2019 Ontologia Web Semantica Freitas

    3/52

    dificuldades (detalhadas na subseo 1.3.1.), at ser redescoberto como uma dassolues mais factveis aos complexos problemas colocados com a chegada da Internet.

    1.2. Nova conjuntura para a controvrsia: a InternetOs sistemas abertos caracterizam-se principalmente pela capacidade de conectar redes aoutras redes, tornando documentos, dados e software acessveis remotamente porpessoas e outros sistemas, agentes e ferramentas. O surgimento dessa tecnologiaacarretou uma forte mudana de paradigma na relao homem-mquina, trazida pelapopularizao da Internet. Os computadores pessoais, que por aproximadamente 25 anoscapacitavam-se apenas a tarefas dentro de um ambiente de informaes restrito,controlado e esttico, transformaram-se em janelas para um mundo continuamenterenovvel de informaes, pessoas e software. Com isso, a antiga metfora damanipulao direta da informao que se sustentava devido pequena quantidade de

    informao manipulada comeou a declinar [Maes 97].O resultado disto terminou por cunhar o termo sobrecarga de informao (do

    ingls information overload): uma enorme quantidade de documentos disponveiscoloca ao usurio a difcil tarefa de separar o joio do trigo na busca de informao til.Com o intuito de minimizar este problema, os engenhos de busca como o Excite, oYahoo! e o AltaVista - foram ento projetados, com base em tcnicas desenvolvidas pelarea de Recuperao de Informao (RI) [Baeza-Yates & Ribeiro-Neto 99]. Elesindexam as pginas da Internet por palavras-chave, e aplicam mtodos e estruturas dedados para recuper-las, rapidamente devolvendo ao usurio uma lista de endereos depginas que contm as palavras solicitadas, ordenadas por freqncia destas palavras.

    Dada a variedade de contedo da informao disponvel, esta era a alternativa vivel,uma vez que os dois principais pilares que do suporte existncia da Internet, oprotocolo HTTP ( HyperText Transfer Protocol) e a linguagem HTML (HyperText

    Markup Language), foram projetados tendo como principal intuito assegurar aapresentao e a navegao na rede. Preocupaes sobre como capturar o conhecimentocontido nas pginas - ou seja, realizar buscas semnticas - no foram prioritrias. Devidoa este fato, os engenhos de busca caracterizam-se por alta cobertura, porm significativafalta de preciso1, muitas vezes entregando ao usurio uma grande quantidade deendereos de pginas inteis ou irrelevantes. Utilizando algoritmos matemticos paraatribuir relevncia s pginas, estes engenhos no conseguem dotar de semntica abusca, porque possuem capacidade de representar as pginas com anlises baseadasapenas no nvel lxico.

    Basicamente, duas caractersticas da Internet dificultam o acesso informaotil, especfica e relevante: o volume e a falta de definio semntica precisa,interpretvel por programas e sistemas, para as informaes disponibilizadas nas pginas.Por isso, torna-se difcil agregar valor informao disponvel, ou seja, transform-laem informao til e facilmente acessvel, convertendo informao desestruturada ousemi-estruturada em estruturada. Isso permitiria acesso organizado informao e, o

    1

    Medidas de performance tpicas de RI: cobertura (recall) significa o quociente entre o total dedocumentos relevantes recuperados sobre o total de documentos relevantes, enquanto preciso significao quociente entre o total de documentos relevantes recuperados sobre o total de documentos recuperados.

  • 8/8/2019 Ontologia Web Semantica Freitas

    4/52

    mais importante, que agentes inteligentes pudessem inferir sobre as informaescapturadas.

    A falta de mecanismos capazes de captar a semntica do contedo das pginas daWeb criou uma forte demanda de servios que se ajusta adequadamente classe deservios estudada em Inteligncia Artificial, que passou a ser vista como uma alternativabastante factvel para um melhor tratamento dos problemas relacionados manipulaode informao na Internet. Basicamente, dois tipos de soluo foram propostos, que noso mutuamente exclusivas:

    Dotar os sistemas de inteligncia e autonomia para percorrer e selecionarinformao relevante na imensido da rede, deduzindo ou aprendendo quais asinformaes teis. Esta metfora contribuiu para cunhar termos como agentesinteligentes, agentes de informao e manipulao cooperativa de informao[Oates et al 94].

    Dotar a prpria Internet de inteligncia, fazendo com que as pginas possuamuma semntica clara e definida. e que agentes possam raciocinar sobre estasemntica. Essa idia deu origem ao que chamamos de Web Semntica.

    Com efeito, as ontologias especificao dos conceitos de um determinadodomnio e suas relaes, restries e axiomas, definidos de forma declarativa -representam um papel fundamental em ambas as solues.

    No primeiro caso, as ontologias servem como ferramenta para organizao,reuso e disseminao de conhecimento j especificado, facilitando a construo de novosagentes. Porm, para este tipo de soluo, as ontologias desempenham um papel ainda

    mais importante, que motivou a retomada de pesquisas sobre o tema: servir comovocabulrio de comunicao entre agentes inteligentes (vide prxima sub-seo).

    No segundo caso, linguagens esto sendo desenvolvidas para permitir quepginas sejam anotadas usando formalismos lgicos, que, por sua vez, possam definir ouinstanciar ontologias. A Web Semntica ser apresentada na seo 7.

    1.2.1. A necessidade de cooperao e comunicao entre agentes inteligentes

    Face ao tamanho da Internet, qualquer aplicao que se proponha a lidar com toda arede seja um engenho de busca, um coletor de estatsticas ou outra aplicao qualquer deve aproveitar-se de uma caracterstica intrnseca a qualquer rede: a distribuio. Adistribuio gera concorrncia e paralelismo, e isso faz a diferena em termos de tempode resposta. Assim, um agente deve ser capaz de pedir, oferecer e receber auxlio deoutros agentes, compartilhando com estes os resultados de suas operaes.

    Para que esta cooperao se torne efetiva, preciso um modelo de comunicaoque lhes permita trocar conhecimento sobre usas tarefas, sobre o domnio de que tratam,sobre suas capacidades e suas intenes em relao aos outros agentes (pedir oufornecer informao, recrutar outros agentes, etc). Os requisitos de um modelo decomunicao para agentes inteligentes so os seguintes:

    Cada mensagem deve expressar uma inteno pragmtica, e um campo

    especificando essa inteno deve fazer parte da linguagem de comunicao;

  • 8/8/2019 Ontologia Web Semantica Freitas

    5/52

    As mensagens devem referir-se a um contexto e vocabulrio comuns, sobre oqual a troca de mensagens possa ser efetuada dentro de uma semntica bemdefinida, segura e sem ambigidades. Esse contexto provido por ontologias,

    que normalmente representam o domnio em que os agentes atuam, como ilustraa figura 1. Nela, os dois agentes se referem a um 777, porque compartilham aontologia de meio de transportes, e ambos tm em suas bases de conhecimento ofato de que 777 uma instncia de um avio de carreira.

    Figura 1. Agentes em comunicao usando uma ontologia como vocabulriocompartilhado [Huhns & Singh 97].

    O conhecimento contido na mensagem deve estar escrito em algum formalismode representao de conhecimento que defina a sintaxe e semntica damensagem.

    Ambos os agentes so capazes de decodificar mensagens escritas no formalismoescolhido, diretamente ou atravs de tradues ou mapeamentos.

    O modelo de comunicao em nvel de conhecimento (oupeer-to-peer) satisfaz aestes requisitos. Ele baseia-se na Teoria dos Atos de Fala [Austin 62]. A comunicaohumana tem sido modelada por esta teoria, que considera que a linguagem falada tempor objetivo engendrar aes e provocar mudanas no ambiente. Os Atos de Fala,anteriormente estudados em Processamento de Linguagem Natural, uma rea deInteligncia Artificial, so classificados como assertivos (informar), diretivos (pedir ouconsultar), comissivos (prometer ou comprometer-se), proibitivos, declarativos (causareventos para o prprio comunicador) e expressivos (emoes). A comunicao entreagentes dotados de autonomia e inferncia tem seguido este modelo, que sob o ponto devista de semntica muito mais claro, portvel, e abrangente do que o modelo Cliente-

    Servidor. Uma das principais vantagens do modelo em nvel de conhecimento reside naproatividade ou seja, qualquer agente pode iniciar a comunicao a qualquer instante.

    Id Modelo

    Xy 777

    Agente daCia. Area

    Ont. de Meios de Transporte

    Trem Avio Barco

    Transporte Carreira Caa

    Avio

    Meu agente

    777[-um 777]

    Id Modelo

    Xy 777

    Agente daCia. Area

    Ont. de Meios de Transporte

    Trem Avio Barco

    Transporte Carreira Caa

    Avio

    Meu agente

    777[-um 777]

  • 8/8/2019 Ontologia Web Semantica Freitas

    6/52

    Um exemplo de mensagens com intenes e empregando ontologias em agentes deinformao encontra-se na seo 4.2.1.

    A necessidade de agentes inteligentes, de comunicao em nvel deconhecimento e de uma Web Semntica, prementes para a resoluo de problemasrelativos manipulao de informao na Internet, trazem tona de volta a antigacontrovrsia declarativo-procedimental.

    O presente trabalho visa apresentar no s apresentar as ontologias dentro deuma perspectiva histrica na informtica, mas tambm discorrer sobre aspectos tericose prticos de ontologias. O restante desta seo ainda abordar aspectos histricos etericos, como motivaes, dificuldades e a conceitos iniciais como o nvel deconhecimento e componentes de sistemas baseados em conhecimento. Depois vriosaspectos sobre ontologias sero vistos: seus formalismos de representao deconhecimento usados para a sua especificao (seo 2), benefcios (seo 3),ferramentas para o seu manuseio e construo (seo 4), alm de princpios e tcnicaspara a sua construo, reuso e manuteno (seo 5). A seo 6 ilustra o uso deontologias em aplicaes prticas. A principal destas aplicaes, a Web semntica, detalhada em suas camadas e linguagens na seo 7. Tpicos abertos de pesquisa emontologias so discutidos na seo 8, e concluses so apresentadas na seo 9.

    1.3. O nvel de conhecimento

    A tentativa de criar sistemas diretamente a partir do conhecimento acerca dos processos,isto , declarativamente, tornou possvel aos computadores realizar deduo automtica,dando origem rea chamada hoje de Inteligncia Artificial Simblica. A rea

    fundamenta-se basicamente na separao entre o conhecimento e o processo dedutivo ouinferncia. A concepo de sistema dessa natureza passa por trs especificaesconsecutivas [Newell 82]:

    O nvel de conhecimento ou epistemolgico, que consiste numa especificaoabstrata do conhecimento do domnio ou problema que se deseja modelar;

    O nvel lgico, que converte as especificaes de conhecimento em sentenasde lgica formal;

    O nvel de implementao, que codifica estas sentenas em linguagemcomputacional, seja numa linguagem ou num banco de dados dedutivo, dito

    base de conhecimento.A existncia do nvel de conhecimento de suma importncia para os sistemas

    simblicos, principalmente por uma razo, que se confunde com a prpria histria daInteligncia Artificial Simblica. A motivao principal do paradigma declarativo eramodelar sistemas num nvel mais elevado. O nvel de conhecimento guarda uma relaomais prxima e direta com o conhecimento sobre o domnio a ser modelado. O modelodeclarativo como um todo consiste numa forma mais flexvel de se descrever umdomnio, uma vez que, no nvel de conhecimento ainda no h compromisso com aimplementao.

    A motivao de evitar escrever cdigo e tentar abstra-lo, colocando oconhecimento do lado de fora dos sistemas extremamente legtima: a maior parte dasvantagens do paradigma declarativo como flexibilidade, legibilidade, fidelidade

  • 8/8/2019 Ontologia Web Semantica Freitas

    7/52

    semntica, engajamento ontolgico, extensibilidade, reuso, abstrao das compilaes,portabilidade e capacidade de inferncia - j era visionada desde essa poca, ecorroboraram essa idia. Ainda no se enxergava, contudo, o potencial do uso do

    conhecimento por entidades de software, que as ontologias viriam a proporcionar,organizando o conhecimento em conceitos e domnios, e nem que elas implementariam onvel de conhecimento apropriadamente, em tese, sem refletir um formalismo derepresentao de conhecimento especfico. Saliente-se que esta prtica traz em si apossibilidade do conhecimento ser portvel, enquanto conhecimento e no enquantocdigo, e, portanto, independente de mquina.

    1.3.1. Dificuldades iniciais do paradigma declarativo lgico

    Contudo, alguns obstculos eram difceis de transpor. A dificuldade intrnseca doprocesso de aquisio - por vezes, o prprio especialista em determinado domnio no

    sabe porque toma certas decises -, a falta de metodologias para essa aquisio, a faltade colaborao de especialistas com receio da perda de poder, aliadas falta deorganizao de conhecimento em estruturas como as ontologias, fez com que algunssistemas especialistas simplesmente no obtivessem a performance de acerto aceitvel.

    O exagerado otimismo com o potencial dos Sistemas Baseados em Conhecimentoesbarraria na questo da complexidade computacional, cujos estudos sobre classes decomplexidade s viriam a ser colocados em bases concretas no incio dos anos 70,quando a indstria j havia se estruturado sobre a computao imperativa. Oembevecimento, a falta de objetividade e conseqente amadorismo da pesquisa gerada,que no se preocupou em firmar produtos e coloc-los no cotidiano, formando indstria,

    tambm ajudou a que, durante essa dcada e a seguinte, se formasse uma imagemnegativa da rea como um todo. Os resultados de pesquisa limitavam-se a mostrar quealguns caminhos eram viveis, mas formar indstria e firmar produtos representariatrabalho considerado braal, e, portanto, desinteressante. Ao invs disso, ospesquisadores iam debruar-se sobre outras reas sedutoras de Inteligncia Artificial.

    1.3.2. Motivaes do nvel de conhecimento

    Essa idia de manter fatos e conhecimento do lado de fora dos programas comeou a serfomentada por um sistema em 1958, o Advice Taker [McCarthy 58], e sedimentou-secom o uso massivo de Lisp na representao de fatos e regras em sistemas especialistas[Winston & Horn 81]. Ao invs de colocarem-se os fatos dentro das regras, percebeu-seque as regras poderiam ser mais genricas se os fatos estivessem separados. Com isso, oconceito de processo, ao invs de significar uma ao, passou a denotar muito mais umadeciso de ao a ser tomada no caso de Lisp, atravs de casamento de padres, umprimeiro esboo de mtodo de deduo, s que ainda sem a presena direta de lgicaformal. LISP (List Processing, em portugus, processamento de listas), uma linguagemfuncional voltada para o manejo de listas, foi criada justamente com o propsito derepresentar conhecimento de forma mais abstrata.

    Cabe lembrar, ainda, um ltimo argumento favorvel s solues declarativas,que s pde ser percebido em sua plenitude luz das ontologias: o engajamentoontolgico ou de conhecimento, ou seja, a semntica das sentenas codificadas em lgicaguarda uma relao mais direta com o domnio modelado e permite o reuso de um

  • 8/8/2019 Ontologia Web Semantica Freitas

    8/52

    grande volume de informao que desempenha o papel de conhecimento estruturado,disponvel para reuso em larga escala por sistemas e programas.

    1.4. Os sistemas baseados em conhecimento (SBCs)Em meados dos anos 70, comearam a aparecer os sistemas baseados em conhecimento, poca, tambm chamados de sistemas de inferncia orientados a padres [Hayes-Rothet al 78], que incorporam a programao lgica. Estes sistemas so compostosbasicamente de trs entidades:

    Um formalismo fundamentado em lgica matemtica, no qual o cdigo dosistema baseado em conhecimento ser escrito,

    Um mtodo ou estratgia de resoluo para o formalismo escolhido, dito motorde inferncia,

    Estratgias de controle e escalonamento da inferncia ou mtodos de resoluode conflitos, implementados dentro dos motores de inferncia por mduloschamados executivos [Hayes-Roth et al 78]. Os executivos tm a funo deguiar e otimizar a inferncia, que s vezes no consistente ou completa.

    1.4.1. Novo problema: inadequao do hardware inferncia

    As estratgias de controle ou resoluo de conflitos encobrem um problema crucial paraos sistemas baseados em conhecimento: o hardware, que foi projetado para programaoimperativa e no para programao lgica. Como se pode deduzir pelo exposto acima,SBCs devem, tanto quanto possvel, explorar concorrncia e paralelismo, muito teis na

    inferncia, com vrios predicados podendo ser tratados simultaneamente. Por isso, oprocesso de inferncia (que simblico) no casa bem com as implementaes dehardware e software bsico, orientadas manipulao de nmeros.

    Para ilustrar este fato, mencionemos por exemplo o caso da linguagem Prolog, aprimeira linguagem baseada em programao relacional ou lgica. Embora tenha sidocriada em 1972, Prolog s veio a tornar-se popular a partir de 1977, quando foramcriadas asMquinas Abstratas de Warren (WAMs) [Warren 83]. At ento, Prolog noera empregada face sua lentido. As WAMs sanaram esta deficincia criandoregistradores e pilhas virtuais. Na fase de compilao, as sentenas em Prolog sotraduzidas para instrues num cdigo intermedirio implementado em outra linguagem,

    (C, por exemplo), cujos operadores lanam mo destas pilhas e registradores virtuais,conseguindo uma performance comparvel s linguagens mais velozes. Na realidade, como se toda a programao lgica estivesse sendo traduzida para imperativa porrestries de hardware! A

    A deciso de continuar mantendo hardwares basicamente imperativos, foi ditadapor um mercado crescente baseado em programao imperativa, que tambm conquistoua maior parte dos fundos de pesquisa. Contudo, houve projetos bem-sucedidos deinferncia paralela em nvel de hardware, dos quais o projeto japons PIM (Paralell

    Inference Machine), - parte do projeto de mquinas de 5 gerao que seriam capazes defalar, deduzir e aprender -, foi o mais avanado dentre eles, alcanando 64 MLIPS

    (milhes de inferncias lgicas por segundo) contra 50 KLIPS de Prolog com WAM.

  • 8/8/2019 Ontologia Web Semantica Freitas

    9/52

    Fica no ar a indagao se teramos chegado mais rapidamente aos agentes e multiagentescognitivos de hoje, se este caminho houvesse sido trilhado.

    2. Formalismos lgicos de representao de conhecimentoNesta seo, apresentaremos vrios formalismos de representao, divididos em doisgrupos de acordo com a abordagem de modelagem de conhecimento. Esta diviso ajudaa perceber a evoluo das abordagens de especificao de SBCs. No primeiro grupo,sero apresentados os formalismos orientados a predicados e, no segundo, formalismosorientados a classes e relaes.

    2.1. Formalismos orientados a predicados

    Os dois formalismos a serem apresentados nesta subseo visam, essencialmente, amodelagem de predicados lgicos, abordados como os principais elementos de um

    domnio. Esta viso funcional dos domnios preocupava-se mais com o conhecimentoestratgico - ou seja, como seria feita a inferncia e resolvido o problema. A abordagemde desenvolvimento dos primeiros sistemas especialistas.compartilhava desta viso, que,por outro lado, dificultava uma especificao do nvel de conhecimento mencionadoanteriormente, que possui mais analogias com formalismos orientados a relaes..

    2.1.1. Regras de Produo

    A idia de se empregar regras enquanto formalismo lgico data de 1936, quando forampropostos os sistemas de Post [Bittencourt 2001]. Eis um exemplo de uma sentenalgica transformada em regra orientada ao conseqente:

    animal(x)^estimao(x)^pequeno(x) => domstico(x)

    premissas conseqente

    Esta regra pode ser entendida como: Para todo x (quantificador universalimplcito), se existe um fato afirmando que x animal e outro fato afirmando que deestimao e outro fato afirmando que pequeno, isto implica a validade de um novofato, o de que x domstico. O formalismo chama-se regras de produo justamentepor produzir novos fatos. Um motor de inferncia baseado em regras de produo chamado de motor com encadeamento para a frente (forward-chaining).

    O primeiro sistema especialista, o Dendral [Feigenbaum et al 71], que inferiaestruturas moleculares a partir de dados fornecidos por um espectrmetro, teve seuconhecimento escrito em regras. As regras, enquanto formalismo de representao deconhecimento, tem angariado notrio sucesso junto aos usurios, devido suasimplicidade e facilidade de uso.

    A partir da aprovao de suas premissas, vrias regras podem encontrar-seem condies de serem disparadas ao mesmo tempo, no o conseguindo devido aofuncionamento seqencial do hardware. A funo da resoluo de conflito se encarregade escolher a regra a ser disparada.

    Regras consistem no formalismo mais procedimental dentre os existentes, umavez que, no lado do conseqente, tanto pode haver a criao de novos fatos na base de

  • 8/8/2019 Ontologia Web Semantica Freitas

    10/52

    conhecimento quanto a execuo de comandos e procedimentos. Com a percepo deque a integrao entre as linguagens convencionais, como C e Java, e motores deinferncia poderia resultar benfica, foram criados os motores de inferncia plugveis a

    cdigos imperativos. Entre os motores de inferncia mais populares esto o Jess (JavaEmbedded Expert System Shell) [Friedmann-Hill 97], que possui alguns milhares deusurios, devido boa integrao entre objetos Java, e o CLIPS (C Language

    Integrated Production System) [Riley 99] que se integra linguagem C. Mantendo-seo conhecimento fora dos programas, abstraiu-se a compilao, ou seja, no se precisavarecompilar os programas quando se alteravam as regras. O conhecimento fora dosprogramas, torna-se, portanto naturalmente mais extensvel e altervel.

    2.1.2. Programao em lgica

    Neste formalismo, o conhecimento codificado em conjuntos de sentenas lgicas

    expressas em clusulas de Horn invertidas. Uma clusula de Horn consiste de umconjunto de predicados unidos por conjunes (conectivo e) implicando em apenas umpredicado, como, por exemplo, em:

    av(x,z)

  • 8/8/2019 Ontologia Web Semantica Freitas

    11/52

    Classes, que funcionam como os conceitos das ontologias, normalmenteorganizados em hierarquias. As classes ligadas com classes mais altas, sosubclasses destas classes mais altas, que, por sua vez, so superclasses destas

    classes mais baixas. Atributos, que definem as caractersticas de membros de uma classe, preenchidos

    com valores do tipo especificado para o atributo. Este tipo pode ser um dos tiposbsicos (inteiro, string, booleano, float, smbolo, etc) ou o tipo especial instnciade classe, que responsvel por uma funo muito importante em sistemas de

    frames: definir relaes entre classes. Por exemplo, a classe Professor teria umatributo Orientados, que seria da classe Estudantes.

    Instncias de classes, objetos criados e modelados de acordo com a definio dascaractersticas da classes (seus atributos), forma de preench-los, etc.

    Herana, que so relaes do tipo -um entre as classes, bem semelhantes aoconceito de subclasse dos objetos. a herana que define a hierarquia.Diferentemente da maioria dos sistemas orientados a objetos, pode existir heranamltipla.

    Alm da herana mltipla, frames tm uma outra caracterstica prpria. Sodotados de estruturas pr-definidas, chamadas de facetas, para especificar restriessobre os atributos. As facetas mais comuns, alm do tipo, presentes em linguagens de

    frames so:

    Valor default, que atribui um valor para o atributo, caso nenhum tenha sidoassinalado na criao de uma instncia ou subclasse;

    Valores permitidos (allowed-values) para o atributo,

    Domnio, que determina conjuntos de valores esparsos, possveis para umatributo (por exemplo, 1..100, ou seja, de 1 a 100).

    Classes permitidas (allowed-classes) para o atributo, se ele do tipo instncia declasse,3

    Cardinalidade, determinando o nmero mximo e mnimo de elementos de umatributo, pois ele pode ser multivalorado,

    Documentao, para descrever o atributo.

    Observe-se, ainda, que a faceta valor default faz com que instncias sejamconsideradas excees classe, o que, por sua vez, faz com que um sistema deframes seenquadre como uma lgica no-monotnica, uma vez, que, se um dado acrescentado base de conhecimento, a concluso do raciocnio torna-se diferente da normalmenteesperada.

    Outra caracterstica a existncia de atributos inversos, que estabelecem umacorrespondncia biunvoca entre si. Por exemplo, o atributo Orientados da classeProfessor inverso d o atributo Orientador da classe Aluno.

    3 Alguns sistemas deframes consideram que a faceta domnio coincide com a faceta classes permitidas.

  • 8/8/2019 Ontologia Web Semantica Freitas

    12/52

    Porm, a semelhana entre frames e objetos apenas aparente [Farquhar 97].Enquanto objetos e suas classes visam modelar estruturas de dados e reusar cdigo,

    frames tm por intuito modelar aspectos de um domnio real. Por exemplo, elipse no ,

    no mundo real, uma sub-classe de crculo, mas para reusar cdigo, modelagensorientadas a objeto podem violar premissas ontolgicas, no exemplo abaixo:Class circulo {int x,y; int altura} e

    Class elipse extends circulo {int largura}

    . Tambm no necessria emframes a incluso de detalhes de implementao,como tamanho de strings, etc. Em termos de implementao, a diferena principal residena presena de facetas e pela ausncia de mtodos e respectivo encapsulamento em

    frames, desnecessria para a declaratividade.

    Apesar de a inferncia sobre frames ser normalmente realizada atravs de

    unificao, nada impede que frames e regras possam ser combinadas. O sistema deproduo CLIPS, para ganhar expressividade, inclui uma linguagem interna (COOL C Object-Oriented Language, linguagem orientada a objetos para a linguagem deprogramaoC) para definir e manipular frames, implementados com todas as suascaractersticas. As regras de produo referenciam estesframes [Riley 99].

    A linguagem deframes atualmente mais usada para a definio de ontologias, aF-Logic [Kifer et al 95], que permite ainda a integrao de objetos procedimentais e adefinio de axiomas. Axiomas so sentenas consideradas sempre vlidas, e que, naprtica, servem aos atributos como restries complexas e que podem envolver classes,instncias e outros atributos.

    2.2.2. Redes semnticas

    Redes Semnticas [Woods 75] definem conceitos ligados por relaes,representadas graficamente como arcos. Pode-se considerar as Redes Semnticas comoum sistema baseado em frames, se os arcos da rede forem atributos do framecorrespondente a essa rede. Ressalve-se, porm, o fato de que as relaes de herana eos conceitos de classe constituem o cerne de um frame, portanto, se a hierarquia deconceitos for mais importante na representao do domnio tratado dp que os atributos,a representao em frames ganha em organizao. Quando os atributos so maisimportantes, as Redes Semnticas so mais adequadas. Por sua expressividade nessescasos, as redes tm sido largamente aplicadas em Processamento de Linguagem Natural.Por exemplo, a linguagem LIFE (Logics, Inheritance, Functions and Equations) [Ait-Kaci & Podelski 93], uma linguagem lgica e funcional com tipos e herana, representaredes semnticas. Um exemplo de uso desta linguagem aparece no seguinte cdigo, queespecifica, entre outras coisas, que, se duas pessoas so cnjuges, elas tm o mesmosobrenome.X: pessoa ( nome => id ( primeiro => string, ltimo => Y: string ),

    Cnjuge => pessoa ( nome => id ( ltimo => Y),Cnjuge => X))

    Note que rtulos (X e Y) expresses restries complexas sobre atributos. Arede semntica correspondente a este cdigo mostrada na figura 2.

  • 8/8/2019 Ontologia Web Semantica Freitas

    13/52

    pessoa id

    string string

    pessoa id

    nome

    cnjuge primeiro ltimo

    nomeltimo

    pessoa id

    string string

    pessoa id

    nome

    cnjuge primeiro ltimo

    nomeltimo

    Figura 2. Representao grfica de uma rede semntica sobre cnjuges.

    2.2.3. Lgica de descries

    Baseada em redes semnticas e inicialmente chamada de lgica terminolgica[Brachman & Schmolze 85], este formalismo prope a definio de conceitos por meiode descries esparsas. No necessrio, como nos frames, que todas as definiesrelativas a uma classe estejam agrupadas; o usurio vai gradativamente entregando-as aosistema, que, atravs de um classificador, se encarrega de organizar as informaes einferir o que possvel. O formalismo fornece nativamente atributos bastanteexpressivos, com semntica e inferncia associadas, porm cuidadosamente escolhidosde forma a garantir um algoritmo de inferncia decidvel e eficiente. Alguns delesimplementam o seguinte [Fensel 2001]:

    Herana Mltipla: e.g., (PRIMITIVE (AND CAR EXPENSIVE-THING) sports-car), denotando que uma instncia do conceito carro esporte (sports-car) herdaas descries de CAR e EXPENSIVE-THING. Esta no pode ser considerada anica forma de herana para esta lgica, uma vez que existem outras formas deaproveitar descries j existentes, como pode ser observado em outros atributoslogo abaixo e em outras linguagens como OWL (vide subseo 7.5.).

    Papis: e.g., (FILLS thing-driven Corvette), significa que um Corvettedesempenha o papel de algo dirigvel;

    Restrio de valores: e.g., (ALL thing-driven CAR), onde tudo que dirigvel dentro deste domnio deve ser da classe CAR;

    Restrio de limites: e.g., (AT-LEAST 3 wheel), descrevendo qualquer objetorelacionado a 3 outros objetos distintos que desempenham o papel de roda(wheel).

    Co-referncia: e.g., (SAME-AS (driver) (insurance-payer)), atribuindo atodos os indivduos que atuam como motoristas (driver) o papel de segurados(insurance-payer).

    Exemplos de linguagens que implementam este formalismo so CLASSIC,FLEX, KL-ONE e LOOM.

  • 8/8/2019 Ontologia Web Semantica Freitas

    14/52

    2.4. O Elemento de Representao Comum :Frames

    Os formalismos de representao de conhecimento orientados a classes e relaes(frames, redes semnticas e lgica de descries) proporcionaram a preciosaoportunidade de se estruturar conhecimento em ontologias. At o incio dos anos 90, oconhecimento de um sistema especialista no podia ser reusado ou compartilhado,organizando-se em bases de conhecimento monolticas e isoladas, escritas em diversaslinguagens, sem interfaces de acoplamento, e, portanto, sem interoperabilidade, apesardos formalismos lgicos serem, muitas vezes, similares. Sentiu-se a necessidade de reusode conhecimento em muitos dos domnios modelados, especialmente em medicina, ondeos conceitos so numerosos e cheios de relacionamentos.

    Precisava-se encontrar um substrato comum de representao, no qual oconhecimento pudesse ser especificado e facilmente convertido para outros formalismos.O projeto KSE (Knowledge Sharing Effort em portugus, esforo decompartilhamento de conhecimento) [Farquhar 96] tornou-se pioneiro em escolher os

    frames como base para a construo de ontologias reusveis e ambientes para a suaespecificao e reuso. Os frames, por sua simplicidade e expressividade, tm sido, apartir desta deciso, o elemento bsico das ontologias, o formalismo comum deinteroperabilidade entre bases de conhecimento sobre os mais diversos domnios, escritassob a forma de redes semnticas, lgica de descries e at dos prpriosframes,

    3. Ontologias: o ressurgimento das solues declarativas

    Alm dos problemas de interoperabilidade citados logo acima, na viso de muitospesquisadores, herdada dos formalismos orientados a predicados, a especificao de

    sistemas baseados em conhecimento deveria ter uma viso puramente funcional, com ofoco sobre o conhecimento estratgico regras e funcionamento da inferncia , o quereduzia o volume de conhecimento a ser reusado. Muitos dos conceitos e relaes dodomnio estavam implcitos, eram tratados como premissas e/ou misturados comconhecimento estratgico. Bases de conhecimento confeccionadas desta forma eramteis apenas para a resoluo de problemas especficos [Gennari et al 2003].

    A construo de ontologias, sob essa tica, pode ser vista como um passoimportante de evoluo na especificao de conhecimento. A decomposio desseconhecimento em mdulos deconstruo com forte engajamento ontolgico ou seja,similaridade com o conhecimento tanto em relao forma como ele organizado, como

    com a terminologia empregada numa rea especfica, propiciou a criao de ontologias.A idia de reuso, ademais, adiciona especificao de conhecimento a possibilidade decomposio, contrapondo-se s bases de conhecimento monolticas e especficaselaboradas at ento.

    3.1. Definies de ontologias

    A necessidade de melhores ferramentas de busca e tratamento de informao para a Webterminou por disseminar o termo agente para praticamente vrios outros ramos dainformtica. Nesta trilha, o novo termo da moda, que vem herdando essa popularidade,face s promessas de melhoria destas atividades, o termo ontologia, uma vez que elas

    esto presentes em muitos sistemas, ferramentas e produtos de manipulao deinformao e comrcio eletrnico, representadas como hierarquias de palavras-chave,

  • 8/8/2019 Ontologia Web Semantica Freitas

    15/52

    conceitos, e muitas outras formas, chegando a haver, inclusive, vagas no mercado paradesenvolvedores de ontologias, ou ontologistas [Clark 99]. Contudo, ontologiasdevem possuir um significado e abrangncia muito mais profundos do que as simples

    hierarquias de conceitos e palavras-chaves empregadas por muitos engenhos de busca.Apesar da palavra ontologia denotar uma teoria sobre a natureza do ser ou

    existncia, em Inteligncia Artificial ela pode ser interpretada como o conjunto deentidades com suas relaes, restries, axiomas e vocabulrio. Uma ontologia define umdomnio, ou, mais formalmente, especifica uma conceitualizao acerca dele [Gruber 95].Normalmente, uma ontologia organizada em hierarquias de conceitos (ou taxonomias).Pelo fato de, idealmente, no refletirem nenhum formalismo especfico, e derepresentarem com freqncia uma vocabulrio comum entre usurios e sistemas [Clark99], pode-se considerar as ontologias como a materializao do nvel de conhecimento.

    Podemos, tambm, definir o termo ontologia a partir dos requisitos parapossibilitar sua aplicao em informtica:

    Uma ontologia uma especificao explcita e formal de umaconceitualizao compartilhada. [Studer et al 98]

    Esclarecendo os requisitos desta definio:

    Por especificao explcita, podemos entender as definies de conceitos,instncias, relaes, restries e axiomas.

    Por formal, que declarativamente definida, portanto, compreensvel paraagentes e sistemas.

    Por conceitualizao, que se trata de um modelo abstrato de uma rea deconhecimento ou de um universo limitado de discurso.

    Por compartilhada, por tratar-se de um conhecimento consensual, seja umaterminologia comum da rea modelada, ou acordada entre os desenvolvedoresdos agentes que se comunicam.

    De fato, ontologias pr-construdas sobre domnios restritos tm sido bastantereutilizadas e podem vir a representar um papel fundamental como fornecedoras deconhecimento para a inferncia dinmica realizada por agentes inteligentes.

    3.1. Tipos de ontologias

    Diferentes tipos de ontologias, de acordo com seu grau de genericidade podem serdelineados (adaptado de [Gmez-Perez 99]):

    Ontologias de representao definem as primitivas de representao - comoframes, axiomas, atributos e outros de forma declarativa. Essa idia[Chandrasekaran & Josephson 96] abstrai os formalismos de representao,porm traz desvantagens (ver subseo 4.2.7.).

    Ontologias gerais (ou de topo) trazem definies abstratas necessrias para acompreenso de aspectos do mundo, como tempo, processos, papis, espao,seres, coisas, etc.

  • 8/8/2019 Ontologia Web Semantica Freitas

    16/52

    Ontologias centrais (core ontologies) ou genricas de domnio definem os ramosde estudo de uma rea e/ou conceitos mais genricos e abstratos desta rea. Porexemplo, a ontologia central de direito criada por Valente e Breuker [96], inclui

    conhecimentos normativos, de responsabilidade, reativos, de agncias legais,comportamentos permitidos, etc. Esses conceitos e conhecimentos foramagrupados nesta ontologia para que ela sirva de base para a construo deontologias de ramos mais especficos do direito, como direito tributrio, defamlia e outros.

    Ontologias de domnio tratam de um domnio mais especfico de uma reagenrica de conhecimento, como direito tributrio, microbiologia, etc.

    Ontologias de aplicao procuram solucionar um problema especfico de umdomnio, como identificar doenas do corao, a partir de uma ontologia de

    domnio de cardiologia. Normalmente, ela referencia termos de uma ontologia dedomnio.

    Como se pode perceber, os tipos de ontologias esto listados em ordemdecrescente de genericidade. Nem todos os tipos so necessrios para a construo deuma aplicao. H ainda que se preocupar em manter as ontologias reusveis, ou seja,escolher que uma ontologia num nvel acima da ontologia em uso esteja ligada a esta ouevitar relacionamentos com uma ontologia especifica.

    Existe outra classificao quanto ao teor das ontologias, aplicvel apenas para osdois ltimos tipos citados acima:

    Ontologias de tarefas descrevem tarefas de um domnio - como processos,planos, metas, escalonamentos, etc -, com uma viso mais funcional, emboradeclarativa, de um domnio.

    Ontologias de domnio propriamente ditas, tem uma viso mais epistemolgicado domnio, focando nos conceitos e objetos do universo de discurso.

    3.2. Exemplos de ontologias

    As ontologias mais referenciadas na literatura so as gerais, pois muitas aplicaestomam-nas como base. Este tipo de ontologias compartilhou seu nascedouro com aprpria lgica [Russel & Norvig 95]: Aristteles, ao criar a primeira forma de lgica,

    criou tambm as categorias, uma taxonomia para os objetos do mundo.Entre as ontologias mais citadas, esto a ontologia de Sowa [Sowa 1999] e a Cyc

    [Lenat & Guha 90], que visava o raciocnio de senso comum. Caso isto fosse alcanado,SBCs poderiam, com o auxlio de uma grande ontologia, ter um conhecimentogeneralizado acerca do mundo e fazer inferncias teis, e no apenas as infernciasespecficas, tpicas de um sistema especialista, que trabalha sobre um domnio restrito.Existem duas razes para a existncia de ontologias gerais: um grande investimento foifeito para sua existncia tentando aproxim-la da realidade, e tambm a independnciaou abrangncia expressa nelas, que no necessitam referenciar outras ontologias. Afigura 3 mostra as classes primitivas de algumas ontologias de topo, evidenciando

    diferentes abordagens epistemolgicas.

  • 8/8/2019 Ontologia Web Semantica Freitas

    17/52

    Figura 3. Diferentes primitivas de ontologias de topo [Chandrasekaram 99].Ontologias lingsticas, como o WordNet [Miller 95], contm sinnimos,

    adjetivos e verbos relacionados por redes semnticas, e tambm so bastantereferenciadas por sua aplicao em sistemas de processamento de linguagem natural.Elas se propem a atacar ambigidades lingsticas durante o tratamento sinttico esemntico de textos.

    3.3. Benefcios das ontologias

    parte dos benefcios advindos de uma abordagem declarativa, outros benefcios maisdiretos, ligados prtica de construo de sistemas baseados em conhecimento, tm sido

    gerados. De incio, o projeto KSE e suas ontologias contriburam para uma maiorcooperao entre os grupos de pesquisa responsveis por manter as ontologias, damesma forma como mantm conhecimento, o que, tornando-se uma tendncia, pode vira provocar uma mudana cultural. Desde que foi criado o KSE, esto sendo definidas emantidas ontologias extensveis, abrangentes, gerais e muito detalhadas, por grupos depesquisa, abarcando toda a pesquisa da rea cujo conhecimento se deseja representar.Esta orientao ontolgica trouxe muitos benefcios, alguns dos quais no previstos, eque s vieram frutificar poca de sua implementao. So eles:

    A oportunidade para os desenvolvedores de reusar ontologias e bases deconhecimento, mesmo com adaptaes e extenses.

    impacto sobre o

    desenvolvimento de sistemas baseados em conhecimento substancial: aconstruo de bases de conhecimento redunda na tarefa mais cara e demorada deum projeto de sistemas especialistas e/ou agentes. s ontologias, permite-seainda aos usurios efetuarem consultas, comparaes, integrao e checagens deconsistncia (vide figura 4).

    A disponibilizao de uma vasta gama de ontologias de prateleira, prontas parauso, reuso e comunicao por pessoas e agentes. Hoje as ontologias maismaduras, algumas com mais de 2.000 definies, incluem metadados de imagensde satlites e para integrao de bases de dados de genoma, catlogos deprodutos, osciloscpios, robtica, semicondutores, terminologia mdica, o

    padro IEEE para interconexes entre ferramentas, e outras [Farquhar 96].

  • 8/8/2019 Ontologia Web Semantica Freitas

    18/52

    Figura 4. Possibilidades de criao, manuteno e reuso de ontologias atravs deeditores [Fikes 98].

    A possibilidade de traduo entre diversas linguagens e formalismos derepresentao conhecimento. A traduo concretiza um ideal perseguido porgeraes de pesquisadores de Inteligncia Artificial. Ela facilita o reuso deconhecimento, e pode vir a permitir comunicao entre agentes em formalismosdiferentes, uma vez que este servio encontra-se disponvel um nmero cada vezmaior de formalismos de representao de conhecimento (para os formalismostratados pela Ontolingua, vide Figura 5). Outra forma de alcanar esse intentoso editores de ontologias em que ele pode escolher em que linguagem derepresentao ser escrito o cdigo gerado. No editor Protg-2000 [Noy et al2000], podem ser geradas ontologias em CLIPS, Jess, Prolog, XML, RDF, OIL,DAML-OIL e F-Logic.

    Figura 5. A Ontolingua e os formalismos para os quais podem ser traduzidas asontologias.

    O acesso on-line a servidores de ontologias, capazes de armazenar milhares declasses e instncias, que serviriam a vrias empresas ou grupos de pesquisa, e que

    !

    " # % &) ( 0 # 1) 2 3

    4 5 5 7

    9 @ B D

    G H P R

    D S T

    U V W X W Y

    ` S D b c e

    U f V g h i i

    p D q r D

    s @ t D u b

    v g w x w y

    r u c e

    R

    c c u

    c @ @

    T

    4 v

    r u c e

    t D u c u q

    c @ @

    5

    s

    c

    u r q

    D u q r b

    !

    " # % &) ( 0 # 1) 2 3

    4 5 5 7

    9 @ B D

    G H P R

    D S T

    U V W X W Y

    ` S D b c e

    U f V g h i i

    p D q r D

    s @ t D u b

    v g w x w y

    r u c e

    R

    c c u

    c @ @

    T

    4 v

    r u c e

    t D u c u q

    c @ @

    5

    s

    c

    u r q

    D u q r b

  • 8/8/2019 Ontologia Web Semantica Freitas

    19/52

    podem funcionar como ferramentas para manter a integridade do conhecimentocompartilhado entre elas, garantindo um vocabulrio uniforme.

    O mapeamento entre formalismos de representao de conhecimento, que,inspirado no componente de conectividade para sistemas gerenciadores de bancosde dados ODBC (Open Database Connectivity), liga dois formalismos criandouma interface interopervel de acesso comum para eles, permitindo a um agenteacessar o conhecimento de outro agente. Por isso, o pacote gerado paraimplementar esta facilidade foi chamado de OKBC (Open Knowledge BaseConnectivity) [Chaudri et al 98].

    4. Ferramentas para Manuseio de Ontologias

    A construo de ontologias para a comunicao em nvel de conhecimento entre agentescognitivos tem se tornado alvo de estudos, e propiciou a elaborao de ferramentas como objetivo de dar suporte no s a esta atividade, mas a atividades-fim de uso deontologias, como, por exemplo, ferramentas de escritrio para gesto de conhecimento(knowledge management). Com efeito, vrios ambientes para a manipulao deontologias - que incluem editores, servidores, repositrios e ferramentas paraconsolidao e traduo de ontologias - esto surgindo, com o objetivo no s defacilitar a sua construo, como tambm de disponibilizar ontologias pblicas para reusoe extenso, integrando diferentes grupos de pesquisa, amide distantes geograficamente,que pesquisam sobre as mesmas reas ou reas afins. Vale salientar que alguns editoresfornecem ferramentas para refazer, desfazer e auditar mudanas (documentando quem asfez e quando), alm de verificao de conflitos e tratamento de instncias e classes rfs.

    4.1. Requisitos para ferramentas e seus formalismos e linguagens de representao

    Alguns fatores tornam uma ferramenta popular [Duineveld et al 99]: facilidades de uso,entendimento intuitivo da interface, visibilidade gradativa (caracterstica til quando sevisualizam grandes ontologias), interfaces grficas, conexo a repositrios, portabilidade,interoperabilidade, organizao dos arquivos gerados, documentao de alteraes,suporte a trabalho cooperativo, extensibilidade (capacidade de incluso de componentes)e ferramentas de apoio que facilitem o desenvolvimento. Podemos considerar que a reapassa por um processo de maturao, uma vez que j existe um evento, o EON(Workshop of Evaluation Ontology Tools) [EON 2002], j em sua 2. edio, destinado

    especificamente avaliao de ferramentas para ontologias, onde so definidos requisitosdesejveis e fundamentais de editores, como integrao e interoperabilidade, e atrealizados testes com as ferramentas participantes.

    Em relao avaliao de formalismos e linguagens de representao, no sedeve tomar em considerao apenas expressividade, como foi feito em [Corcho &Gmez-Perez 2000]. Outros itens de mais relevncia que garantem a efetiva utilizaode um formalismoe/ou linguagem num mercado: a existncia de um motor de inferncia,a possibilidade de acoplamento do motor a uma ferramenta de edio de ontologias, aindependncia de uma linguagem ou formalismo especfico, e a popularidade doformalismo. O Ontosaurus [McGregor 90], por exemplo, manipula bases de

    conhecimento apenas na linguagem para lgica de descries LOOM, o OilEd [OilEd2003], apenas na linguagem para a Web semntica OIL [Horrocks et al 2000], e o

  • 8/8/2019 Ontologia Web Semantica Freitas

    20/52

    WebOnto[Domingues 98], na linguagem proprietria OCML (Operational ConceptualModeling Language, linguagem para modelagem conceitual operacional) [Motta 99].

    Dentre as linguagens, F-Logic tem se mostrado a mais interopervel e popularentre os editores de ontologia: o OntoEdit [Ontoprise 2003], o WebODE [WebODE2003] e o Protg [Noy et al 2000] criam e executam predicados nessa linguagem, esteltimo atravs de um componente externo.

    Nas prximas subsees, sero abordados trs ambientes de ferramentas deontologias: o KSE, o Protg e o KAON.

    4.2. As ferramentas do KSE

    O projeto KSE produziu o primeiro conjunto de ferramentas para a manipulao e usode ontologias a angariar popularidade, por dispor de um leque de funcionalidades

    bastante amplo. Estas ferramentas tinham por objetivos viabilizar a comunicao deagentes em nvel de conhecimento foi no mbito do KSE que surgiu esta tecnologia eproporcionar a edio padronizada e reuso de ontologias, mesmo em formalismos derepresentao diferentes. As prximas subsees descrevem as ferramentas do KSE.

    4.2.1. A linguagem de comunicao entre agentes KQML

    A efetivao da troca de conhecimentos entre agentes, independente de formalismos derepresentao de conhecimento na qual o conhecimento est expresso, foi materializadapela linguagem de comunicao KQML (Knowledge Query Manipulation Language,linguagem de manipulao de consultas a conhecimento) [Finin et al 94]. Elacompreende um conjunto extensvel deperformativas, que define as possveis operaesde comunicao em nvel de conhecimento entre agentes. Atravs de mensagens escritasem KQML, os agentes podem trocar conhecimento, enviando sentenas lgicas, fatos emetas, com o intuito de cooperarem e/ou negociarem. Os atos de fala implementados soos atos assertivos (informar), diretivos (pedir ou perguntar), proibitivos e declarativos(causar eventos ao comunicador).

    Uma mensagem KQML consiste de uma performativa, seus argumentosobrigatrios um deles o contedo da mensagem e outros argumentos opcionais quedescrevem o contedo, escritos de forma independente da sintaxe da linguagem docontedo. No exemplo da figura 6, o Agente CFP, que busca chamadas de trabalhos aconferncias pede (performativa :ask-all) ao Agente PPR que manipula artigoscientficos links de pginas cujas ncoras contenham o conceito [call-for-papers]. Esteconceito s compreendido pelo agente PPR, porque o campo :ontology define que amensagem referencia a ontologia cientfica Science, que contm este conceito. Tambmos conceitos de Link, anchor e URL esto em ontologias includas na Science. importante observar que, neste esquema, para que agentes troquem conhecimento, elesso forados a referenciar uma ontologia compartilhada e conhecida por ambos. Aoachar um link que satisfaz a esta condio, o agente PPR diz, ento, (performativa :tell)ao agente CFP os dados do linkenconntrado. Como se pode observar, o contedo dasmensagens foi codificado em JessTab (que, nesse caso, desempenha o papel delinguagem contedo), uma adaptao do Jess para a definio de frames com todas as

    suas caractersticas.:

  • 8/8/2019 Ontologia Web Semantica Freitas

    21/52

    Figura 6: Exemplo de troca de mensagens em KQML.

    4.2.2. A interlingua KIF e a ontologia deframes

    A linguagem KIF (Knowledge Interchange Format, formato para intercmbio deconhecimento) foi especificada com dois propsitos: ser uma linguagem contedo emmensagens entre agentes, e servir como uma interlingua na traduo entre linguagens deformalismos de representao. A traduo via uma interlingua economiza a construode tradutores ad hoc, sendo apenas necessrios os tradutores de e para a interlingua.Assim, se so considerados n formalismos, o nmero de tradutores cai de (n-1)para 2n

    [Baalen & Fikes 93].KIF representa conhecimento em lgica de 1 ordem com clculo de predicados,

    apresentando a maior expressividade entre as linguagens de ontologia [Corcho &Gmez-Perez 2000]. Ela pode representar meta-conhecimento: atravs de reificao ou seja, representando relaes como objetos -, possvel, a construo de sentenassobre sentenas, e, portanto, predicados de 2. ordem. Esta forte expressividade,enquanto deciso de projeto, foi tomada para que os outros formalismos pudessem serfacilmente representveis e, portanto traaduzveis, nela.

    KIF foi feita para ser usada junto com um formalismo de frames, que foi definidonuma ontologia, a ontologia deframes (Frame-Ontology). Esta ontologia define classes,

    instncias, atributos, facetas, e ainda axiomas, relaes ricas e com aridade arbitrria,atributos para instncias (por exemplo, a classe de animais se extinguem, enquanto suasinstncias - espcimes - morrem), decomposio de classes em parties disjuntas (queno possuem intersees), que podem ser exaustivas (o conjunto de parties forma aclasse, por exemplo, os inteiros positivos se dividem em pares e mpares) ou no.

    O binmio KIF-ontologia deframes, contudo, apresenta duas desvantagens, queimpedem seu uso prtico para ontologias. Em primeiro lugar, ainda no existe um motorde inferncia para KIF. Alm do mais, como todas as ontologias criadas depoisinstanciam e/ou referenciam a ontologia deframes, o cdigo gerado perde a legibilidade(ver sub-seo 4.2.7.).

    (ask-all :sender CFP-Agent

    :receiver PPR-Agent

    :in-reply-to id0

    :reply-with id1

    :language JessTab

    :ontology Science

    :content (object (is-a Link)(URL ?u)

    (anchor ?a&:

    (occurs [call-for-papers] ?a))))

    (tell :sender PPR-Agent

    :receiver CFP-Agent

    :in-reply-to id1

    :reply-with id2

    :language JessTab

    :ontology Science

    :content (object (is-a Link)(URL http://lcn2002.cs.bonn.edu)

    (anchor IEEE Conference on LocalComputer Networks (LCN 2002))))

  • 8/8/2019 Ontologia Web Semantica Freitas

    22/52

    4.2.3. O editor deframes da Ontolingua

    Esta ferramenta disponibiliza uma interface de acesso atravs de navegadores,possibilitando a qualquer usurio da Web a visualizao das ontologias criadas edisponveis, a criao de novas e o trabalho colaborativo. O editor da Ontolinguadistingue com bastante propriedade os nveis de conhecimento (ou epistemolgico), onvel lgico e o de implementao, criando ainda o nvel de apresentao. No nvel deconhecimento est o conhecimento propriamente dito em formato texto; o nvel lgicopode ser visto como o KIF, pois representa o conhecimento num formalismo, sem apreocupao de como ele ser implementado computacionalmente para os processos deinferncia; no nvel de implementao, a ontologia representada num determinadoformalismo, como CLIPS ou Prolog; e o nvel de apresentao resolve conflitos deconceitos homnimos de reas distintas, que podem causar problemas quando hinterconexes entre estas reas. O nvel de apresentao mantm isto transparente ao

    usurio, dando a real impresso que o sistema entende a diferena conceitual entre osconceitos homnimos [Farquhar 96]. Residem nesta caracterstica as razes doengajamento ontolgico de solues declarativas: na realidade, a forma ideal deinterao com os sistemas deve ocorrer no nvel de conhecimento e no no deimplementao.

    4.2.4. Conectividade entre bases de conhecimento: o OKBC

    O OKBC (Open Knowledge Base Connectivity, em portugus, conectividade para basesde conheciemnto) [Chaudri et al 98] consiste de uma API (Application Programming

    Interface, interface para programao de aplicaes) para garantir a interoperabilidade

    entre diferentes linguagens de representao.Seguindo o mesmo princpio do ODBC, cada nova linguagem precisa

    implementar cada mtodo dessa API, de forma que o formalismo fique em conformidadecom o OKBC. Feito isto, chamadas OKBC padronizadas a qualquer das linguagens teroa mesma sintaxe e devolvero resultados similares, quando manipularem frames. Osmtodos da API acessam e retornam dados da base de conhecimento (como o get-kbs,que devolve toda a base), classes (por exemplo, get-classe-supers, que retorna assuperclasses de uma dada classe), atributos (e.g. get-slot-value), facetas (e.g. get-facet-values), e instncias (instance-of, retornando a classe da instncia).

    4.2.5. O servidor e o repositrio de ontologias da OntolinguaA arquitetura do servidor Ontolingua est representada na figura 7 . Os colaboradoresremotos lem e contribuem com novos conhecimentos para a biblioteca digital deontologias em texto, mantida em HTML e acessvel atravs de navegadores da Internet.A possibilidade de trabalho colaborativo e de ontologias que servem tanto a pessoasquanto a software consiste num dos maiores benefcios da Ontolingua. As aplicaespodem usar as ontologias de duas maneiras: transferindo arquivos de ontologias a partirdo repositrio as ontologias podem ser traduzidas para algum dos formalismos com osquais a Ontolingua capaz de lidar -, ou fazendo consultas e atualizaes diretamente sontologias do servidor, usando o OKBC (na figura, ele ainda se chamava NGFP, ouProtocolo de Frames Genricas).

  • 8/8/2019 Ontologia Web Semantica Freitas

    23/52

    4.2.6. Consolidando ontologias: o Chimaera

    O Chimaera [McGuinness et al 2000], uma ferramenta que surgiu mais adiante, teve pormotivao ajudar a resolver discrepncias entre ontologias similares, evento freqenteaps a relativa popularizao das ontologias. Ela funciona como uma ferramenta paradiagnose de ontologias, indicando a ausncia de dados obrigatrios, por exemplo, etambm para comparao entre ontologias, indicando atributos e classes semelhantes. Aferramenta mais empregada, no entanto, para combinar ontologias a partir de suacomparao, deixando a cargo do usurio a deciso do que fazer com as semelhanas.Por exemplo, classes com nomes semelhantes podem ser unidas com o mesmo nome,uma delas eliminada ou uma delas considerada como subclasse da outra, etc.

    Figura 7. Arquitetura geral do servidor Ontolingua [Farquhar 96].

    4.2.7. Problemas da Ontolingua

    Mesmo tendo em seu ncleo uma linguagem com alto poder expressivo (KIF), asferramentas da Ontolingua pecam em relao usabilidade em vrios aspectos. Parapermitir definies muito completas, qualquer ontologia criada na Ontolingua deveincluir e referenciar uma ontologia complexa para lidar com frames, a Frame-Ontology[Gruber 95], e o cdigo gerado ou traduzido pode tornar-se complexo devido s

    constantes referncias s classes desta ontologia. Este erro de requisitos no projeto (afalta de simplicidade na interface e no cdigo gerado), aliados complexidade das

    !

    %

    & '

    ! ( )

    1 2

    Aplic GUI

    & '

    ! ( ) 4 5 4

    Aplic.

    2

    KQML

    NGFP

    6

    7 9

    @ 4 B

    6

    7

    HTTP

    C

    D

    E

    F

    Tradutores:%

    @ @ G I Q

    1 %

    I

    %

    Q

    F

    6

    2

    Acesso

    Leitura

    Transferncia de arquivos (Batch)

    Escrita

  • 8/8/2019 Ontologia Web Semantica Freitas

    24/52

    definies geradas e falta de um motor de inferncia para KIF, impediu que aOntolingua se difundisse e abriu mercado para o surgimento de ferramentas quesanassem este problema.

    Persistem, tambm, problemas relativos traduo. Existem diferenas deexpressividade entre os formalismos, que dificultam a traduo [Baalen & Fikes 93]. Porexemplo, F-logic [Kifer et el 95] possui restries para facetas de cardinalidade mxima emnima [Corcho & Gmez-Prez 2000], essa informao simplesmente perdida durantea traduo. Tambm os diferentes tipos de inferncias e premissas das ontologias de topode muitos linguagens de representao (analogamente figura 3) normalmente estorefletidas no conhecimento definido, de forma que essas ontologias de topo daslinguagens deveriam ser mapeadas entre si para permitir uma traduo e reuso maisseguros, minimizando os erros de traduo [Valente et al 99].

    Alem destes problemas, falta Ontolingua uma boa interface para estaes detrabalho, que permitam a usurios, entender, reusar, manusear e verificar ontologias, semestar necessariamente acessando a Internet. Outros requisitos de uma ferramenta demanipulao de ontologias so a extensibilidade - novas funcionalidades devem poder seradicionadas ao editor e a integrao, pois nem todas as ferramentas da Ontolinguapodem ser usadas e testadas num mesmo ambiente. Alis, nenhum teste com infernciapode ser rodado, devido ausncia de um motor de inferncia, o que faz com que oambiente como um todo esteja sendo abandonado pela crescente indstria de comrcioeletrnico e Web semntica.

    4.3. O Ambiente Protg-2000

    Na esteira destes acontecimentos, o ambiente Protg, que vinha sendo desenvolvidopelo Departamento de Informtica Mdica da Universidade de Stanford face snecessidade de ontologias mdicas desde os anos 80, ocupou o nicho de mercado abertopela Ontolingua.

    Em seu projeto original, o Protg era uma ferramenta de aquisio deconhecimento limitada a um sistema especialista para oncologia, o Oncocin [Gennari etal 2003]. Ela foi se modernizando para, gradativamente, acompanhar a evoluo detecnologia de SBCs.: servir para aquisio de conhecimento diretamente de especialistasde domnios - com menos dependncia de engenheiros de conhecimento -, permitirdiversos formalismos e estratgias de inferncia, integrar tarefas (aquisio de ontologias

    e instncias, ambiente de teste com inferncia) num mesmo ambiente, criarautomaticamente formulrios para entrada de conhecimento, acessar ontologias viaOKBC e a combinar de ontologias.

    Do ponto de vista de engenharia de software, pode-se considerar que osrequisitos corretos foram levados em considerao durante sua evoluo. O Protgsempre procurou crescer em nmero de usurios, passando por vrias reengenharias ereimplementaes, e provendo ferramentas simples e configurveis A complexidade deseu modelo de conhecimento, por exemplo, escondida do usurio, que pode ter acessoa ela, se assim o desejar.

    A equipe responsvel pelo Protg, ao perceber o potencial de desenvolvimentode seus usurios, optou por abrir seu cdigo. Assim, surgiu uma arquitetura integrvel adiversas aplicaes, via componentes que podem ser conectados ao sistema. Como

  • 8/8/2019 Ontologia Web Semantica Freitas

    25/52

    conseqncia desta deciso e de sua difuso, componentes de vrios matizes, elaboradospor grupos de pesquisa de usurios, puderam ser adicionados ao sistema, sem necessitaro redesenvolvimento. Foram aproveitados, por exemplo, o Jambalaya, um utilitrio com

    animao e vrios outros recursos em visualizao de dados, e o Ontoviz, umcomponente que faz com que o gerador de grficos Graphviz da AT &T produzagrficos com instncias, heranas e outros tipos de relacionamento. As figuras 9 a 11foram geradas pelo OntoViz a partir do Protg.

    A melhor deciso de projeto do Protg est em seu modelo de conhecimentoextensvel: possvel redefinir declarativamente as classes primitivas (ou metaclasses) deum sistema de representao. Com efeito, um atributo de umframe numa classe definidapor um usurio instancia uma classe do sistema, a metaclasse :SLOT, o mesmo ocorrendocom classes e facetas. O conjunto de metaclasses usados por default pelo sistemaimplementa caractersticas comuns aframes, (apresentadas na seo 2.2.1.), tornando-o

    fcil de usar mesmo para usurios leigos. Todavia, se forem utilizadas metaclassescomplexas e distintas das originais - como as para definir classes em RDF, por exemplo -as instncias alcanaro a expressividade e complexidade desejada. Por isoo, o Protgpode ser adaptado a diversos usos. Esta abordagem verificou-se muito mais flexvel doque a ontologia de frames da Ontolingua, que muito complexa, e, se for alterada,muitas ontologias que a referenciam no podero ser reusadas. Outras caractersticas so[Noy et al 2000]:

    A linguagem axiomtica PAL (Protg Axiomatic Language), que permite ainsero de restries e axiomas que incidem sobre as classes e instncias de umaou mais ontologias.

    A gerao de arquivos de sada alterveis, permitindo que sejam implementadoscomponentes para traduzir o conhecimento para outros formalismos atravs dasmetaclasses. Atualmente podem ser criados classes e instncias em CLIPS - abase de conhecimento gerada nativamente para esse motor de inferncia, o maispopular quando se iniciou a construo do Protg, nos anos 80 -, Jess, F-Logic,Prolog, RDF, OIL, XML, Topic Maps (linguagem padro ISO para descreverestruturas de conhecimento em pginas da Web, nos mesmos moldes de RDF eOIL) todos estes ltimos atravs de componentes e metaclasses especficas. Asada pode ser armazenada ainda em outros formatos, como bancos de dadosrelacionais, ainda que as tabelas geradas no sejam normalizadas (vide subseo

    8.5.). Uma excelente interface para entrada de conhecimento, incluindo um gerador

    automtico de formulrios para as classes definidas (vide figura 8), admitindoainda a reposio da interface original por componentes mais adequados aplicaes especficas. Esta interface facilita sobremaneira o gerenciamento deconhecimento de uma ou mais ontologias.

    Do ponto de vista de integrao de ontologias, o Protg oferece vriasalternativas. Existem componentes que integram grandes ontologias como o WordNet um dicionrio semntico da lngua inglesa -, o GATE (General Architecture for TextExtraction, em portugus, arquitetura geral para extrao de texto, um conjunto deferramentas de linguagem natural para o ingls confeccionadas pela Universidade deSheffield, Inglaterra), o Cyc e a UMLS (uma volumosa ontologia mdica). Est

  • 8/8/2019 Ontologia Web Semantica Freitas

    26/52

  • 8/8/2019 Ontologia Web Semantica Freitas

    27/52

    partir de texto (o Text-to-Onto [Maedche & Staab 2000]), outra para busca sobre basesde texto baseada em ontologias (SemanticMiner [Ontoprise 2003]), outra para anotaosemi-automtica de referncias a ontologias em pginas para a Web, e outra para

    agrupamento de textos baseados em ontologias.Um dos produtos comerciais mais inovadores consiste de um assistente que

    sugere e prov informaes relacionadas a ontologias para ajudar a digitao de textosno Word, o OntoOffice [Ontoprise 2003]. Assim, quando se digita, por exemplo ogerente da diviso tcnica, o produto automaticamente exibe as informaes sobre essefuncionrio na tela. Como se v, o grupo continua a alargar as fronteiras para asaplicaes com ontologias.

    5. Engenharia de ontologias

    A concepo de ontologias deve ser conduzida como qualquer outro projeto desoftware, no sentido de serem tomadas decises de projeto que determinam suaqualidade baseada em critrios como eficincia, legibilidade, portabilidade,extensibilidade, interoperabilidade e reuso. Por isso, tal concepo deve basear-se em seufuturo emprego, e no somente em aspectos filosficos do conhecimento acerca dodomnio representado. Nesta seo veremos, em primeiro lugar, princpios para aconstruo de ontologias visando maximizar o seu reuso, e depois tcnicas dedesenvolvimento de ontologias.

    5.1. Princpios de construo de ontologias

    Alguns princpios, se usados com preciso, garantem sua qualidade [Gruber 93]:

    Clareza: Os programas usam diferentes modelos e abstraes na resoluo deseus problemas. Na definio do conhecimento, deve-se ter a objetividade dedefinir apenas o que se presume ser til na resoluo da classe de problemas a seratingida. Definies completas, com condies necessrias e suficientes, devemter precedncia sobre definies parciais.

    Legibilidade: As definies devem guardar correspondncia com as definiescorrentes e informais. A ontologia deve usar um vocabulrio compartilhvel normalmente o jargo e terminologia usados por especialistas do domnio.

    Coerncia: As inferncias derivadas da ontologia definida devem ser corretas e

    consistentes do ponto de vista formal e informal com as definies. Extensibilidade: A ontologia deve permitir extenses e especializaes

    monotonicamente e com coerncia, sem a necessidade de reviso de teoria, queconsiste na reviso lgica automtica de uma base de conhecimento em busca decontradies.

    Mnima codificao: Devem ser especificados conceitos genricos independentede padres estabelecidos para mensurao, notao e codificao, garantindo aextensibilidade. Essa genericidade limitada pela clareza. Esta caracterstica secontrape programao imperativa orientada a objetos, porque, por exemplo,atributos de objetos trazem tipos bsicos e informaes sobre a implementao.

  • 8/8/2019 Ontologia Web Semantica Freitas

    28/52

    Mnimo compromisso ontolgico: Para maximizar o reuso, apenas oconhecimento essencial deve ser includo, gerando a menor teoria possvel acercade cada conceito, e permitindo a criao de conceitos novos, mais especializados

    ou estendidos.Esses conceitos podem ser evidenciados atravs de um exemplo de ontologia

    para o domno cientfico [Freitas 2001], gerada a partir do reuso com vriosrefinamentos da ontologia do projeto europeu (KA)2 (Knowledge Annotation Initiativeof the Knowledge Acquisition Community Iniciativa de Anotao de Conhecimento daComunidade de Aquisio de Conhecimento) [Benjamins et al 98].

    O projeto (KA)2 teve por objetivo criar uma organizao virtual depesquisadores, universidades, projetos e publicaes, entre outros itens, envolvidos coma subrea de Inteligncia Artificial conhecida como Aquisio de Conhecimento. Nestaontologia pode-se verificar o cuidado com que os autores conceberam os conceitos deforma a representar apenas os essenciais, guardando uma correspondncia direta -engajamento ontolgico - com o domnio e terminologia existentes, satisfazendo osrequisitos clareza e legibilidade.

    Como exemplo de mnimo compromisso ontolgico, observe-se a definio daclasse Documento Cientfico, apresentada na figura 9. Pode-se perceber que no hrestries desnecessrias na definio do atributo Autores. Poder-se-ia especificar quesubclasse da classe Pessoa pode ser autor de artigos, como, por exemplo, a subclassePesquisador. Porm, especificou-se exclusivamente o conhecimento do conceito semdefinir prematuramente certas decises.

    Figura 9. Parte dos atributos da Classe Documento Cientfico4.

    A ontologia do (KA)2 possua extensibilidade, por isso, foi alterada de forma quenovas classes pudessem ser definidas a partir das j existentes. Como mostra a figura 10,foram criadas as classes abstratas (sem instncias) Evento Cientfico ao Vivo (Live-Scientific-Event) - com subclasses (no mostradas na figura) Conferncia e Workshop e Evento de Publicao Cientfica (Scientific-Publication-Event), com subclasses Jornal,Revista (Magazine) e Evento de Publicao Cientfica Genrica (Generic-Scientific-Publication-Event).

    Em relao coerncia, foi percebido que a relao meronmica (ou parte-todo)entre artigos de umproceedings, ou entre captulos de um livro, no estava explicitada.

    4 Nessa e na figura 11, o uso do asterisco (*) aps a definio do tipo de um atributo assinala que elepode assumir mltiplos valores, e no um s como os outros atributos.

  • 8/8/2019 Ontologia Web Semantica Freitas

    29/52

    Dado que seria importante diferenciar artigos e captulos e, por outro lado, evidenciarque um determinado conjunto deles pertence a um mesmo livro ou proceedings, foramcriadas as classes Publicao-Divisvel (Dividable-Publication) - com as subclasses

    Livro (Book), Proceedings e Evento de Publicao Cientfica (Scientific-Publication-Event) - e Publicao-Parte, com subclasses (no mostradas na figura) como Artigo deWorkshop, Artigo de Conferncia, Captulo de Livro, etc.

    Observe-se o engajamento ontolgico causado pelo uso da herana mltipla naclasse Evento de Publicao Cientfica: Jornais e Revistas ao mesmo tempo em que soPublicaes Divisveis, guardam so, tambm, eventos cientficos, pois possuem comitsde programa, datas limite, e outros atributos, embora no ocorram ao vivo.

    Figura 10. Parte da ontologia Cincia [Freitas 2001], salientando as classes Evento e

    Publicao, suas subclasses e heranas.A figura 11 apresenta uma gama maior de relacionamentos, mostrando como se

    entrelaam as classes principais da ontologia, incluindo tambm classes de uma ontologiaauxiliar de tempo, como Ms (Month) e Ano (Year). Constata-se, por exemplo, que osmembros de um comit de programa da classe Evento so instncias da classe

    Researcher(Pesquisador), atravs do atributo member-Of-Program-Committee.

    5.2. Metodologias de desenvolvimento

    Comeam a despontar as primeiras metodologias, levando sempre em conta que aconcepo de ontologias requer um processo iterativo, com revises constantes. Nas

    metodologias propostas, so considerados passos similares aos de engenharia desoftware: especificao, conceitualizao, e implementao [Gmez-Perez 99].

  • 8/8/2019 Ontologia Web Semantica Freitas

    30/52

    Figura 11. Relacionamentos entre as principais classes da ontologia Cincia.

  • 8/8/2019 Ontologia Web Semantica Freitas

    31/52

    parte deste processo, algumas atividades de suporte so executadasconcomitantemente com o desenvolvimento, chamadas de atividades de suporte: aaquisio correspondendo elicitao de conhecimento necessrio construo da

    ontologia -, a avaliao que verifica se a ontologia atende aos requisitos e propsitosplanejados -, a documentao e a integrao com ontologias existentes. A figura 12apresenta as etapas de desenvolvimento e sua relao com as atividades de suporte.

    Desenvolvimento Especificao Conceitualizao Implementao

    Documentao

    Avaliao

    Integrao

    Aquisio

    Suporte

    Desenvolvimento Especificao Conceitualizao Implementao

    Documentao

    Avaliao

    Integrao

    Aquisio

    Suporte

    Especificao Conceitualizao Implementao

    Documentao

    Avaliao

    Integrao

    Aquisio

    Especificao Conceitualizao Implementao

    Documentao

    Avaliao

    Integrao

    Aquisio

    Suporte

    Figura 12. Etapas de desenvolvimento e sua relao com as atividades de suporte[Gmez-Perez 99].

    Voltando s fases do desenvolvimento, a primeira fase, a especificao,determina o propsito e escopo da ontologia a ser confeccionada. Esta fase deve incluiruma anlise para decidir se possvel, necessrio ou adequado o reuso de ontologias jexistentes. Para auxiliar a determinar o escopo, vale a pena elaborar uma lista dequestes de competncia (competency questions) [Uschold & Gruninger 96], queserviro para a avaliao da ontologia durante o desenvolvimento. Por exemplo, at queponto Jornais cientficos so considerados eventos cientficos uma questo decompetncia.

    A fase de conceitualizao a mais crtica do desenvolvimento, pois, sendo amais ligada definio do conhecimento, nela ocorrem a maior parte das atividades de

    suporte de aquisio e avaliao. O tutorial do Protg [Noy 97] lista passos e vriasdicas teis sobre esta fase. Algumas esto dispostas abaixo:

    Enumerar os termos do domnio, sem preocupar-se com similaridade, repetiese relaes entre ele. Costuma-se usar o processo de brainstorming para este fim.

    Definir as classes. preciso no confundir nomes de um conceito com oprprio, inclusive existem sistemas que permitem a incluso de sinnimos etermos associados a conceitos de uma ontologia.

    Definir a hierarquia das classes. Ocorrendo junto com a anterior, esse constituio passo mais capcioso do desenvolvimento, devido s sutilezas das hierarquias.

    Ao serem criadas subclasses, deve-se observar a clareza e consistncia dahierarquia. A clareza refere-se ao fato de uma classe ter subclasses demais

  • 8/8/2019 Ontologia Web Semantica Freitas

    32/52

    neste caso preciso verificar se o uso de classes intermedirias no seriaadequado -, ou de menos caso em que a informao dos atributos pode tornar-se insuficiente para refletir diferenas entre as instncias. Uma maneira efetiva

    considerar se entre a superclasse e a subclasse no plausvel existirem outrasclasses. Trs abordagens para a definio de hierarquias so sugeridas [Uschold& Gruninger 96]: a t op-down, definindo as classes mais gerais e depois asespecficas, a bottom-up, que faz o contrrio, e a middle-out, que comea porclasses no meio que vo sendo especializadas (para baixo) e generalizadas (paracima).

    Definir os atributos e facetas de cada classe. Este passo deve interagir com osdois anteriores, pois so os novos atributos ou facetas que definem uma classe,exceto em classes terminolgicas, como, por exemplo, em medicina. Os atributospodem ser intrnsecos (e.g., nmero de pernas), extrnsecos (nome de uma

    pessoa), partes de uma classe (e.g. partes do corpo, cabea, tronco e membros,vide subseo 8.2. para maiores detalhes), ou relacionamentos, que so instnciasde outras classes, por exemplo, o atributo Pesquisadores da classe Projeto, queso instncias da classe Pesquisadores. Note-se que, para este exemplo, a facetade classes-permitidas especificou a classe mais geral, que inclua todas assubclasses de pesquisadores (estudantes de ps-graduao, professores, etc).

    Criar as instncias, tendo como lema que so os conceitos mais especficos deuma ontologia, ou seja, os elementos separados por menor granularidade. Seestes conceitos possuem uma hierarquia natural, preciso revisar a definio dasclasses.

    Em relao a convenes de nomes, estes devem ser facilmente compreensveis,recomendando-se convenes diferentes para classes, atributos e instncias.Devem ser evitadas abreviaes, que confundem os usurios, pois a ontologiadeve ser legvel para as pessoas que as consultam.

    A fase de implementao transformar a ontologia em algo computvel.Corresponde gerao de arquivos numa linguagem de representao de conhecimento,e seguida pela fase de avaliao, que executa testes para verificar se a ontologia atendeaos requisitos especificados na fase de especificao. Estas duas fases interagem, deforma que os testes podem provocar mudanas na implementao.

    6. Aplicaes de Ontologias

    Ontologias esto sendo aplicadas com sucesso em reas em que a necessidade de uso decontexto, e em especial de comunicao contextualizada, se fazem sentir. Com efeito,agentes baseados em ontologias vm sendo testados em diversos campos, comocomrcio eletrnico, gesto de conhecimento, workflow e tratamento inteligente deinformao. Seguem, abaixo, dois exemplos destes agentes, o primeiro para problemasde engenharia em fbricas geograficamente distribudas, e o segundo para tratamentocontextualizado de textos na Web.

  • 8/8/2019 Ontologia Web Semantica Freitas

    33/52

    6.1. O PACT

    O PACT (Palo Alto Collaboration Testbed, ou ambiente de teste de colaborao de PaloAlto) [Cutovsky et al 93] converteu-se no primeiro teste prtico de uso de ontologiascomo vocabulrio de comunicao, em 1993. Teve por objetivo a resoluo negociadade problemas de projeto, fabricao e reviso de projeto de manipuladores robticosenvolvendo sistemas j existentes de fbricas da HP e da Lockheed e de uma empresa deconsultoria, responsvel pelo desenvolvimento do software (vide figura 13).

    Os agentes tinham como vocabulrio comum duas ontologias, uma dematemtica para engenharia - com classes como quantidades, unidades, dimenses,matrizes e funes e outra de projeto e configuraes - com as classes parmetros,componentes, restries e outras. Mais abaixo, uma mensagem KQML trocada entredois agentes:

    Figura 13. Agentes distribudos dialogam para resolver problemas de projetos deengenharia [Fikes 98].

    (monitor :from consumer :to producer :reply-with update-111:ontology standard-units-and-dimensions:language KIF:content (= (q.magnitude (diameter shaft-a) inches) ?x))

    A inteno monitor pede para manter o agente remetente informado sobremudanas no campo contedo, expresso em KIF. Assim, qualquer mudana no dimetrodo eixo da pea q ser informada ao agente remetente. Note o uso de conceitos comomagnitude, dimetro e polegada, que uma instncia de medida,

    6.2. MASTER-Web: Manipulao integrada de informao atravs de ontologias

    Foi proposta uma arquitetura de sistemas multiagentes [Freitas & Bittencourt 2003] paramanipular a informao referente a um conjunto de classes sobre um mesmo grupo,como, por exemplo, o grupo cientfico, com classes como artigos cientficos, eventos,pesquisadores, etc. A arquitetura visa recuperar, classificar e extrair dados de pginas

    pertencentes s classes a um grupo, e a motivao principal para o emprego de sistemas

  • 8/8/2019 Ontologia Web Semantica Freitas

    34/52

    multiagentes beneficiar-se dos relacionamentos entre as classes. A viso geral daarquitetura est ilustrada na figura 14.

    URLs, fatos&

    conhecimento

    Sistema Multiagente

    WEB

    Infoseek

    Excite

    ...Meta-rob

    Ontologias,Categorias &Dicionrios

    Novo Agente

    DB

    URLs &pginas

    Mediador

    Usurios

    Agentes

    Figura 14. Arquitetura de sistemas multiagentes para manipulao integrada deinformao de grupos de classes de paginas.

    Na figura, a estrela indica troca de mensagens contendo regras dereconhecimento e fatos (conhecimento dos agentes), alm das URLs sugeridas entre osagentes. Cada agente possui um meta-rob, que consulta conecta-se a mltiplosengenhos de busca - como Altavista, Excite, Infoseeke outros - com palavras-chave quegarantem cobertura em relao classe de pginas processada pelo agente. (e.g., ostermos call for papers e call for participation para o agente CFP). As classificaese dados extrados das pginas so postos num banco de dados, acessvel por ummediador.

    As ontologias servem no s como vocabulrio de comunicao entre agentes,como tambm na definio e organizao apropriadas de conceitos, relaes, erestries. A ontologia do domnio deve ser bastante detalhada para garantir preciso classificao por contedo. Como estudo de caso, a arquitetura foi testada contra ogrupo cientfico, usando a ontologia mencionada na subseo 5.1. Foram elaborados oagente CFP, que trata pginas de chamadas de trabalhos (Callfor papers) de eventoscientficos, e o agente PPR, que trata as pginas de artigos cientficos. As pginas soclassificadas em vrias subclasses dentro da ontologia; por exemplo, o agente CFP asclassifica em Conferncia, Workshop, Jornal, Revista, Evento-Genrico-ao-Vivo,Evento-Genrico-de-Publicao e Edio-Especial-de-Jornal e de Revista.

    Outra vantagem de se usar ontologias reside no ganho de expressividade eflexibilidade, uma vez que o conhecimento sobre uma classe no se circunscreve atermos e palavras-chaves como em engenhos de buscas, mas a qualquerfato que digarespeito s pginas, como estrutura, regies, conceitos contidos nelas. Abaixo duasmensagens em KQML em que o agente CFP primeiro informa um caso com alguns

  • 8/8/2019 Ontologia Web Semantica Freitas

    35/52

    conceitos e depois pede links de pginas (varivel ?l) j classificadas como Artigos-de-Conferncia, que estejam antes do abstract e contenham algum dos conceitos do caso.

    (inform :sender cfp :receiver ppr :language JessTab :ontology Science

    :content ([ppr_00008] of Case (Description "cfp suggestions")(Concepts [Call-for-participation] [annual]

    [conference][Call-for-papers] [workshop]))) )

    (ask-all :sender cfp :receiver ppr :language JessTab :ontology Science:content (object (is-a Anchor) (Link-Text ?l))

    (Result (Page-Status CLASSIFIED) (Class "Conference-Paper"))(object (is-a Web-Page) (Contents ?co))(test (and (if-occur ?l (begin-until "abstract" ?co))

    (if-occur (slot-get [ppr_00008] Concepts) ?l))))

    Todos os testes conectando os agentes diretamente a engenhos de busca da Webtiveram taxa de acerto no reconhecimento (e.g. se uma pgina um evento) e

    classificao (que tipo de evento) em mais de 80%.7. A Web Semntica

    A principal aplicao e benefcio das ontologias consiste em prover semntica Internet.A viso de uma Internet semntica tem sido apregoada por ningum menos que um dosidealizadores da Internet, Tim Bernes-Lee. A revista PC Week [PC Week 2000],apresentou uma retrospectiva da Internet, que finaliza com este possvel advento.Segundo a reportagem, a primeira gerao da rede, aInternet, permitia apenas a troca dedados entre mquinas distintas. A segunda gerao, a World Wide Web (teia de alcancemundial), ou simplesmente Web, provocou uma revoluo por disponibilizar uma vastagama de aplicativos e informao para as pessoas, tornando possvel, ainda, o comrcioeletrnico entre clientes e empresas (no jargo de negcios, business-to-clients ou b2c).Porm, como as pginas s possuem informao lxica, mesmo os agentes e/ou robsdotados de inferncia encontram um ambiente hostil para a realizao de suas tarefas,porque tanto o contedo das pginas como o relacionamento entre elas difcil de sercompreendido por entidades de software, por encontrarem-se, em sua maioria, emlinguagem natural. As pessoas, em conseqncia, sofrem com essa falta de definiessemnticas: por vezes os usurios possuem dados parciais sobre a informao queprocuram e no podem utiliz-los para localizar esta informao.

    A prxima gerao da rede est sendo