Resultados da Comparação de Linguagens

Os resultados de aplicar os parâmetros de avaliação descrito anteriormente.

O balanceamento entre o grau de expressividade e o mecanismo de inferência de uma liguagem (mais expressiva, menos capacidade de inferência) torna difícil estabelecer uma comparação entre as linguagens. Além disso, todas as diferentes linguagens que existem, hoje, em  representação de conhecimento são convenientes a determinados tipos de aplicação.

No desenvolvimento de ontologias de domínio para uma aplicação, não é necessário somente estudar a representação de conhecimento e as necessidades de raciocínio da aplicação, mas também das capacidades oferecidas pelas linguagens.  Isto evitará que o desenvolvedor de ontologias faça uma escolha cega da linguagem.

A informação das tabelas a seguir tem o seguinte significado: uma célula preenchida com '+' para indicar aquela capacidade é presente na linguagem, '-' a característica está ausente, '+/-' para características ausentes mas que podem ser simulada de alguma forma, '?' quando nenhuma informação está disponível e 'ND' para características não restritivas, ou seja, poderiam ser implementadas. O conteúdo das tabelas representa a situação presente, pois podem evoluir.

Conhecimento de Domínio

A Tabela 1 mostra  os principais componentes da especificação de ontologia para conhecimento de domínio.

Tabela 1: Definição dos principais componentes do conhecimento de domínio

 
LOOM
SHOE
OIL
Conceitos
+
+
+
Relação n-ária
+
+
+
Funções
+
-
+
Procedimentos
+
-
-
Instâncias
+
+
ND
Axiomas
+
-
ND
Regras de produção
+
-
ND
Semântica Formal
+
-
-

Conceitos, relações n-árias e instâncias podem ser definidas facilmente na maioria das linguagens.
Funções procedimentos e axiomas não podem ser definidos nas linguagens para Web (SHOE e OIL), exceto para algumas formas restritas de axiomas, tal como regras dedutivas que são definíveis em SHOE.

É útil mencionar que procedimentos e regras de produção são somente definíveis em LOOM  por ser baseada em Lisp.
 

Conceitos

Tabela 2: Definição de conceitos
 CONCEITOS
LOOM
SHOE
OIL
Metaclasses
+
-
-
Partições
+
-
-
Atributos      
Template(instância extra)
+
+
+
Atributos próprios
+
-
+/-
Polimorfismos
+
-
+
Escopo local
+
+
+
Sub atributos      
Valor default
+
-
-
Restrição de tipo
+
+
+
Restrição de cardinalidade
+
-
+
Documentação
+
+
+
Conhecimento procedural
+
-
-
Adicionar novos sub-atributos
+
-
-

SHOE e OIL não admitem definir metaclasses, e partições podem ser definidas somente em LOOM.
 

Taxonomias

Tabela 3: Definição de taxonomias
TAXONOMIA
LOOM
SHOE
OIL
Subclasse de 
+
+
+
Partição exaustiva em subclasses
+
-
-
Composição disjunta
+
-
+/-
Não subclasse de
+/-
-
+

Quando definimos taxonomia, há somente uma primitiva que é definida em todas as linguagens: subclasse de.
 

Relações e Funções

Relações são componentes muito importantes em uma ontologia (por isso são siuportadas em quase todas as linguagens), mas nem todas as características desejáveis em relações estão implementadas em todas as linguagens.

Tabela 4: Definição das relações e funções

Relações e Funções
LOOM
SHOE
OIL
Funções como relações
+
-
+
Conceitos: relações unárias
+
+
+
Atributos como relações binárias
+
+
+
Relações n-árias/funções
+
+
+/-
Restrição de tipo
+
+
+
Restrições de integridade
+
-
-
Definições operacionais
+
-
-

Muitas linguagens representam conceitos como relações unárias. Atributos são considerados usualmente como relações binárias.
 

Instâncias

Instâncias de conceitos e de relações (fatos) são suportados em todas as linguagens. Afirmações, no entanto,  só são suportadas em algumas linguagens para Web. Isto é devido ao fato que a administração da informação vir de diferentes fontes  é uma característica intríseca do ambiente Web e estas linguagens são específicas para tratá-los.
Tabela 5: Definição de instâncias
INSTÂNCIAS
LOOM
SHOE
OIL
Instâncias de conceitos
+
+
ND
Fatos
+
+
ND
Afirmações
-
+
ND

Axiomas

Esta é uma boa medida de expresissividade. Quanto mais rica a definição de axiomas mais expressiva a linguagem é. LOOM só aceita a definição de axiomas de primeira ordem. As outras aceitam apenas definição restrita de axiomas. SHOE só aceita definir regras dedutivas. Em OIL, a sintaxe não foi ainda definida.

Tabela 6: Definição de axiomas

AXIOMAS
LOOM
SHOE
OIL
Primeira Ordem
+
+/-
ND
Segunda Ordem
-
-
-
Axiomas com nome
-
-
-

Regras de Produção

Regras de produção são componentes de ontologia em LOOM. Esta linguagem distingue entre regras puramente dedutivas e produção de efeitos

Tabela 7: Definição de regras

 CONCEITOS
LOOM
SHOE
OIL
Premissas      
Conjutiva
+
-
ND
Disjuntiva
+
-
ND
Conseqüentes      
Valor verdade
-
-
ND
Execução de procedimentos
+
-
ND
Atualização de base de conhecimento
+
-
ND

Raciocínio

Uma clara distinção entre representação de conhecimento e raciocínio existem em todas as linguagens.
Nas linguagens LOOM e OIL o raciocínio é feito por meio de classificadores pois são baseadas em lógica de descrições.

Tabela 8: Mecanismos de raciocínio

RACIOCÍNIO
LOOM
SHOE
OIL
Inferência      
Correto
+
-
+
Completo
-
-
+
Classificação      
Classificação automática
+
-
+
Exceções      
Tratamento de exceções
-
-
-
Herança      
Monotônica
+
+
+
Não monotônica
+
-
-
Herança simples
+
+
+
Herança múltipla
+
+
+
Procedimentos
Execução de procedimentos
+
-
-
Restrições      
Verificação de restrições
+
-
-
Encadeamento      
Para frente
+
ND
-
Para trás
+
ND
-


PÁGINA PRINCIPAL


Eudenia Xavier Meneses
13/12/2000