Download - Ontologias na web
Ontologias na web
Thiago Santos, Valdeci e Jacques Robin
CIn-UFPE
Roteiro
1. Lógicas descritivas2. CARIN3. DAML-OIL4. 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>
- Facts: <fact> <_head> conc </_head> </fact> implemented by <imp> <_head> conc </_head> <_body> <and> </and> </_body> </imp>
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