• Sonuç bulunamadı

GEREÇ ve YÖNTEM

Belgede TÜRKÝYE HALK SAÐLIÐI KURUMU (sayfa 30-35)

Para formalizar a representação dos diversos elementos que compõem uma ontologia é preciso utilizar linguagens que possam ser interpretadas por sistemas ou por pessoas. Sendo assim várias linguagens foram sugeridas para codificar uma ontologia.

Com o intuito de definir uma linguagem que pudesse ser utilizada para representar todo e qualquer domínio e permitindo o uso de diversas tecnologias desde o começo dos anos 80 várias linguagens foram propostas.

As linguagens utilizadas na especificação de ontologias podem ser divididas em três tipos: linguagens de ontologias tradicionais, linguagens padrão Web, e linguagens de ontologias baseadas na Web, conforme Tabela 3.

Tabela 3: tipos de linguagens Linguagens de Ontologias

Tradicionais

Linguagens Padrão Web Linguagens de Ontologias baseadas na Web CycL XML OIL Ontolingua RDF DAML+OIL F-Logic SHOE CML XOL OCML OWL Loom KIF

Fonte: tabela elaborada pela autora.

A partir da década de 80 várias propostas de linguagens surgiram para modelar ontologias dentre as quais segue:

 KIF (Knowledge Interchange Format), baseada na lógica de primeira ordem trata-se de uma linguagem formal para troca de conhecimento entre sistemas computacionais (GRUBER, 1992; GENESERETH e FIKES, 1992).

 Ontolingua foi criada em 1992 pelo Laboratório de Sistemas do Conhecimento da Universidade de Stanford com o propósito de especificar ontologias com uma semântica lógica clara (combinações de frames com lógica de primeira ordem). A Ontolingua é baseada na linguagem KIF (Knowledge Interchange Format) e também pode ser representada definindo termos baseados em quadros e orientados a objetos. Assim sendo esta linguagem permite a construção de ontologias usando expressões KIF somente; usando o vocabulário definido em Frame Ontology; ou usando as duas formas simultaneamente. Trata-se de uma das linguagens tradicionais mais expressivas para representar ontologias, permitindo representar conceitos, taxonomias de conceitos, relações n-árias, axiomas, instâncias e procedimentos (GRUBER, 1992).

 F-Logic (Frame Logic) integra frames e lógica de primeira ordem. Trata-se de uma forma declarativa dos aspectos estruturais das linguagens baseadas em frames e orientadas a objetos identificando estes objetos, herança, tipos polimórficos, encapsulamento, dentre outros. Permite representar conceitos, taxonomias, relações binárias, instâncias, axiomas e regras (KIFER, LAUSEN e WU, 1995).

 CML (Conceptual Modelling Language) é uma linguagem semi-formal, que foi proposta para a metodologia CommomKADS, na qual uma ontologia é definida através da especificação de conceitos, atributos, expressões, estruturas e relações, utilizando representação gráfica (SCHREIBER et al, 1994).

 OCML permite a especificação de funções, relações e classes, instâncias e regras. Trata- se de uma linguagem que pode ser aplicada para representação de várias áreas do conhecimento como medicina, ciências sociais, memória corporativa, engenharias, aplicações Web, dentre outras (DOMINGUE et al, 1999).

 LOOM, baseada em lógica de descrições. Permite representar conceitos, taxonomias, relações n-árias, funções, axiomas e regras (MACGREGOR e BATES, 1987; BRILL, 1993).

 OML (Ontology Markup Language): é uma linguagem baseada em lógica descritiva e grafos conceituais, que permite a representação de conceitos organizados em taxonomias, relações e axiomas (KENT, 1999).

 XML (Extensible Markup Language) é uma linguagem que permite a construção de documentos legíveis para seres humanos e que podem ser facilmente tratados por máquinas. Trata-se de um conjunto de regras para a definição de marcadores semânticos, que dividem um documento em partes identificáveis (HAROLD, 1999).

 RDF (Resource Description Framework - Estrutura de Descrição de Recursos) foi desenvolvida pelo W3C (World Wide Web Consortium) e está baseada no formalismo de redes semânticas para descrever recursos Web, permitindo definir a descrição de recursos através de suas propriedades e valores (LASSILA e SWICK, 1999; CARROLL e KLYNE, 2004).

 RDF Schema também desenvolvida pelo W3C utiliza primitivas baseadas em frames (BRICKLEY e GUHA, 1999). Esta linguagem possibilita definir taxonomias de recursos em termos de hierarquia de classes, ou seja, é uma extensão semântica do código RDF fornecendo mecanismos para descrever grupos de recursos e os relacionamentos existentes entre eles.

 RDFS é a combinação de RDF e RDF Schema. É muito mais expressiva. Permite representação de conceitos, taxonomias de conceitos e relações binárias. Algumas máquinas de inferência têm sido criadas para esta linguagem, principalmente para checar as restrições.

 OWL (Web Ontology Language) pode ser utilizada por aplicações que precisam processar o conteúdo da informação, ao invés de apenas disponibilizá-lo. Além disso, facilita a leitura de conteúdo Web suportado por XML, RDF e RDF-Schema, provendo um vocabulário adicional com uma semântica formal. Trata-se de uma descrição das propriedades e classes e suas relações de forma mais detalhada, como por exemplo, relações entre classes (disjunção), cardinalidade (UML), características de propriedades (simetria), dentre outras. Para a representação, utiliza a lógica descritiva para explicitação do conhecimento (ANTONIOU e VAN HARMELEN, 2004b).

 OIL: proposta pelo projeto On-to-Knowledge foi desenvolvida sobre a sintaxe RDFs, considerando linguagens de ontologias baseadas em frames e tem seu formalismo

baseado em lógica de descrições. Permite verificar classificação e taxonomias de conceitos (FENSEL et al, 2001).

 DAML (DARPA Agent Markup Language) + OIL: foi desenvolvida como uma extensão da XML e RDF com o objetivo de aumentar a interoperabilidade entre agentes de software para Web. Trata-se de uma linguagem desenvolvida por meio de primitivas de modelagem baseadas em linguagens lógicas (HORROCKS et al, 2001; DAVIES et al, 2002).

Visto que existem várias linguagens para a implementação de ontologias, várias ferramentas também foram propostas. Geralmente, estas ferramentas incluem documentação, importação e exportação de ontologias existentes (de diferentes formatos), visualização gráfica, bibliotecas e mecanismos de inferência. Algumas ferramentas populares para construção de ontologias são apresentadas como segue:

 OilEd: editor simples que oferece as funcionalidades básicas para criação de ontologias. Esta ferramenta foi desenvolvida na Universidade de Manchester pelo Grupo de Gerenciamento de Informações. A ferramenta OilEd utiliza as linguagens OIL e DAML+OIL, além de gerar código em OIL e converter para RDF. A ferramenta também permite a verificação da consistência e classificação automática utilizando o paradigma baseado em quadros, mas não é considerado um ambiente completo para desenvolvimento de ontologias, já que não suporta o desenvolvimento em larga escala, a migração e a integração de ontologias, bem como seu versionamento, argumentação e muitas outras atividades que envolvem a construção de ontologias (BECHHOFER et al, 2001).

 WebODE: desenvolvida no Laboratório de Inteligência Artificial da Universidade Técnica de Madri. Trata-se de um ambiente para engenharia ontológica que dá suporte à maioria das atividades de desenvolvimento de ontologias. A integração com outros sistemas é possível, importando e exportando ontologias de linguagens de marcação como XML, RDF(S), OIL, DAML + OIL, CARIN, F-logic, Jess, Prolog (ARPÍREZ et al, 2001).

 WebOnto: ferramenta que possibilita a navegação colaborativa, criação e edição de ontologias, representadas na linguagem de modelagem OCML, conforme Figura 13. Permite aos usuários navegar e editar modelos de conhecimento na Web viabilizando o

gerenciamento de ontologias por interface gráfica, inspeção de elementos, verificação da consistência da herança e trabalho cooperativo (DOMINGUE et al, 1999).

Figura 13: Interface WebOnto – ferramenta colaborativa na Web

Fonte: http://people.kmi.open.ac.uk/domingue/sharing-ontologies/ - acesso dezembro/2015.

 OntoEdit: ferramenta concentra-se nos principais passos para o desenvolvimento de ontologias, contemplando as atividades de especificação, refinamento e avaliação. Foi desenvolvida pela AIFB (Institut für Angewandte Informatik und Formale Beschreibungsverfahren) na Universidade de Karlsruhe, Alemanha (SURE et al, 2002). Possui uma arquitetura extensível baseada em plugins e permite a importação e exportação para Flogic, XML, RDF(S), DAML+OIL, (MAEDCHE, 2002). Existem versões da ferramenta disponíveis como OntoEdit Free e OntoEdit Professional. A interface da ferramenta OntoEdit é mostrada na Figura 14.

Figura 14: interface OntoEdit Free

Fonte: figura elaborada pela autora.

 Protégé: trata-se de uma ferramenta gráfica de código aberto, utilizada para a construção de ontologia possibilitando a criação de bases de conhecimento independente da plataforma (escrito em Java, utiliza uma máquina virtual para execução em qualquer plataforma). Esta ferramenta possui uma interface intuitiva possibilitando aos desenvolvedores criar e editar ontologias de domínio, e contempla uma arquitetura modulada permitindo a inserção de novos recursos como visualizações alternativas, gerenciamento de múltiplas ontologias, uso de motores de inferência, importa e exporta ontologias em diversos formatos facilitando a reutilização e intercâmbio de ontologias, conforme Figura 15 (NOY et al, 2003; GENNARI et al, 2003).

Figura 15: Exemplo ontologia Protégé

Fonte: figura elaborada pela autora.

Após um levantamento sobre as ferramentas de desenvolvimento de ontologias com as respectivas características, uma tabela comparativa é apresentada na Tabela 4.

Neste projeto optou-se pelo uso do Protégé versão 4.3 para criação e edição de ontologias por se tratar de plataforma independente e extensível. Trata-se de uma ferramenta que possui uma biblioteca onde outros aplicativos podem acessar suas bases de conhecimento e a escolha desta ferramenta se deu pelo fato de ter uma comunidade extensa de usuários bem como documentos na literatura para redimir dúvidas, além das características apresentadas na Tabela 4.

Tabela 4: Comparação de ferramentas para desenvolvimento de ontologias Ferramentas

Características

OilEd WebOnto WebODE OntoEdit Protégé

Disponibilidade Gratuita e Aberta Gratuita Gratuita Gratuita Gratuita

Colaborativa Não Sim Sim Não (Collaborative Sim

Protégé) Classe gráfica /

propriedade taxonomia

Não Sim Sim Não Sim

Gerenciamento de

backup Não Yes Sim Não Não

Suporta crescimento

ontologias Não Sim/Não Sim Sim/Não Sim

Consultas Não Sim/Não Não Sim/Não Sim

Interface Usuário Sim Sim/Não Sim Sim/Não Sim

Verificação de

consistência Sim Sim Sim Sim Sim

Editor OWL Sim Sim Sim Sim Sim

Bibliotecas

(ontologia) Sim Sim Não Não Sim/Não

Arquitetura Standalone Cliente/Servidor (camadas) N-Tire Standalone Standalone

Importação DAML+OIL RDF(S), OMCL DAML+OIL, RDF(S), OWL RDF(S), DAML+OIL RDF(S), OWL Exportação DAML+OIL, RDF(S), OWL OMCL, Ontolingua, RDF(s), OIL RDF(S), DAML+OIL, OWL, CLIPS RDF(S), DAML+OIL, OWL RDF(S), OWL, CLIPS Armazenamento Files Files (JDBC) DBMS Files Files, DBMS (JDBC) Mecanismo de

regras FaCT - Prolog OntoBroker Pellet

Construção

inferências Sim Sim Não Sim/Não Sim

Implementação em Java Lisp Java Java Java

Nota: Sim indica um recurso suportado na língua, Não indica recursos não suportados, e Sim/Não indica características que precisam de mais explicações.

Belgede TÜRKÝYE HALK SAÐLIÐI KURUMU (sayfa 30-35)

Benzer Belgeler