Analisi e confronto
di
RuleML e R.I.F.
Di
Marco Andolfo
Matr. 0000232246
Semantic Web
Evoluzione all’interno del Web
– Le informazioni non sono più lette solamente dagli
utenti
– Al contrario vengono lette, elaborate ed interpretate
dai sistemi diversi per creare conoscenza
Nascita del termine Semantic Web per indicare
un’architettura in cui:
–
–
–
–
I dati sono interpretati utilizzando una teoria
Si creano connessioni logiche i tra sistemi
Le informazioni sono reperite in base ad un contesto
Grande dinamicità e flessibilità in ambienti eterogenei
Semantic Web
Tecnologie sfruttabili
– XML,RDF, URI e URL per descrivere le risorse
– Progetto di sistemi sulla base di quelli prodotti in IA
– Uso di agenti software
Come rappresentare la conoscenza
– Mediante le ontologie per studiare un dominio
– Uso di regole nello scambio di informazioni
MA
– Ogni sistema è legato ad una tecnologia di un vendor
– Le regole hanno rappresentazioni diverse
– Problemi nel garantire l’interoperabilità
Soluzione
Soluzione
– Uso di XML per rappresentare le regole
– Nascita di iniziative per promuovere un formato di
rappresentazione comune
– Non si deve essere legati ad una tecnologia specifica
– Il formato garantisce lo scambio di informazioni
– Evita soluzioni ad hoc
Iniziative principali
– Rule Markup Language (RuleML)
– Rule Interchange Format (R.I.F.)
Casi d’uso e scenari di RuleML e
R.I.F.
Casi d’uso individuati
– Supporto alle ontologie
– Scambio di regole tra sistemi e-commerce per
negoziazioni e transazioni
– Scambio e definizione di preferenze e politiche tra i
sistemi
Confronto tra i casi d’uso dei due formati
– Quelli di RuleML sono più generali
– Quelli di R.I.F. sono più specifici
– RuleML specifica il suo utilizzo negli agenti software
Dai casi d’uso alle regole
I casi d’uso permettono di individuare le
seguenti tipologie di regole
–
–
–
–
–
Integrity Rule
Reaction Rule
Production Rule
Derivation Rule
Fatti
RuleML e R.I.F hanno il proprio modo di
rappresentarle
RuleML
Iniziativa promossa da un gruppo di ricercatori
Linguaggio di markup aperto che integra XML,
RDF e URI
La rappresentazione delle regole è
indipendente dalla tecnologia di un vendor
Sono supportate le principali tipologie di regole
legate da una relazione gerarchica
La sintassi delle regole è rappresentata con
l’utilizzo di tag XML appositi
RuleML
Architettura
– Gerarchia composta da 12 sottolinguaggi
– Cuore dell’architettura in Datalog e nelle sue varianti
– Si possono aggiungere sottolinguaggi futuri
Sintassi
– Astratta: il più generica possibile
– Concreta: a carico di una specifica implementazione
– La sintassi concreta specializza quella astratta
Supporta molte logiche tra le quali Horn e FOL
Supporta la negazione weak e strong
RuleML
Rappresentazione delle regole
– Ogni tipologia ha una sua rappresentazione
– Tag <head> e <body> per rappresentare testa
e corpo
– In più sono supportate relazioni di
equivalenza, funzioni logiche, equazioni
– Supporto ai tipi di dato XML (decimal, int,
string…)
RuleML
Implementazioni
– Pochissime in quanto non ancora sviluppato del tutto
– Esiste uno stylesheet XSLT per trasformare i
documenti XML/RuleML
– Estensioni per supportare
Gli oggetti
OWL (linguaggio web per le ontologie)
FOL
– Contribuzione alla nascita di nuovi markup language
R.I.F.
Promosso dal W3C
– Progetto articolato in Fase 1 e Fase 2
Deve garantire la massima flessibilità per far
interoperare i sistemi
Prevede l’utilizzo di XML, RDF, URI e tipi di dato
XML
Architettura
– Gerarchia di linguaggi
– Cuore nel Core a cui si aggiungono estensioni per
realizzare nuovi dialetti
R.I.F.
Logiche
–
–
–
–
Il Core supporta solo Horn
Le altre logiche sono a carico delle estensioni
Analogo discorso per la negazione
Multi-sorted: ogni simbolo può assumere più
significati (per il Core solo tipi primitivi XML)
Rappresentazione delle regole
– Coperte tutte le tipologie grazie alle estensioni
– Nel Core si rappresenta solo il corpo
– La testa e la sua interpretazione è lasciata ai dialetti
R.I.F.
Condition Language
–
–
–
–
–
Linguaggio su cui si basa il Core
Si concentra sulla parte condizionale delle regole
Base comune dei dialetti
Sintassi astratta e concreta (ancora da definire)
Permette di esprimere implicazioni, atomi,
congiunzioni e disgiunzioni tra atomi, costanti,
variabili ed equivalenze
Fase 2 (non ancora ultimata)
– Definisce le specifiche ed i tipi di estensioni
– Previste estensioni per negazione, FOL, OWL…
Confronto tra RuleML e R.I.F.
Entrambi hanno un’architettura gerarchica
– In RuleML è più specifica perché basata su Datalog
– In R.I.F. è più di alto livello (Core ed estensioni)
Entrambi integrano XML,RDF e URI per essere
utilizzati nel Web
Supportano diverse logiche
– R.I.F. Core solo Horn il resto alle estensioni
Supportano le principali tipologie di regole
– In R.I.F. bisogna avere dialetti che estendono
Condition Language
Confronto tra RuleML e R.I.F.
Rappresentazione delle regole
–
–
–
–
In RuleML si rappresenta sia la testa che il corpo
Nel Core solo il corpo e la testa alle estensioni
Molte analogie nei tag
RuleML più sviluppato rispetto al Core
Procedimenti di risoluzione
– In RuleML quello di Datalog
– In R.I.F. del tipo then :- if (condizione positiva)
Implementazioni
– Scarse per RuleML e nessuna per R.I.F.
Bibliografia
“The Semantic Web “ di Tim Berners-Lee, James Hendler e Ora
Lassila, Maggio 2001
“The Semantic Web Revisited” di Nigel Shadbolt, Wendy Hall e
Tim Berners-Lee, 2006
Sito ufficiale di RuleML: www.ruleml.org
Sito ufficiale di R.I.F. : http://www.w3.org/2005/rules/
“Design Rationale of RuleML: A Markup Language for Semantic
Web Rules” di Harold Boley, Said Tabet2 e Gerd Wagner
“RIF Core Design W3C Working Draft” 30 March 2007
(http://www.w3.org/TR/rif-core)
“How to Design a General Rule Markup Language” di Gerd
Wagner
“RIF Use Cases and Requirements” W3C Working Draft 10 July
2006
Scarica

Presentazione Power Point