CE-262 Ontologia e Web Semântica Prof. José M Parente de Oliveira Sala 120 – Prédio da Computação [email protected] 3947-6941 Linguagens de Regras Introdução • Linguagens de representação de conhecimento, como RDF Schema e OWL, são destinadas a especificar descrições de domínios de aplicações • Oferecem elementos para descrever classes, propriedades e relacionamentos, bem como permitem capturar restrições de classes e propriedades e definir classes complexas • Linguagens de regras oferecem facilidades para especificar regras de transformações de dados que definem como sintetizar novos fatos a partir daqueles armazenados na base de dados Introdução • • • • Datalog Rule Markup Language (RuleML) Semantic Web Rule Language (SWRL) Triple Datalog • Datalog é um subconjunto restrito de programação lógica • Foi originalmente definida como uma linguagem de query e regra para bases de conhecimento • Um alfabeto Datalog A é um conjunto de símbolos de predicados , constantes e variáveis • Um termo é uma variável ou constante • Um átomo é uma expressão do tipo P(t1,...,tn), onde P é um símbolo de predicado e t1,...,tn são termos Datalog Alfabeto da base de dados BOOKS Datalog • Exemplos de átomos: • Uma cláusula pode ser tanto um fato quanto uma regra. Um fato é uma expressão da forma: B, onde B é um átomo sem variáveis livres • Uma regra é uma expressão da forma: C A1,...,An A1,...,An e c são átomos; A1,...,An é chamada lista de antecedentes e C conseqüente ou cabeça da regra Datalog: Exemplo de Base de Conhecimento Datalog: Exemplo de Base de Conhecimento e Deduções RuleML • RuleML é uma linguagem para publicação e compartilhamento de bases de conhecimento na Web • RuleML basicamente proporciona uma sintaxe XML para cláusulas Datalog • Um átomo em RuleML é expresso por meio das tags <atom>, <rel>, <var>, e <ind> RuleML • Outro exemplo RuleML • Uma regra é expressa por meio das tags <Implies>, <head> e <body> RuleML: Exemplo de Regra mais Complexa SWRL • SWRL estende o conjunto de axiomas da OWL para incluir cláusulas do tipo Datalog • Modelam-se bases de conhecimento como uma ontologia OWL Conceitos da ontologia de livros SWRL • Usando uma notação similar à Datalog, um átomo em SWRL é uma expressão de uma das formas: • Átomos envolvem apenas predicados unários (descrição de classe OWL ou intervalos de dados) ou predicados binários (para propriedades OWL, sameAs e differentFrom) • Descrições de classes OWL podem ser vistas como predicados unários inseridos pela definição SWRL: Exemplo Parcial Partindo de Datalog • Para representar esse átomo em SWRL, primeiro deve-se reescrevê-lo como quatro átomos distintos que correspondam à definição OWL da base dados BOOKs SWRL – Conceitos Complexos • SWRL permite que conceitos complexos sejam definidos como classes complexas da ontologia OWL