Ontologias na web
Thiago Santos, Valdeci
e Jacques Robin
CIn-UFPE
Roteiro
1.
2.
3.
4.
Lógicas descritivas
CARIN
DAML-OIL
RuleML
Lógicas descritivas:
definição e origem
Filosofia das lógicas descritivas
Serviços fornecidos pelos sistemas de
lógica descritivas
T-Box:
operadores de composição de conceitos
A-Box: operadores
de instanciação de conceitos
Ontologia acadêmica abaixo da
ontologia geral do AIMA
em lógica descritiva
Exemplo de ontologia em lógica descritiva
Verificação de consistência
Classificação de conceito
Classificação de instância
Semântica formal das lógicas descritivas
Complexidade dos serviços de raciocínio
com lógicas descritivas
Regras em lógicas descritivas
CARIN: uma linguagem híbrida com
lógica descritiva e regras dedutivas
Complemento da ontologia acadêmica
abaixo da ontologia geral do AIMA
com regras CARIN
Exemplo de regras CARIN
Motivação de linguagens de ontologias
na WEB*
 Evolução da distribuição da informação na WEB (para
ser processados por software e não apenas lidos por
humanos)
 Softwares de busca e mineração de dados;
 Necessidade de agregar representação semântica aos
dados, ao invés de apenas sintaxe;
 Prover comunicação entre agentes de softwares;
Linguagens padrão para representação
de ontologias na web
 Elementos de uma ontologia:
Hierarquia de conceitos (ou taxonomia)
 Restrições sobre os valores dos atributos dos conceitos (parte dos
axiomas)
 Regras dedutivas sobre os conceitos (outra parte dos axiomas)
 Instâncias dos conceitos

Linguagem ideal para representação de ontologias:
Contemple todos os elementos de uma ontologia (taxonomia, axiomas e
intâncias)
 Ainda não existe
 Atualmente:






De um lado DAML-OIL para taxonomia, instâncias e restrições
Do outro lado RuleML para regras dedutiva
Ainda não propriamente integrado
No entanto, ambos camadas em cima de XML
F-Logic, por exemplo, contemple todos os elementos, mas não possui em si
facilidade para distribuição na web
DAML-OIL: definição e características
 Junção de duas linguagens de representação de
conhecimento:

DAML - DARPA Markup Language:
inicialmente desenvolvida pelo DARPA e atualmente apoiada pela
W3C;
 Camada em cima de XML e RDF;
 Extensão de RDFS para codificar classes de maneira mais
sofisticada


OIL - Ontology Inference Layer:
desenvolvimento financiado pela União Européia;
 linguagem baseada em Frames;
 semântica formal e serviços de raciocínio provido por lógica
descritiva;
 compatível com RDF Schema (explicar o que quer dizer por

compatível)
Como DAML-OIL estende RDFS
 Definindo e implementado conceitos não suportados em
RDFS:










bounded lists;
restrições de cardinalidade;
expressões de classes;
tipos de dados;
classes definidas;
enumerações;
equivalência;
inferência;
restrições locais;
restrições qualificadas.
Ontologia acadêmica abaixo da
ontologia geral do AIMA
em DAML-OIL
Exemplo de ontologia em DAML-OIL
 Exemplificar cada conceito visto anteriormente com o
nosso exemplo de modelagem acadêmica
 Não esquecer de colocar alguns exemplos de definição
de instâncias
Semântica formal de DAML-OIL
Existe duas propostas:
Baseada na lógica]

Traduz sentenças DAML-OIL para sentenças KIF (outra
linguagem padrão para ontologia na web ) que por suas vezes
possuem tradução direta para sentenças da lógica dos
predicados na primeira ordem aumenta com listas de elementos
Baseada na teoria do conjuntos

Define funções de interpretação entre ....
Para um exemplo simples:



Mostrar sentença em DAML-OIL
Formula equivalente em lógica dos predicados
Conjunto de interpretação usando model-theoretic-semantics
Ferramentas de desenvolvimento e uso
de ontologias em DAML-OIL
http://www.daml.org/tools/
Mostrar a pagina e navegar na tabela por categoria
Limitações de DAML-OIL
RuleML: definição e motivação
- Necessidade de representar regras na Web Semântica
-
Regras reativas: especificar comportamento em resposta a
eventos do browse ou agente
Regras dedutivas:
Regras de definição de restrições de integridade
- Construção de uma linguagem independente de padrões
proprietários => provimento de interoperabilidade;
- Unificação das linguagens previamente propostas para
representação de regras na WEB.
-
RuleML = RFML + URML + AORML + ....
Manter compatibilidade com versões anteriores
RuleML: filosofia e abordagem
- Rule Markup Iniative: participantes da academia e
indústria líderes em representação de conhecimento e
Markup Languages
-
Tentar construir uma linguagem em conformidade com os
padrões da WEB e que atenda às necessidades dos
participantes.
- Rule Markup Language: representação de regras em
XML.
-
Representação de regras reativas, derivativas, restrições de
integridade e fatos.
Representação de sua sintaxe em DTD (versão atual 0.8)
Filosofia de RuleML
- dividir a linguagem em sublinguagens
- Manter compatibilidade com versões anteriores.
Revisão das várias linguagens de regras
usadas em IA
 
 Regras de reação ou produção:

P1  ...  Pn  do A, onde A é uma ação a executar quando a conjunção
de premissas é verificada
 Regras de derivação e regras Prolog:
P1  ...  Pn  do assert C
 Caso particular de regra de produção no qual a ação é acrescentar
conclusão C na base de conhecimento
 Equivalente a regra Prolog C :- P1, ..., Pn.

 Fatos: regras de derivação sem premissas
 Regras Datalog:
Restrição de regras Prolog sem funções aninhadas dentro de
predicados
 Ex, p(g(X,b),f(a)) :- q(X), r(f(d)), OK em Prolog, mas não em Datalog

 Restrições adicionais de Datalog:
Apenas predicados binários, ex, excluindo vende(V,C,P)
 Lógica proposicional, sem variáveis, apenas constantes

Revisão das várias linguagens de regras
usadas em IA
 Extensões de Prolog

Com igualdade entre constantes

Ex,
Restrições de integridade

P1  ...  Pn  do signal inconsistency
RuleML extende esses formalismos com URL e URI
como constantes
Subconjuntos de RuleML: árvore p.6 do
artigo de RuleML
Sintaxe RuleML para vários tipos de
regras (identar)
- Reaction rules:
<rule>
<_body>
<and> prem1 ... premN </and>
</_body>
<_head> action </_head>
</rule>
- Integrity constraints: <ic> <_body> <and> prem1 ... premN
</and> </_body> </ic> implemented by <rule> <_body> <and>
prem1 ... premN </and> </_body> <_head> <signal>
inconsistency </signal> </_head> </rule>
- Derivation rules: <imp> <_head> conc </_head> <_body> <and>
prem1 ... premN </and> </_body> </imp> implemented by <rule>
<_body> <and> prem1 ... premN </and> </_body> <_head>
<assert> conc </assert> </_head> </rule>
Tipologia das regras RuleML
- A desenvolver:
-
Representação de and e or.
Tipos de negação e sua representação
Prioridades
Agentes e RuleML
- 2 transparências para cada item
Complemento da ontologia acadêmica
abaixo da ontologia geral do AIMA
com regras RuleML
Exemplo de regras RuleML
Representar alguns fragmentos da modelagem
Semântica formal de RuleML
?????
Ferramentas de desenvolvimento e uso
de base de regras RuleML
- RuleML rulebase, GEDCOM
- Mandarax RuleML
- XSLT translators between the Horn-logic subsets of
RuleML and RFML
Ferramentas de desenvolvimento e uso
de base de regras RuleML
Transformação de regras via XSLT
Limitações de RuleML
- Base de regras não referencia um modelo de
informação onde possa atuar:
-
RuleML deveria prover formas de incluir modelos de
informação como DAML-OIL em sua base. Ex: um atributo da
base.
- Variáveis da base poderiam ser linkadas a modelos
externos onde estas poderiam ser definidas. Ex: UML
class.
Ontologias distribuídas na web:
questão resolvida?
Primeiro passo está sendo dado;
desenvolvimento e padronização de linguagens
Construção de ontologias maiores e mais abrangentes
Download

OntoWeb