RDFTL: An Event-Condition- Action Language for RDF George Papamarkos Alexandra Poulovassilis Peter T. Wood School of Computer Science and Information Systems.

Slides:



Advertisements
Similar presentations
EDOC MDSW Workshop1 An MDA-based Approach for Facilitating Adoption of Semantic Web Service Technology Dr. Gerald Gannod –
Advertisements

Codata Workshop1 V iNCES – Weblabs on ecosystem services Pedro Luiz Pizzigatti Corrêa Universidade de São Paulo - Brazil Agricultural Automation Laboratory.
June 28-29, 2005IHE Interoperability Workshop Keith W. Boone Dictaphone Corporation IHE ITI Technical Comittee Notification of Document Availability (NAV)
PRESENTATION TITLE Name of Presenter Company Affiliation IHE Affiliation.
Dynamic views of clinical statements - a short contribution to the debate HL7 WGM – Clinical Statement Project David Markwell.
7th xbrl workshop1 CENTRAL BANK OF CYPRUS IMPLEMENTATION OF COREP & XBRL VII European Banking Supervisors XBRL Workshop Munich, 9 May 2007.
C. Mastroianni, D. Talia, O. Verta - A Super-Peer Model for Resource Discovery Services in Grids A Super-Peer Model for Building Resource Discovery Services.
1 ICS-FORTH EU-NSF Semantic Web Workshop 3-5 Oct Christophides Vassilis Database Technology for the Semantic Web Vassilis Christophides Dimitris Plexousakis.
Getting Started: Launching the Writing Workshop Writing Unit 1 - Getting Started: Launching the Writing Workshop 1.
Intelligent Technologies Module: Ontologies and their use in Information Systems Revision lecture Alex Poulovassilis November/December 2009.
SeLeNe Kick-off Meeting 15-16/11/2002 SeLeNe-related Research At Birkbeck Alex Poulovassilis and Peter T.Wood Database and Web Technologies Group School.
© 2006 IBM Corporation Features of an Enterprise-ready Triple Store Ben Szekely June, 2006.
Semantic Data Caching and Replacement. Outline Motivation Client Caching Architecture Model of Semantic Caching Simulations and Results Conclusion and.
Mardi 30 mars 2010 Lavoisier : a way to integrate heteregeneous monitoring systems. Cyril LOrphelin IN2P3/CNRS Computing Centre, Lyon, France.
TU/e eindhoven university of technology PACIS'03 July Engineering Semantic Web Information Systems Richard Vdovjak Flavius Frasincar Geert-Jan Houben.
Database System Concepts and Architecture
W3C Workshop on Web Services Mark Nottingham
Identifying, Modifying, Creating, and Removing Monitor Rules for SOC Ricardo Contreras Andrea Zisman
GridVine: Building Internet-Scale Semantic Overlay Networks By Lan Tian.
Peer-to-Peer Networking for Distributed Learning Repositories: The Edutella Network Diplomarbeit von Boris Wolf.
RDF Tutorial.
RDF Databases By: Chris Halaschek. Outline Motivation / Requirements Storage Issues Sesame General Introduction Architecture Scalability RQL Introduction.
Chapter 2. Slide 1 CULTURAL SUBJECT GATEWAYS CULTURAL SUBJECT GATEWAYS Subject Gateways  Started as links of lists  Continued as Web directories  Culminated.
MobiShare: Sharing Context-Dependent Data & Services from Mobile Sources Efstratios Valavanis, Christopher Ververidis, Michalis Vazirgianis, George C.
Computer Monitoring System for EE Faculty By Yaroslav Ross And Denis Zakrevsky Supervisor: Viktor Kulikov.
Variability Oriented Programming – A programming abstraction for adaptive service orientation Prof. Umesh Bellur Dept. of Computer Science & Engg, IIT.
A State-based Programming Model and System for Wireless Sensor Networks Reporter : Zhi-Yuan Yang 2010/5/24.
Hands-On Microsoft Windows Server 2003 Networking Chapter 7 Windows Internet Naming Service.
6/27/2015Page 1 This presentation is based on WS-Membership: Failure Management in Web Services World B. Ramamurthy Based on Paper by Werner Vogels and.
Implementing ISA Server Caching. Caching Overview ISA Server supports caching as a way to improve the speed of retrieving information from the Internet.
Data Warehouse View Maintenance Presented By: Katrina Salamon For CS561.
DISTRIBUTED PROCESS IMPLEMENTAION BHAVIN KANSARA.
Event-Condition-Action Rule Languages over Semistructured Data George Papamarkos.
So, Jung-ki Distributed Computing System LAB School of Computer Science and Engineering Seoul National University Implementation of Package Management.
Managing a Cloud For Multi Agent System By, Pruthvi Pydimarri, Jaya Chandra Kumar Batchu.
INTERPRETING IMPERATIVE PROGRAMMING LAGUAGES IN EXTENSIBLE STYLESHEET LANGUAGE TRANSFORMATIONS (XSLT) Authors: Ruhsan Onder Assoc.
Mobile Topic Maps for e-Learning John McDonald & Darina Dicheva Intelligent Information Systems Group Computer Science Department Winston-Salem State University,
SeLeNe - Architecture George Samaras Kyriakos Karenos Larnaca – April 2003 THE UNIVERSITY OF CYPRUS.
San Diego Supercomputer Center SDSC Storage Resource Broker Data Grid Automation Arun Jagatheesan et al., San Diego Supercomputer Center University of.
System Initialization 1)User starts application. 2)Client loads settings. 3)Client loads contact address book. 4)Client displays contact list. 5)Client.
Application code Registry 1 Alignment of R-GMA with developments in the Open Grid Services Architecture (OGSA) is advancing. The existing Servlets and.
Triggers A Quick Reference and Summary BIT 275. Triggers SQL code permits you to access only one table for an INSERT, UPDATE, or DELETE statement. The.
1 Schema Registries Steven Hughes, Lou Reich, Dan Crichton NASA 21 October 2015.
Angela Bonifati, “Active XQuery”, ICDE Active XQuery A. Bonifati, D. Braga, A. Campi, S. Ceri Politecnico di Milano (Italy)
Workshop on Future Learning Landscapes: Towards the Convergence of Pervasive and Contextual computing, Global Social Media and Semantic Web in Technology.
ICDL 2004 Improving Federated Service for Non-cooperating Digital Libraries R. Shi, K. Maly, M. Zubair Department of Computer Science Old Dominion University.
Metadata harvesting in regional digital libraries in PIONIER Network Cezary Mazurek, Maciej Stroiński, Marcin Werla, Jan Węglarz.
Efficient RDF Storage and Retrieval in Jena2 Written by: Kevin Wilkinson, Craig Sayers, Harumi Kuno, Dave Reynolds Presented by: Umer Fareed 파리드.
A Systemic Approach for Effective Semantic Access to Cultural Content Ilianna Kollia, Vassilis Tzouvaras, Nasos Drosopoulos and George Stamou Presenter:
National Institute of Advanced Industrial Science and Technology Query Processing for Distributed RDF Databases Using a Three-dimensional Hash Index Akiyoshi.
1.Registration block send request of registration to super peer via PRP. Process re-registration will be done at specific period to info availability of.
LeGE WS 16 th December 2002 SeLeNe : Self e-Learning Networks Alex Poulovassilis, Birkbeck, Univ. of London One-year Accompanying Measure for IST V.1.9.
EU 2nd Year Review – Feb – WP4 demo – n° 1 WP4 demonstration Fabric Monitoring and Fault Tolerance Sylvain Chapeland Lord Hess.
INRIA - Progress report DBGlobe meeting - Athens November 29 th, 2002.
Internal and Confidential Cognos CoE COGNOS 8 – Event Studio.
Visit to HP Labs, 22/10/2002 Heterogeneous information integration Alex Poulovassilis Database and Web Technologies Group School of Computer Science and.
Raluca Paiu1 Semantic Web Search By Raluca PAIU
Copyright © 2004 Pearson Education, Inc.. Chapter 24 Enhanced Data Models for Advanced Applications.
XML and Distributed Applications By Quddus Chong Presentation for CS551 – Fall 2001.
Composing Web Services and P2P Infrastructure. PRESENTATION FLOW Related Works Paper Idea Our Project Infrastructure.
SQL Database Management
Peer-to-Peer Data Management
#01 Client/Server Computing
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 2 Database System Concepts and Architecture.
Paraskevi Raftopoulou, Euripides G.M. Petrakis
Unit I-2.
Database Architecture
JINI ICS 243F- Distributed Systems Middleware, Spring 2001
Event-Condition-Action rules for the Semantic Web Alex Poulovassilis, Birkbeck, U. of London March 2006.
#01 Client/Server Computing
Presentation transcript:

RDFTL: An Event-Condition- Action Language for RDF George Papamarkos Alexandra Poulovassilis Peter T. Wood School of Computer Science and Information Systems Birkbeck University of London

18 th May rd Web Dynamics Workshop2Introduction RDF is one of the technologies emerging to realise the vision of the Semantic Web RDF is one of the technologies emerging to realise the vision of the Semantic Web The use of RDF in dynamic applications that require timely notification of metadata changes raises the need for mechanisms for monitoring and reacting to such changes The use of RDF in dynamic applications that require timely notification of metadata changes raises the need for mechanisms for monitoring and reacting to such changes Event-Condition-Action Rules are a natural candidate to fulfill these needs Event-Condition-Action Rules are a natural candidate to fulfill these needs This paper presents a language for defining ECA rules on RDF repositories, focusing on syntax, semantics, and an implementation architecture for centralised and distributed environments This paper presents a language for defining ECA rules on RDF repositories, focusing on syntax, semantics, and an implementation architecture for centralised and distributed environments

18 th May rd Web Dynamics Workshop3Introduction This work has been largely motivated by our work on the SeLeNe project ( This work has been largely motivated by our work on the SeLeNe project ( Its goal is to investigate techniques for managing evolving RDF repositories of educational metadata, and providing a syndication and personalisation services over such repositories Its goal is to investigate techniques for managing evolving RDF repositories of educational metadata, and providing a syndication and personalisation services over such repositories Peers in a SeLeNe (self e-learning network) store RDF/S descriptions relating to learning objects (LOs) registered with the SeLeNe and also relating to users of the SeLeNe Peers in a SeLeNe (self e-learning network) store RDF/S descriptions relating to learning objects (LOs) registered with the SeLeNe and also relating to users of the SeLeNe

18 th May rd Web Dynamics Workshop4Introduction A SeLeNe may be deployed in a centralised or distributed environment A SeLeNe may be deployed in a centralised or distributed environment In a centralised environment one `peer server manages all RDF/S descriptions; in a distributed environment each peer manages some fragment In a centralised environment one `peer server manages all RDF/S descriptions; in a distributed environment each peer manages some fragment SeLeNes reactive functionality, to be provided by ECA rules, includes: SeLeNes reactive functionality, to be provided by ECA rules, includes: automatic notification to users of the registration of new LOs of interest to them automatic notification to users of the registration of new LOs of interest to them automatic notification to users of changes in the description of LOs of interest to them automatic notification to users of changes in the description of LOs of interest to them automatic propagation of changes in the description of one resource to other, related, resources automatic propagation of changes in the description of one resource to other, related, resources

18 th May rd Web Dynamics Workshop5 The RDFTL Language Event Part Event Part (INSERT | DELETE) e where e is a path expression that evaluates to a set of nodes. The rule is triggered if this set of nodes contains a new/deleted node. The variable $delta has as its set of instantiations the new/deleted nodes (INSERT | DELETE |UPDATE) triple The rule is triggered if an arc matching triple is inserted, deleted or updated. The variable $delta has as its set of instantiations the source nodes of arcs that have triggered the rule

18 th May rd Web Dynamics Workshop6 The RDFTL Language Condition Part Condition Part Consists of conjunctions, disjunctions and negations of path expressions, which may reference the $delta variable. The rule fires if this expression evaluates to true. Consists of conjunctions, disjunctions and negations of path expressions, which may reference the $delta variable. The rule fires if this expression evaluates to true. Actions Actions (INSERT | DELETE) e Inserts/deletes resource(s) specified by e (INSERT | DELETE | UPDATE) triple Inserts/deletes/updates an arc specified by triple

18 th May rd Web Dynamics Workshop7 Example of LO Metadata

18 th May rd Web Dynamics Workshop8 Example of User Metadata

18 th May rd Web Dynamics Workshop9 Example RDFTL rule ON INSERT resource()[target(dc:type)=Book]/ target(bbk:annotation)/ target(bbk:annotation)/ element()[target(dc:type)=Review] element()[target(dc:type)=Review] IF $delta/source()/source() IF $delta/source()/source() [target(dc:subject)=Computer Science] [target(dc:subject)=Computer Science] DO LET $reviews = DO LET $reviews = resource( resource( target(bbk:review) IN target(bbk:review) IN INSERT ($reviews, seq++, $delta) INSERT ($reviews, seq++, $delta) Event Part : Checks if a review has been added for a book Condition Part : Holds if the subject of the book is CS Action Part : Inserts a new edge between user 128s reviews collection and the new review. Action Part : Inserts a new edge between user 128s reviews collection and the new review.

18 th May rd Web Dynamics Workshop10 RDFTL Deployment Deployment of RDFTL may be in a centralised, mediated or P2P environment – see the paper for a discussion of the first two Deployment of RDFTL may be in a centralised, mediated or P2P environment – see the paper for a discussion of the first two In a P2P environment, we assume a super-peer architecture where each super-peer server may be coordinating a group of peer servers, as well as itself possibly hosting a fragment of the RDF/S metadata In a P2P environment, we assume a super-peer architecture where each super-peer server may be coordinating a group of peer servers, as well as itself possibly hosting a fragment of the RDF/S metadata At each SP there is an installation of the ECA Engine At each SP there is an installation of the ECA Engine

18 th May rd Web Dynamics Workshop11 RDFTL Implementation See paper for details of syntax, path query semantics, and rule execution semantics See paper for details of syntax, path query semantics, and rule execution semantics An RDFTL ECA Engine provides an active wrapper over a passive RDF repository, exploiting the query, storage and update functionality of the repository (currently RDFSuite from ICS-FORTH) An RDFTL ECA Engine provides an active wrapper over a passive RDF repository, exploiting the query, storage and update functionality of the repository (currently RDFSuite from ICS-FORTH) The ECA Engine consists of a rule interpretor, event detector, condition evaluator and action scheduler The ECA Engine consists of a rule interpretor, event detector, condition evaluator and action scheduler

18 th May rd Web Dynamics Workshop12 Registering an ECA rule ECA rules are generated by application services running at peers ECA rules are generated by application services running at peers When a new rule is generated at a peer, it is sent to the super-peer for storage When a new rule is generated at a peer, it is sent to the super-peer for storage There, the event/condition/action parts of the rule are annotated with the local peers that are relevant to the rule There, the event/condition/action parts of the rule are annotated with the local peers that are relevant to the rule This is determined by keeping an index at each peer and super-peer This is determined by keeping an index at each peer and super-peer

18 th May rd Web Dynamics Workshop13 Peer/Super Peer Indexes Each peer maintains an annotated copy of its local RDF Schema, with 0 and 1 indicating whether or not a node has data of this type at this peer Each peer maintains an annotated copy of its local RDF Schema, with 0 and 1 indicating whether or not a node has data of this type at this peer This information is also propagated to the peers SP where a combined annotated RDF Schema is maintained from all peers in this SPs peer group and also the remote SPs with which this SP is connected This information is also propagated to the peers SP where a combined annotated RDF Schema is maintained from all peers in this SPs peer group and also the remote SPs with which this SP is connected Any change of in the annotation of an SPs schema is propagated to its neighbouring SPs Any change of in the annotation of an SPs schema is propagated to its neighbouring SPs Each SP also keeps for each node annotated with a 1 in its schema a resource index i.e. a list of the resources of this type referenced by its peer group Each SP also keeps for each node annotated with a 1 in its schema a resource index i.e. a list of the resources of this type referenced by its peer group

18 th May rd Web Dynamics Workshop14 Indexing in Peers and Super Peers {1} {0} {1} {0} {1} P1 P2 {SP1} {P4,P5,SP1} {P4,SP1} {P5,P4,SP1} {SP1} SP1 1 Local annotated RDFS Combined annotated RDFS PeerResource P1 r1,r2,r4,r5 P2 2 Resource index {P2} {P1,P2,SP2} {P1,SP2} {P1} SP2 r1,r2,r4

18 th May rd Web Dynamics Workshop15 Registering an ECA rule (contd) Registering an ECA rule (contd) An new ECA rule registered at a SP is also sent to all neighbouring SPs that may be relevant to it – determined from the SP ID annotations on the originating SPs schema An new ECA rule registered at a SP is also sent to all neighbouring SPs that may be relevant to it – determined from the SP ID annotations on the originating SPs schema These SPs repeat the process of matching each part of the rule against their schemas and storing the rule in their rule base if it is relevant to any of their peer group These SPs repeat the process of matching each part of the rule against their schemas and storing the rule in their rule base if it is relevant to any of their peer group

18 th May rd Web Dynamics Workshop16 Maintaining the Rule Bases Maintaining the Rule Bases If a peer changes a schema node annotation from `1 to `0 this information is propagated to its SP If a peer changes a schema node annotation from `1 to `0 this information is propagated to its SP The annotation of each rule in SPs rule base is updated The annotation of each rule in SPs rule base is updated If as a result there is a rule which is no longer relevant to this peer group it can be deactivated in SPs rule base (not deleted, as it may later become relevant again) If as a result there is a rule which is no longer relevant to this peer group it can be deactivated in SPs rule base (not deleted, as it may later become relevant again)

18 th May rd Web Dynamics Workshop17 Maintaining the Rule Bases Maintaining the Rule Bases If a peer changes a schema node annotation from `0 to `1 this information is again propagated to its SP and each rule in SPs rule base is again updated If a peer changes a schema node annotation from `0 to `1 this information is again propagated to its SP and each rule in SPs rule base is again updated If the schema at the SP now has a node whose annotation has changed from `0 to `1 this is notified to the SPs neighbours If the schema at the SP now has a node whose annotation has changed from `0 to `1 this is notified to the SPs neighbours They send to the SP their ECA rules which are relevant to the change. They also recursively request from their neighbours such rules, and propagate such rules back to the SP They send to the SP their ECA rules which are relevant to the change. They also recursively request from their neighbours such rules, and propagate such rules back to the SP

18 th May rd Web Dynamics Workshop18 Rule triggering and execution Rule triggering and execution If an event E occurs at a peer P, this notifies its SP If an event E occurs at a peer P, this notifies its SP The SP determines if E may trigger a rule annotated with Ps ID The SP determines if E may trigger a rule annotated with Ps ID If so, it sends P the rules event query to evaluate (this may involve distributed query processing) If so, it sends P the rules event query to evaluate (this may involve distributed query processing) If the condition is true, the SP generates the necessary messages from the actions part of the rule for distributed action execution If the condition is true, the SP generates the necessary messages from the actions part of the rule for distributed action execution

18 th May rd Web Dynamics Workshop19 Ongoing Work Developing algorithms for matching rule event, condition and action part with schema indexes Developing algorithms for matching rule event, condition and action part with schema indexes Defining the message syntax between peers. Defining the message syntax between peers. Defining coordination with query processing Defining coordination with query processing Producing a prototype implementation Producing a prototype implementation Experimantation/evaluation/evolution Experimantation/evaluation/evolution Transactional aspects of ECA rules in P2P environments Transactional aspects of ECA rules in P2P environments