Introduction to Semantic Web Rules & Policies Daniel Olmedilla, Philipp Kärger L3s Research Center...
-
Upload
leah-hattaway -
Category
Documents
-
view
219 -
download
2
Transcript of Introduction to Semantic Web Rules & Policies Daniel Olmedilla, Philipp Kärger L3s Research Center...
Introduction to Semantic Web Rules &
PoliciesDaniel Olmedilla, Philipp Kärger
L3s Research Center / Hannover University
TENCompetence Winter SchoolInnsbruck, 21st February 2008
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 2
About this lectureWhy this lecture?
• Lot of noise about the Semantic Web Lot of relevant papers and work on Semantic Web in last
years
• Techniques and tools can be used in the context of lifelong learning and competence development
• Intelligent systems/agents need to be guided
• Software agents Development is expensive Are static Are unflexible
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 3
About this lecture Objectives
This lecture is intended to provide reasons that motivated Semantic Web Research
(revisited) a basic understanding of rule-based representation a basic introduction to reasoning techniques a basic understanding of requirements of current
distributed systems a motivation for the use of policies a basic introduction to rule-based policies and their
applications a basic introduction to reactive policies
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 4
About this lectureDisclaimer
The objective is to present the main ideas
not an explanation of the theory that lays behind
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 5
About this lectureInteractive
And also important This is not
a conference presentation a monologue
Each module partially builds on concepts from previous modules
We provide exercises to strength understanding
You are also encouraged to interrupt and
ASK Questionswhenever you need it
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 6
About this lectureThe slides
Slides are wordy so they can be easily understood offline after the tutorial
More definitions and references are available in notes and hidden slides
Tutorial is available from:
http://www.L3S.de/~olmedilla/events/2008/TENC-WS-SWP/20080221_TENC_WS.ppt
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 7
OutlineLecture Overview
Whythe Semantic Web?
Introduction
Last Year Lecture
Rule-Based Representation & Reasoning
Semantic Web Policies
Reactive Policies
Conclusions/Summary
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 8
OutlineIntroduction
Whythe Semantic Web?
Introduction
Last Year Lecture
Rule-Based Representation & Reasoning
Semantic Web Policies
Reactive Policies
Conclusions/Summary
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 9
IntroductionWarming Up: Problem
Institutions, companies and people need to control the way they Make business Take decisions Offer their assets Etc …
Computers help us on our daily work performing tasks that we cannot perform (or we do it worse) automatically on our behalf
But generally, we need to control how decisions and actions are taken
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 10
IntroductionWhat is a policy?
In a very broad way, a policy is defined as
a statement defining the behaviour of an entity
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 11
IntroductionPolicies are everywhere
B2B contracts e.g. quantity flexible contracts, late delivery penalties,
etc. Negotiation
e.g. rules associated with auction mechanisms Security
e.g. access control policies Privacy
Information Collection Policies (aka “ P3P Privacy Policies”)
Obfuscation Policies Workflow management
What to do under different sets of conditions Context aware computing
What service to invoke to access a particular contextual attribute
Context-sensitive preferences[ by Norman Sadeh, Semantic Web Policy Workshop panel, ISWC 2005 ]
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 12
Exercise 1Specify your own policies
How do you decide (in general terms) which transportation you use to come to this event?
whether you share your
PhD thesis draft?
Pictures from your holidays in Hawaii?
Your famous report so many companies are willing to pay for?
whether you take a private call when being at work?
which tasks you perform everyday at work?
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 13
Exercise 1Problem (I)
Now imagine a system application or software agent could/should decide on your behalf. How do you tell such an agent how it should do it?
The way we make business, take decisions, etc. Is dynamic, that is, often changesEvolves with the time
We cannot re-code, re-compile, re-install a new software agent every time we change the way we take decisions
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 14
Exercise 1Problem (II)
Furthermore, we need that the system acting on our behalfdoes what we want
How do we tell it? What if we make a mistake and tell
something wrong? is contextual, that is, depends on many factors is “intelligent” (does things as we would do
them) is not reserved only to millionaires
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 15
IntroductionThe goal
Build applications/agents whereBehaviour is flexible
Can be changed/updated without re-coding, re-compiling, re-
installing, etc… In a costless manner
Can be managed by administrators/users without needing to be computer experts
Can be understood by normal users
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 16
OutlineWhy the Semantic Web?
Whythe Semantic Web?
Introduction
Last Year Lecture
Rule-Based Representation & Reasoning
Semantic Web Policies
Reactive Policies
Conclusions/Summary
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 17
Why the Semantic Web? HTML: in your browser
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 18
Why the Semantic Web? HTML: Markup
<h2> Topics </h2><p>Educational Principles <br/>Knowledge Management <br/>Education Process Modeling <br/>Learning Design <br/>Competence Development <br/>…</p><h2> Lecturers </h2><p>Albert Angehrn, INSEAD, France <br/>Boyan Bontchev, Sofia University, Bulgaria <br/>Alexandar Dimov, Sofia University, Bulgaria <br/>Dai Griffiths, University of Bolton, United Kingdom <br/>…</p>
Markup forpresentation only
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 19
Why the Semantic Web? HTML: Limitations
HTML deals only with formatting of data
It does not provide information about the data it contains
Query engines do a great job but queries like Give me the list of subjects that the winter school will
deal with Return the affiliations of the lecturers in the winter school
are not possible on the current Web
Search on current Web is based on syntactic matching
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 20
Why the Semantic Web? Current Web
• Downloadable Resources: identified by URL's untyped
• Links: href, src, ... limited, non-descriptive
• User: Exciting world
semantics of the resource, however, gleaned from content
• Machine processable: Very little information available
significance of the links only evident from the context around the anchor. [Eric Miller. Weaving Meaning : An Overview of The Semantic Web. 2003 ]
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 21
Why the Semantic Web? Semantic Web Definition
“The Semantic Web is an extension of the current web in which information is given well-defined meaning, better enabling computers and people to work in cooperation.”
Tim Berners-Lee, James Hendler, Ora LassilaThe Semantic Web, Scientific American, May 17, 2001
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 22
Why the Semantic Web? The Semantic Web
• Resources (any resource): Globally Identified by URI's Extensible Relational
• Links: Identified by URI's Extensible Relational
• User: Even more exciting world,
richer user experience • Machine:
More processable information is available (Data Web)
• Computers and people: Work, learn and exchange
knowledge effectively
[Eric Miller. Weaving Meaning : An Overview of The Semantic Web. 2003 ]
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 23
OutlineLast Year Lecture
Whythe Semantic Web?
Introduction
Last Year Lecture
Rule-Based Representation & Reasoning
Semantic Web Policies
Reactive Policies
Conclusions/Summary
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 24
Last year lectureWarning (or clarification )
OWL: Web Ontology Language
Ontology = OWL
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 25
Last year lectureIntroduction to Semantic Web
Resource Descriptions & Vocabularies (I)
Queryingthe SW (I)
Reasoningon the SW (I)
Whythe Semantic Web?
Resource Descriptions & Vocabularies (II)
Queryingthe SW (II)
Reasoningon the SW (II)
Summary
Basic Concepts
AdvancedConcepts
Introduction
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 26
Last year lectureThe Semantic Web Stack
XML / Namespaces
URI / Unicode
Last year lecture
Part of this year lecture
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 27
OutlineRule-Based Representation & Reasoning
Whythe Semantic Web?
Introduction
Last Year Lecture
Rule-Based Representation & Reasoning
Semantic Web Policies
Reactive Policies
Conclusions/Summary
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 28
Rule-Based Representation and ReasoningWho uses logic?
Aristoteles
Spock
Mathematicians
Computer scientists
You
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 29
Exercise 1Revisited (I)
Were your policies declarative?
That is, they specify the what (conditions) but not the how (algorithm or process to satisfy them)
E.g., HTML pages describe what the page should contain but not how to actually display the page on a computer screen
using inference rules?
E.g., If destination is in Europe then max price is …
E.g., If distance is less than … then go by train
if not, do you think they are more naturally modelled as rules?
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 30
Rule-Based Representation and ReasoningRules are everywhere (I)
Rules of ethics for robots
1. A robot may not injure a human being or, through inaction, allow a human being to come to harm.
2. A robot must obey orders given to it by human beings, except where such orders would conflict with the First Law.
3. A robot must protect its own existence as long as such protection does not conflict with the First or Second Law.
[Isaac Asimov. Runaround. 1942 ]
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 31
Rule-Based Representation and ReasoningRules are everywhere (II)
Declarative
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 32
Rule-Based Representation and ReasoningRules are everywhere (III)
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 33
Rule-Based Representation and ReasoningInference Rule (I)
Relation holding between premises (antecedent) and conclusions (consequent)
The conclusion is said to be inferable (or derivable or deducible) from the premises
We can infer new knowledge
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 34
Rule-Based Representation and ReasoningInference Rule (II)
Rule notation: consequent ← antecedent
Stands for antecedent consequentthat is, IF antecedent THEN consequent
Examples: If someone is a man then he is mortal
mortal(X) ← man(X). If someone is in this lecture, then he/she is a researcher
researcher(X) ← inThisLecture(X).It does not matter what X is, the rule is always valid.
Base for deductive reasoning
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 35
Rule-Based Representation and ReasoningDeductive vs. Inductive Reasoning
Deductive: proceeds from general principles or premises to derive particular information (conclusions).
Example All apples are fruit. All fruits grow on trees. Therefore all apples grow on trees.Remember Sherlock Holmes?
Inductive: the premises of an argument are believed to support the conclusion but do not ensure its truth.
Makes generalizations (from empirical observations)
Example All observed crows are black. Therefore all crows are black.
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 36
Rule-Based Representation and ReasoningExample: information about your family
Assume an agent needs to know all the information about your closest relatives.
How do you inform your agent about such information?
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 37
Rule-Based Representation and ReasoningPossibility 1: Enumerate all the facts
Try to enumerate all that information for your agent:
Tom is the father of MaryTom is the parent of MaryAlice is the sister of MaryMary is the sister of AliceClara is the sister of MaryMary is the sister of ClaraMary is the mother of AnneMary is the parent of Anne
Tom is the grandparent of AnneAlice is the aunt of AnneClara is the aunt of AnneClara is the mother of BobAlice is the aunt of BobMary is the aunt of BobTom is the grandparent of Bob…
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 38
Rule-Based Representation and ReasoningPossibility 2: facts + rules + deduction
Tom is the father of Mary father(‘Tom’,’Mary’). Alice is the sister of Mary sister(‘Alice’,’Mary’). Clara is the sister of Mary sister(‘Clara’,’Mary’). Mary is the mother of Anne mother(‘Mary’,‘Anne’). Clara is the mother of Bob mother(‘Clara’,‘Bob’).
A parent is either a father or a motherparent(P,C) ← father(P,C) mother(P,C).
The parent of your sister is your parentparent(P,C) ← parent(P,X) sister(X,C) .
The parent of a parent is a grandparentgrandparent(P,C) ← parent(P,X)
parent(X,C). An aunt is the sister of a parent
aunt(A,C) ← sister(A,X) parent(X,C) .
Axioms/Facts
Inference Rules
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 39
Rule-Based Representation and ReasoningExercise 2: deductive reasoning
Given such a program, write down the inferred new knowledge
Tom is the father of Mary father(‘Tom’,’Mary’). Alice is the sister of Mary sister(‘Alice’,’Mary’). Clara is the sister of Mary sister(‘Clara’,’Mary’). Mary is the mother of Anne mother(‘Mary’,‘Anne’). Clara is the mother of Bob mother(‘Clara’,‘Bob’).
A parent is either a father or a motherparent(P,C) ← father(P,C) mother(P,C).
The parent of your sister is your parentparent(P,C) ← parent(P,X) sister(X,C) .
The parent of a parent is a grandparentgrandparent(P,C) ← parent(P,X)
parent(X,C). An aunt is the sister of a parent
aunt(A,C) ← sister(A,X) parent(X,C) .
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 40
Rule-Based Representation and ReasoningExercise 2: solution
Given such a program, write down the inferred new knowledge
From first rule: Tom is the parent of Mary parent(‘Tom’,’Mary’). Mary is the parent of Anne parent(‘Mary’,’Anne’). Clara is the parent of Bob parent(‘Clara’,’Bob’).
From second rule (+ the first rule): Tom is the parent of Alice parent(‘Tom’,’Alice’). Tom is the parent of Clara parent(‘Tom’,’Clara’).
From the third rule (+ the first and second) Tom is the grandparent of Anne
grandparent(‘Tom’,’Anne’). Tom is the grandparent of Bob
grandparent(‘Tom’,’Bob’).
From the forth rule (+ the first rule) Alice is the aunt of Anne aunt(‘Alice’,’Anne’). Clara is the aunt of Anne aunt(‘Clara’,’Anne’). Mary is the aunt of Bob aunt(‘Mary’,’Bob’). Alice is the aunt of Bob aunt(‘Alice’,’Bob’).
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 41
Rule-Based Representation and ReasoningAdvantages
Declarative Infer implicit knowledgeCompact representationWell-defined semanticsAvailable proofsTruths that it establishes are absolute
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 42
Rule-Based Representation and ReasoningDisadvantages
Wrongly specified rules wrong implicit knowledge It must have some truths in hand before starting
Sometimes you don’t have them all Sometimes not all is true or false You need to specify all right rules
Otherwise, underspecified programs
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 43
OutlineSemantic Web Policies
Whythe Semantic Web?
Introduction
Last Year Lecture
Rule-Based Representation & Reasoning
Semantic Web Policies
Reactive Policies
Conclusions/Summary
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 44
Semantic Web PoliciesWhat is a policy? Definitions
A statement defining the behaviour of an entity
An enforceable, well-specified constraint on the performance of a machine-executable action by a subject in a given situation
A deliberate plan of action to guide decisions and achieve rational outcome(s).
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 45
Semantic Web PoliciesA broader notion of policy
The term policy covers: Security/Privacy policies, Trust management
Business rules
Quality of Service directives
Service-level agreements
Communication and conversation policies and more...
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 46
Semantic Web PoliciesAn e-learning scenario (I)
Exploiting agents to support collaborative learning in an on-line learning community:
They offer means to handle this complex setting as we will learn from the following four scenarios
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 47
Semantic Web PoliciesAn e-learning scenario (II)
“Only my tutor is able to access myhomework. My fellow students are able to access my lecture notes but not my homework.”
Access control
Security
Trust management
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 48
Semantic Web PoliciesAn e-learning scenario (III)
“I want to be reminded two days before my homework is due.”
“I want to get an SMS if my tutor extends a homework’s deadline.”
Reactive Agents• Events (e.g., deadline
extension) trigger agent decisions
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 49
Semantic Web PoliciesAn e-learning scenario (IV)
“While using my e-learning tool I only want to receive chat messages from my fellow students and my tutor. Others get an automatic reply ‘Please contact me later, I am busy’.”
Communication Control
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 50
Semantic Web PoliciesAn e-learning scenario (V)
“In order to purchase learning material I use my Credit Card only with parties providing the ‘Online Security Certificate’.”
Agent NegotiationsPrivacy
Step 4
Step 1
Step 3
Step 2
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 51
Semantic Web PoliciesAn e-learning scenario: Using policies
• the whole system becomes more flexible• for different behavior change the policy (not the whole
software)• communication in the community gets more
personalized• “My fellow students should not disturb
me when I am at work.”• automatically generated explanations
• “You cannot send me a chat message because …”
• “Your tutoring agent alerts because …”• “You cannot access your fellow’s
homework because …”• policies are reactive
• “As soon as I idle for two days, send me …”• “If a deadline is extended then …”
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 52
Semantic Web PoliciesNaturally expressed as rules
If customers are younger than 26 give a 20% discount on international tickets
Up to 15% of network bandwidth can reserved if payment is done with an accepted credit card
Customers can rent a car if they are 18 or older, and exhibit a driving license and a valid credit card
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 53
Semantic Web PoliciesBenefits
Explicit license for autonomous behaviourReusabilityEfficiencyExtensibilityContext-sensitivityVerifiabilitySupport for simple as well as sophisticated
agentsProtection from poorly-designed, buggy or
malicious agentsReasoning about agent behaviour
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 54
Semantic Web PoliciesRequirements
Many policies, one framework Integration with external sourcesPolicies as active objects
Executing actionsNegotiationsUser awareness and controlCooperative enforcement
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 55
Semantic Web PoliciesMany policies, one framework
It is appealing to integrate all policies in one framework
One common infrastructure for interoperability and decision
making
Where policies can be harmonized & coordinated
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 56
Exercise 1Revisited (II)
Were your policies requiring extra knowledge
Who are your colleagues and your boss
Who works in your project
What a valid credit card is
Distance between XYZ and Innsbruck is …, Innsbruck is in Austria, my institution does not allow me to take a plane if …, allowed max price for a flight to Innsbruck would be …
referencing to properties of requesters?
Sources of this information?
All in our knowledge base?
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 57
Semantic Web PoliciesIntegration with external systems
Policies are not islands
Decisions need data, information, and knowledge
Each organization has its own
Already available through legacy software and data
A realistic solution must interoperate with them
Third parties
Credit card sites for validity checking
External databases Variety of web resources
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 58
Semantic Web PoliciesPolicies are not only passive objects
Policies may specify Exchange of signed information (e.g., digital credentials) Event logging
Failed transactions must be logged Log downloads of new articles for one week
Communications and notifications Notify the administrator about repeated login failures
Workflow triggering such as (partly) manual registration procedures
i.e. Policies may specify actions To be interleaved with the decision process
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 59
Semantic Web PoliciesNegotiations
Step 1: Alice requests a service from Bob
Step 5: Alice discloses her VISA card credential
Step 4: Bob discloses his BBB credential
Step 6: Bob grants access to the serviceService
BobAlice
Step 2: Bob discloses his policy for the service
Step 3: Alice discloses her policy for VISA
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 60
Exercise 1Revisited (III)
Suppose
Your policy is given to you by your employer
You have to explain your policy
You submit a paper and you get “Rejected”
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 61
Semantic Web PoliciesUser awareness and control
Explain policies and system decisions Make rules & reasoning intelligible to the common
user
Encourage people to personalize their policies Make it easy for users to write their own rules
Use natural language?
“Academic users can download the files in folder historical_data whenever their creation date precedes 1942”
Suitably restricted to avoid ambiguities
Fortunately, users spontaneously formulate rules
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 62
Semantic Web PoliciesCooperative Policy Enforcement
Crucial for the success of a service
Never say (only) “no”!
Encourage first-time users
Who don't know how to use your service
Explain policy decisions
Especially failures
Advanced queries: Why not
Advanced queries: How-to, What-if
You can’t open this door, but
you can ask Alice for permission
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 63
Semantic Web PoliciesSome solutions already available
Features available out of the box:Expressive policy languages and frameworks Integrated relational databases, RDF stores,
file systems requests, time and location-aware packages, etc.
Execution of actions such as logging facilities, exchange of credentials, etc.
Policy driven negotiations and preferencesAutomatically generated explanations
Demo at http://policy.L3S.uni-hannover.de/
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 64
OutlineReactive Policies
Whythe Semantic Web?
Introduction
Last Year Lecture
Rule-Based Representation & Reasoning
Semantic Web Policies
Reactive Policies
Conclusions/Summary
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 65
Reactive PoliciesEvent-Condition-Action (ECA) Policies
provide a more flexible notion of policies so far, policies were not able to react,
i.e., to handle events so far, actions where only included as internal or
provisional actions not as a re-action usually of the form
ON eventIF conditionDO action
ON receiving new call IF user not availableDO automatic reply
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 66
Reactive PoliciesEvents
trigger the execution of a rule can be simple events:
e.g., “ON receiving new call” or more complex
ON receiving new calland at the same time another call comes inand there were no calls in the last 10 minutes
to define complex events we need an event algebra
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 67
Reactive PoliciesEvent algebra
Assume events happen at a certain point of time The algebra allows us to combine events to create more
complex ones Example operators:
Both E1 and E2 happens at the same time E1 happened before E2 m events out of n happened in an arbitrary order E1 and E2 occurred and E2 did not occur …
the complexity of the event algebra used depends on the purpose of the ECA-based system
events have to be stored in a history in order to check against complex combination of events
algorithms for the detection and tracing of complex events are non trivial
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 68
Reactive PoliciesConditions
• handled like the policies we had so far:• they may include external actions to prove the
conditionsuch as a database or web service querye.g., “… if the there is snow in Innsbruck …
”• they may include negotiations to prove the
condition such as “…if Credit Card is valid …”
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 69
Reactive PoliciesActions
• could be single actions• could also be combinations of actions
Sequential execution Do Action1 and then Action2 and then
Action3 Parallel execution
Do Action1 and Action2 at the same time More complex combinations possible
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 70
Reactive PoliciesDo you use them?
Do you think this is nothing you need to know about?
Do you think you have never used this?
Do you think this is too complicated for any user to use?
Does this sound familiar to you?
ON new e-mail arrivalIF subject contains “[SPAM]”DO move e-mail to folder “filtered_spam”
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 71
Reactive PoliciesMany other applications
• DB triggers: incremental maintenance of data (databases, XML, RDF, etc.)
• cleansing of input data streams• automatic repairs in case of constraint violation• broadcasting of changes in documents to subscribers• maintaining statistics about website usage• Active databases (update correlated fields in case
others are updated)• network management• business processes (specification and
implementation)• And many more
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 72
Reactive PoliciesA communication example
Problem: The behavior of a messenger is not well adjustable:
Most of you probably know this:
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 73
Reactive PoliciesProblem
• arbitrary people bother you with chat messages• they may even call you• for some of them you want to offer an answering
machine• some you just want to block • people send you files – how could you trust them?• the messenger allows other calls while you are
currently answering a call• although your messenger stores the
birthdays of your friends you forget about them because it does not remind you.
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 74
Reactive PoliciesA possible solution with ECA-policies (I)
Why not use ECA-policies to let your agent solve the problem for you?
ON new receiving callIF caller is a friend of mine
ANDthere is no other currently ongoing call
DO accept call AND put it on the speakers
ON new receiving fileIF sender is a friend of mine
ORsender provides a certificate AND certificate is valid
DO accept file AND store it on folder “received_files”
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 75
Reactive PoliciesA possible solution with ECA-policies (II)
Even an automatic birthday reminder
ON new day (timer raised once per day)
IF there is a person in the winter school list
AND
it is his/her birthday today
DO send a chat message with text “Happy Birthday”
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 76
Reactive PoliciesExercise 3: ECA Policies
See given exercise sheet
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 77
Reactive PoliciesExercise 3: Solution
Actions executed
Pop up window with a reminder about the exam registration
First call to my skype client Second call to my wife’s phone
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 78
OutlineConclusions/Summary
Whythe Semantic Web?
Introduction
Last Year Lecture
Rule-Based Representation & Reasoning
Semantic Web Policies
Reactive Policies
Conclusions/Summary
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 79
ConclusionsSummary (I)
Hopefully this tutorial helped you to get a brief idea about
reasons that motivated Semantic Web Research a basic understanding of rule-based representation a basic introduction to reasoning techniques a basic understanding of requirements of current
distributed systems a motivation for the use of policies a basic introduction to rule-based policies and their
applications a basic introduction to reactive policies
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 80
ConclusionsSummary (II)
Everyday systems/agents take over new tasks we would otherwise perform ourselves
They can do some/many of them faster and better than us
But they are not “intelligent” as we are
We need to tell them what to do/how to behaveRule-based Policies + reasoning help you to do that Dynamically and allowing evolution Flexibly With well defined semantics and interoperability At low cost
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 81
ConclusionsSummary (III)
But
That brings in many new issues like Required expressiveness for an application
scenario Usability problems User Awareness Verification/validation of policies …
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 82
ConclusionsFinal message
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 83
References
• RDF Primerhttp://www.w3.org/TR/rdf-primer/
• Antoniou et al., Rule-based policy specification. Secure Data Management in Decentralized Systems. Springer, 2007.http://www.l3s.de/~olmedilla/pub/2007/2007_bookDDMS_rule_policies.pdf
• Bonatti, Olmedilla. Rule-based policy representation and reasoning for the semantic web. In Reasoning Web, Third International Summer School 2007. Springer.http://www.l3s.de/~olmedilla/pub/2007/2007_ReasoningWeb-policies.pdf
• Bradshaw et al., Making Agents Acceptable to people, Intelligent technologies for information analysis: Advances in agents, data mining and statistical learning. Springerhttp://www.ihmc.us/research/projects/KAoS/biit-jeff.pdf
• De Coi et al., Exploiting policies in an open infrastructure for lifelong learning. In EC-TEL, Crete, Greece, Sep 2007. Springer. http://www.l3s.de/~olmedilla/pub/2007/2007_ec-tel_policies.pdf
Daniel Olmedilla Feb. 21st, 2008TENCompetence WS 84
Questions?
[email protected] – http://www.L3S.de/~olmedilla/
Thanks!