Geological Bulletin of Turkey
BOLVADİN’DE GÖZLENEN YÜZEY DEFORMASYONLARININ JEOLOJİK
Existem várias ferramentas para construção de ontologias e podemos citar como exemplos: Protégé 2000 (NOY et al., 2006), WebODE (ARPIREZ et al., 2001), OntoEdit (MAEDCHE, 2001). O foco deste trabalho é a ferramenta Protége, pois foi a ferramenta utilizada para modelagem.
O Protégé é um ambiente interativo para construção de ontologias, que oferece uma interface gráfica para sua edição. Sua arquitetura é modular e permite a inserção de novos recursos. Foi desenvolvido pelo grupo de informática médica da Universidade de Stanford (http://www.stanford.edu/). Possui código aberto em uma aplicação standalone, composta por um editor de ontologia e uma biblioteca de plug-ins com funcionalidades. Atualmente importa/exporta para diversas linguagens, dentre elas Flogic, OIL, XML e Prolog.
É uma plataforma de código aberto e gratuito, com arquitetura baseada em Java, que provê ferramentas a toda uma crescente comunidade para a construção de aplicações de
CAPÍTULO 2 – REFERENCIAL TEÓRICO 35
modelo de domínio e de base de conhecimento utilizando-se ontologias, possuindo um número crescente de usuários registrados.
As linguagens utilizadas na especificação de ontologias podem ser divididas em três grupos (ALMEIDA, 2003): linguagens de ontologias tradicionais, linguagens padrão Web, e linguagens de ontologias Web-based.
a) linguagens de ontologias tradicionais – Cycl (LENAT et al., 1990), F-Logic (KIFER et al., 1995), OCML (DOMINGUE et al., 1999), Loom (BRILL, 1998);
b) linguagens padrão Web – XML (HAROLD, 1999), RDF (LASSILA et al., 1999);
c) linguagens de ontologias Web-based – OIL (FENSEL, 2001), DAML+OIL (HORROCKS, 2001), SHOE (HEFLIN et al., 2000), XOL (KARP et al., 1999), OWL (http://www.w3.org).
O critério para escolha de uma linguagem para especificação de ontologia varia de acordo com o tipo a ser especificado. Pelo fato de ser a linguagem recomendada pelo W3C, a OWL, foi a linguagem escolhida para modelagem da abordagem proposta na dissertação.
A OWL é uma linguagem recomendada da W3C desde fevereiro de 2004. É uma linguagem para ser utilizada quando as informações contidas em documentos web precisam ser processadas por aplicações em situações em que seu conteúdo precisa mais que ser apresentado apenas para humanos. Pode ser usada para representar explicitamente o significado de termos em vocabulários e os relacionamentos entre os termos. Possui mais facilidade para expressar significados e semântica que XML (eXtensible Markup Language), RDF (Resource Description Framework), e RDF(S) (RDF Schema) (LASSILA et al., 1999), além de representar conteúdo interpretável por máquinas na Web.
A OWL é uma linguagem de marcação semântica para publicação e compartilhamento de ontologias na Web. OWL é vista como uma tecnologia importante para a futura implementação da Web semântica. Ela vem ocupando um papel importante em um número cada vez maior de aplicações. Além disso, vem sendo foco de pesquisa para ferramentas, técnicas de inferências, fundamentos formais e extensões de linguagem.
OWL foi projetada para disponibilizar uma forma comum para o processamento de conteúdo semântico da informação na Web. Ela foi desenvolvida para aumentar a facilidade de expressar semântica (significado) disponível em XML, RDF e RDFS. Consequentemente, pode ser considerada uma evolução destas linguagens em termos de sua habilidade de representar conteúdo semântico da Web interpretável por máquinas. A linguagem OWL é baseada em XML, permitindo que a informação possa ser facilmente trocada entre diferentes tipos de computadores, usando diferentes sistemas operacionais e linguagens de programação.
CAPÍTULO 2 – REFERENCIAL TEÓRICO 36
Por ter sido projetada para ser lida por aplicações computacionais, algumas vezes considera-se que a linguagem não possa ser facilmente lida por humanos, razão pela qual existem ferramentas que facilitam a representação de um arquivo OWL visualmente em grafos ou outros elementos gráficos. OWL vem sendo usada para criar padrões que forneçam um
framework para gerenciamento de ativos, integração empresarial e compartilhamento de
dados na Web.
A OWL possui três níveis de expressividade:
a) OWL Lite – Oferece suporte a hierarquias de classificação e restrições simples (simple constraint features). Por exemplo, a OWL Lite suporta cardinalidade, mas só permite os valores de 0 a 1. Ela se torna mais fácil de ser implementada em uma ferramenta e faz com que a transição de outros modelos de vocabulários e taxonomais para OWL seja mais rápida;
b) OWL DL – Oferece o máximo de expressividade sem perda de completude computacional (garantia que todas as conclusões serão executadas) e decidibilidade (todos os cálculos terminarão em tempo finito) dos sistemas de inferência. OWL DL é assim chamada devido a sua correspondência com lógica de descrição7 (Description Logics), sendo utilizada na abordagem ontológica proposta na dissertação;
c) OWL Full – Oferece a máxima expressividade e a liberdade sintática de RDF sem garantias computacionais.
Os elementos básicos para construção de uma ontologia OWL são as classes, as instâncias das classes (também chamadas de indivíduos) e os relacionamentos (as propriedades) entre as instâncias.
Para ontologias construídas em OWL pode-se utilizar raciocinadores OWL que nada mais são do que motores de inferência que conseguem trabalhar com ontologias escritas nesta linguagem. Os mecanismos de inferência são responsáveis pela busca das regras da base de conhecimento a serem avaliadas, direcionando o processo de inferência.
O mecanismo que infere sobre o conhecimento contido em uma ontologia chama-se máquina (ou motor) de inferência (reasoner). Este tipo de mecanismo avalia e aplica as regras (axiomas) de acordo com as informações contidas na base de conhecimento da ontologia (RUSSEL; NORVIG, 1995).
7 Segundo Baader et al (2003), Lógica de Descrição (DL) são formalismos que permitem realizar a representação
do conhecimento de um domínio de aplicação (um mundo), a partir da definição de conceitos relevantes do domínio (terminologia) e usando estes conceitos para especificar propriedades dos objetos e indivíduos que fazem parte deste domínio (a descrição do mundo). Como formalismos de representação baseados em lógica, a semântica das Dl correspondem a um subconjunto estruturado da lógica de primeira ordem.
CAPÍTULO 2 – REFERENCIAL TEÓRICO 37
Existem vários raciocinadores para inferência de ontologias e podemos citar como exemplos: FaCT++, HermiT 1.3.8, e o Pelet. O foco principal deste trabalho é o raciocinador Pellet, utilizado por permitir realizar consultas DL Query além das inferências propostas na abordagem.
O raciocinador Pelet é uma máquina de inferência para arquivos OWL baseado na linguagem Java. O Pellet pode ser utilizado por aplicações que precisem representar e inferir informações utilizando OWL. Através dessa ferramenta podem-se utilizar os principais serviços de inferência para lógicas de descrição como: checagem de consistência, satisfabilidade, classificação e realização.
Neste trabalho o Pellet foi utilizado tanto para a construção da ontologia, sendo acessado pelo Protegé através da interface padrão DIG (DL Implementation Group) (BECHHOFER, 2006), quanto para testar as consultas em tempo de execução. O Pellet já possui uma interface nativa do Jena8, eliminando a necessidade de se utilizar uma interface padrão para inferência.