420 likes | 515 Views
Ontologias na web. Thiago Santos, Valdeci e Jacques Robin CIn-UFPE. Roteiro. 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.
E N D
Ontologias na web Thiago Santos, Valdeci e Jacques Robin CIn-UFPE
Roteiro • Lógicas descritivas • CARIN • DAML-OIL • RuleML
Ontologia acadêmica abaixo da ontologia geral do AIMA em lógica descritiva
Complexidade dos serviços de raciocínio com 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
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-OILhttp://www.daml.org/tools/ Mostrar a pagina e navegar na tabela por categoria
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
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
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