Ontology Updating Driven by Events Dutch-Belgian Database Day 2012 (DBDBD 2012) November 21, 2012 Frederik Hogenboom Jordy Sangers.

Slides:



Advertisements
Similar presentations
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 5 More SQL: Complex Queries, Triggers, Views, and Schema Modification.
Advertisements

CH-4 Ontologies, Querying and Data Integration. Introduction to RDF(S) RDF stands for Resource Description Framework. RDF is a standard for describing.
RCQ-ACS: RDF Chain Query Optimization Using an Ant Colony System WI 2012 Alexander Hogenboom Erasmus University Rotterdam Ewout Niewenhuijse.
GridVine: Building Internet-Scale Semantic Overlay Networks By Lan Tian.
Learning Semantic Information Extraction Rules from News The Dutch-Belgian Database Day 2013 (DBDBD 2013) Frederik Hogenboom Erasmus.
A Linguistic Approach for Semantic Web Service Discovery International Symposium on Management Intelligent Systems 2012 (IS-MiS 2012) July 13, 2012 Jordy.
GridRPC Sources / Credits: IRISA/IFSIC IRISA/INRIA Thierry Priol et. al papers.
Rule Based Systems Michael J. Watts
Expert System Human expert level performance Limited application area Large component of task specific knowledge Knowledge based system Task specific knowledge.
RCQ-GA: RDF Chain Query Optimization using Genetic Algorithms BNAIC 2009 Alexander Hogenboom, Viorel Milea, Flavius Frasincar, and Uzay Kaymak Erasmus.
Automatically Annotating Web Pages Using Google Rich Snippets 11th Dutch-Belgian Information Retrieval Workshop (DIR 2011) February 4, 2011 Frederik Hogenboom.
Optimizing RDF Chain Queries using Genetic Algorithms DBDBD 2010 Alexander Hogenboom, Viorel Milea, Flavius Frasincar, and Uzay Kaymak Erasmus University.
Detecting Economic Events Using a Semantics-Based Pipeline 22nd International Conference on Database and Expert Systems Applications (DEXA 2011) September.
News Personalization using the CF-IDF Semantic Recommender International Conference on Web Intelligence, Mining, and Semantics (WIMS 2011) May 25, 2011.
Database Systems More SQL Database Design -- More SQL1.
Ontology translation: two approaches Xiangkui Yao OntoMorph: A Translation System for Symbolic Knowledge By: Hans Chalupsky Ontology Translation on the.
Department of Computer Science 1 CSS 496 Business Process Re-engineering for BS(CS)
Word Sense Disambiguation for Automatic Taxonomy Construction from Text-Based Web Corpora 12th International Conference on Web Information System Engineering.
Sentiment Analysis with a Multilingual Pipeline 12th International Conference on Web Information System Engineering (WISE 2011) October 13, 2011 Daniëlla.
© 2006 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice Publishing data on the Web (with.
Erasmus University Rotterdam Introduction Nowadays, emerging news on economic events such as acquisitions has a substantial impact on the financial markets.
Managing Large RDF Graphs (Infinite Graph) Vaibhav Khadilkar Department of Computer Science, The University of Texas at Dallas FEARLESS engineering.
Erasmus University Rotterdam Introduction With the vast amount of information available on the Web, there is an increasing need to structure Web data in.
A News-Based Approach for Computing Historical Value-at-Risk International Symposium on Management Intelligent Systems 2012 (IS-MiS 2012) Frederik Hogenboom.
INFO415 Approaches to System Development: Part 2
ASP.NET Programming with C# and SQL Server First Edition
Reusable Code For Your Appx Processes Presented By: Gary Rogers.
RuleML-2007, Orlando, Florida1 Towards Knowledge Extraction from Weblogs and Rule-based Semantic Querying Xi Bai, Jigui Sun, Haiyan Che, Jin.
1 PHP and MySQL. 2 Topics  Querying Data with PHP  User-Driven Querying  Writing Data with PHP and MySQL PHP and MySQL.
CSE314 Database Systems More SQL: Complex Queries, Triggers, Views, and Schema Modification Doç. Dr. Mehmet Göktürk src: Elmasri & Navanthe 6E Pearson.
Integrated Development Environment for Policies Anjali B Shah Department of Computer Science and Electrical Engineering University of Maryland Baltimore.
Java CGI Lecture notes by Theodoros Anagnostopoulos.
Ontology-Driven Automatic Entity Disambiguation in Unstructured Text Jed Hassell.
RELATIONAL FAULT TOLERANT INTERFACE TO HETEROGENEOUS DISTRIBUTED DATABASES Prof. Osama Abulnaja Afraa Khalifah
Lesley Charles November 23, 2009.
Triggers and Stored Procedures in DB 1. Objectives Learn what triggers and stored procedures are Learn the benefits of using them Learn how DB2 implements.
Comparison of BaseVISor, Jena and Jess Rule Engines Jakub Moskal, Northeastern University Chris Matheus, Vistology, Inc.
SPARQL Query Graph Model (How to improve query evaluation?) Ralf Heese and Olaf Hartig Humboldt-Universität zu Berlin.
*Erasmus University Rotterdam P.O. Box 1738, NL-3000 DR Rotterdam, the Netherlands † Teezir BV Wilhelminapark 46, NL-3581 NL, Utrecht, the Netherlands.
Database Systems Design, Implementation, and Management Coronel | Morris 11e ©2015 Cengage Learning. All Rights Reserved. May not be scanned, copied or.
The Volcano Optimizer Generator Extensibility and Efficient Search.
Efficient RDF Storage and Retrieval in Jena2 Written by: Kevin Wilkinson, Craig Sayers, Harumi Kuno, Dave Reynolds Presented by: Umer Fareed 파리드.
Semantics-Based News Recommendation with SF-IDF+ International Conference on Web Intelligence, Mining, and Semantics (WIMS 2013) June 13, 2013 Marnix Moerland.
Erasmus University Rotterdam Introduction Content-based news recommendation is traditionally performed using the cosine similarity and TF-IDF weighting.
1 CSCD 326 Data Structures I Software Design. 2 The Software Life Cycle 1. Specification 2. Design 3. Risk Analysis 4. Verification 5. Coding 6. Testing.
SPARQL In-Class Shared Exercise. Pop Quiz If you have a large knowledge store, why should you not issue: SELECT ?s ?p ?o WHERE { ?s ?p ?o } Ans: It returns.
Practical RDF Chapter 10. Querying RDF: RDF as Data Shelley Powers, O’Reilly SNU IDB Lab. Hyewon Lim.
User Profiling using Semantic Web Group members: Ashwin Somaiah Asha Stephen Charlie Sudharshan Reddy.
Lexico-semantic Patterns for Information Extraction from Text The International Conference on Operations Research 2013 (OR 2013) Frederik Hogenboom
SQL Based Knowledge Representation And Knowledge Editor UMAIR ABDULLAH AFTAB AHMED MOHAMMAD JAMIL SAWAR (Presented by Lei Jiang)
Professor: Dr. Shu-Ching Chen TA: Hsin-Yu Ha Function, Trigger used in PosgreSQL.
Semantics-Based News Recommendation International Conference on Web Intelligence, Mining, and Semantics (WIMS 2012) June 14, 2012 Michel Capelle
An Effective SPARQL Support over Relational Database Jing Lu, Feng Cao, Li Ma, Yong Yu, Yue Pan SWDB-ODBIS 2007 SNU IDB Lab. Hyewon Lim July 30 th, 2009.
PROGRAMMING FUNDAMENTALS INTRODUCTION TO PROGRAMMING. Computer Programming Concepts. Flowchart. Structured Programming Design. Implementation Documentation.
Chapter 04 Semantic Web Application Architecture 23 November 2015 A Team 오혜성, 조형헌, 권윤, 신동준, 이인용.
1. Advanced SQL Functions Procedural Constructs Triggers.
1 RDF Storage and Retrieval Systems Jan Pettersen Nytun, UiA.
More SQL: Complex Queries, Triggers, Views, and Schema Modification
CC La Web de Datos Primavera 2017 Lecture 7: SPARQL [i]
Active Database Concepts
Middleware independent Information Service
Miguel Azurin, Andrew Engroff, Ahmad Sadiq
Unit# 8: Introduction to Computer Programming
CC La Web de Datos Primavera 2016 Lecture 7: SPARQL (1.0)
Semantic Markup for Semantic Web Tools:
CC La Web de Datos Primavera 2018 Lecture 8: SPARQL [1.1]
DATABASES WHAT IS A DATABASE?
Chaitali Gupta, Madhusudhan Govindaraju
Database SQL.
ONTOMERGE Ontology translations by merging ontologies Paper: Ontology Translation on the Semantic Web by Dejing Dou, Drew McDermott and Peishen Qi 2003.
Presentation transcript:

Ontology Updating Driven by Events Dutch-Belgian Database Day 2012 (DBDBD 2012) November 21, 2012 Frederik Hogenboom Jordy Sangers Flavius Frasincar Erasmus University Rotterdam PO Box 1738, NL-3000 DR Rotterdam, the Netherlands This talk is based on the paper Event-Driven Ontology Updating. Sangers, J., Hogenboom, F.P. & Frasincar, F. (2012). In X.S. Wang, I.F. Cruz, A. Delis & G. Huang (Eds.), Thirteenth International Conference on Web Information System Engineering (WISE 2012) Vol Lecture Notes in Computer Science (pp ). Springer.

Introduction (1) Most modern Web applications represent domain specific knowledge by means of Web ontologies Ontologies: –Concepts –Relations –Triples: subject - predicate - object Structured data facilitates data understandability and interoperability Dutch-Belgian Database Day 2012 (DBDBD 2012)November 21, 2012

Introduction (2) Due to society's non-static nature, knowledge bases require regular updates Traditional data sources like relational databases have mechanisms for automatic updates What about Web ontology updating? Dutch-Belgian Database Day 2012 (DBDBD 2012)November 21, 2012

Introduction (3) There is no principled way for automatic Web ontology updating Domain experts mostly update ontologies manually: –Tedious –Repetitive –Error-prone –Time-consuming –… Dutch-Belgian Database Day 2012 (DBDBD 2012)November 21, 2012

Introduction (4) Ontology Update Language (OUL): –Alleviates the process of manual Web ontology updating –Define sets of SPARQL/Update rules –Based on automatic update mechanism from active databases: SQL-triggers –Event-Condition-Action model: Event occurrences trigger actions through changehandlers Preconditions are assessed No support for a fully automated update mechanism Hence, we propose OULx: –Language features –Execution models Dutch-Belgian Database Day 2012 (DBDBD 2012)November 21, 2012

::== string OUL Syntax Dutch-Belgian Database Day 2012 (DBDBD 2012)November 21, 2012 CREATE CHANGEHANDLER FOR AS [ IF THEN ] ::== add [unique] ( ) | delete [unique] ( ) ::== SPARQL SELECT query WHERE clause ::== add [unique] ( ) | delete [unique] ( ) ::== SPARQL SELECT query WHERE clause ::== contains( ) | entails( ) | entailsChanged( ) | ( ) | and | or ::== contains( ) | entails( ) | entailsChanged( ) | ( ) | and | or ::== [ ]| ::== | for( ) end; | feedback( ) | applyRequest ::== a MODIFY action (in SPARQL/Update) ::== string (may contain SPARQL variables) ::== [ ]| ::== | for( ) end; | feedback( ) | applyRequest ::== a MODIFY action (in SPARQL/Update) ::== string (may contain SPARQL variables)

::== string Dutch-Belgian Database Day 2012 (DBDBD 2012) ::== [ ]| ::== | for( ) end; | feedback( ) | applyRequest ::== a MODIFY action (in SPARQL/Update) ::== string (may contain SPARQL variables) ::== [ ]| ::== | for( ) end; | feedback( ) | applyRequest ::== a MODIFY action (in SPARQL/Update) ::== string (may contain SPARQL variables) ::== add [unique] ( ) | delete [unique] ( ) ::== SPARQL SELECT query WHERE clause ::== add [unique] ( ) | delete [unique] ( ) ::== SPARQL SELECT query WHERE clause OULx Syntax November 21, 2012 CREATE CHANGEHANDLER [ ] FOR AS [ IF THEN ] ::== contains( ) | entails( ) | entailsChanged( ) | ( ) | and | or | ! ::== contains( ) | entails( ) | entailsChanged( ) | ( ) | and | or | ! ::== [ ] ::== ::== SPARQL query PREFIX statement ::== [ ] ::== ::== SPARQL query PREFIX statement

OULx Example Adding to a product ontology an item that was not yet present could be accomplished by using the following OULx changehandler: Dutch-Belgian Database Day 2012 (DBDBD 2012)November 21, 2012 CREATE CHANGEHANDLER addProductHandler PREFIX kb: PREFIX rdf: FOR add(?company kb:hasProduct ?product) AS IF (contains(?company rdf:type kb:Company) and !(contains(?product rdf:type kb:Product))) THEN insert data{?product rdf:type kb:Product}; applyRequest; Changehandler NamePrefixesChangerequestPreconditionsActions addProductHandler kb: rdf: kb: rdf: add Product to Company Company in ontology Product not in ontology Company in ontology Product not in ontology insert Product execute changerequest insert Product execute changerequest

OUL Execution Model Event occurrences (update requests) trigger actions through changehandlers The first matching changehandler (where all preconditions are met) is executed In case of multiple events deferred execution is used Dutch-Belgian Database Day 2012 (DBDBD 2012)November 21, 2012

OULx Execution Models Extensions inspired from active databases: –Immediate execution –Execution of all matching changehandlers –Update chaining –Update looping Dutch-Belgian Database Day 2012 (DBDBD 2012)November 21, 2012

OULx Execution Models: Execution Dutch-Belgian Database Day 2012 (DBDBD 2012)November 21, 2012 Updates can be executed during rule interpretation or after all updates have been collected Deferred execution: –Match changehandlers –Collect actions and store SPARQL/Update statements –Apply stored statements to the ontology Immediate execution: –Match changehandlers –Collect actions and apply SPARQL/Update statements

… OULx Execution Models: Execution Dutch-Belgian Database Day 2012 (DBDBD 2012)November 21, 2012 event Storage execute

OULx Execution Models: Matching Dutch-Belgian Database Day 2012 (DBDBD 2012)November 21, 2012 The number of changehandlers to be matched determines the updates to be collected First matching changehandler: –Iterator moves forward through the ontology update specification document until: End of document Preconditions of a changehandler are met –Returns binding information of single changehandler All matching changehandlers: –Iterator moves forward through the ontology update specification document until end of document –Returns binding information of all changehandlers that meet their preconditions

… OULx Execution Models: Matching Dutch-Belgian Database Day 2012 (DBDBD 2012)November 21, 2012 event execute

OULx Execution Models: Chaining Dutch-Belgian Database Day 2012 (DBDBD 2012)November 21, 2012 Changehandlers could fire new update requests, hence triggering other changehandlers Chaining updates: –Collect updates from first/all matching changehandlers –Also collect updates from those handlers that are triggered by other matching handlers –Execute updates in a deferred/immediate way

Changehandler NamePrefixesChangerequestPreconditionsActions Changehandler NamePrefixesChangerequestPreconditionsActions OULx Execution Models: Chaining Dutch-Belgian Database Day 2012 (DBDBD 2012)November 21, 2012 event execute

OULx Execution Models: Looping Dutch-Belgian Database Day 2012 (DBDBD 2012)November 21, 2012 For deferred/immediate execution of first/all changehandlers, applying updates to the ontology changes the ontology, and could trigger new changehandlers to become matched with the same event Looping updates: –Iterate over changehandlers using the same event –Apply update actions until there are no matching changehandlers left

… OULx Execution Models: Looping Dutch-Belgian Database Day 2012 (DBDBD 2012)November 21, 2012 event execute

Implementation OULx has been fully implemented as a stand-alone Java application (available online) Syntax: parsing and compiling of changehandlers is performed via a compiler created with JavaCC Execution: SPARQL and SPARQL/Update implemented using Jena and ARQ Inputs: –Ontology –Changehandlers –Execution model Output: updated ontology Dutch-Belgian Database Day 2012 (DBDBD 2012)November 21, 2012

Discussion (1) Dutch-Belgian Database Day 2012 (DBDBD 2012)November 21, 2012 No benchmarks for OUL Deferred/immediate execution: –Some deferred updates could make subsequent ones invalid –Deferred execution could be more efficient than immediate execution (merging duplicates, simplification) First/all matching changehandlers: –All matching changehandlers is computationally more intensive due to the increased complexity –However, updates are more efficient (in one pass, all matched handlers are dealt with, eliminating the need for multiple user-triggered iterations)

Discussion (2) Dutch-Belgian Database Day 2012 (DBDBD 2012)November 21, 2012 Chaining: –Increased level of automation (no need for manual triggering of updates resulting from earlier updates) –Contributes to the usability of the language by separating atomic update actions and thus delivering modularity and an increased possibility to reuse changehandlers Looped execution models: –Efficiency is higher compared to non-looped models –Interpretability of updates is lower than for models without looping due to the repeated event generation Note of caution: –Rule specification differs per execution model –Termination not always guaranteed

Conclusions Dutch-Belgian Database Day 2012 (DBDBD 2012)November 21, 2012 We have extended OUL to OULx: –New language features: Prefixes Negation –New execution models: Immediate updating (opposed to deferred updating) Execution of all matching handlers (instead of just the first one) Update chaining (internal triggering mechanism) Looping (repetitive treatment of an event) Future work: –Determine conditions to ensure termination of changehandlers –Develop IE language that combines information extraction and ontology updates

Questions Dutch-Belgian Database Day 2012 (DBDBD 2012)November 21,