Transcript Lecture 9
Building Trustworthy
Semantic Webs
Lecture #9: Logic and Inference Rules
Dr. Bhavani Thuraisingham
September 18, 2006
4/12/2016 12:23
9-2
Objective of the Unit
0 This unit will provide an overview of logic and inference rules
component of the semantic web and then discuss some security
issues
4/12/2016 12:23
9-3
Outline of the Unit
0 What are logic and inference rules
0 Why do we need rules?
0 Example rules
0 Logic programs
0 Monotonic and Nonmonotoic rules
0 Rule Markup
0 Example Rule Markup in XML
0 Policy Specification
0 Relationship to the Inference and Privacy problems
0 Summary and Directions
4/12/2016 12:23
9-4
Logic and Inference
0 First order predicate logic
0 High level language to express knowledge
0 Well understood semantics
0 Logical consequence - inference
0 Proof systems exist
0 Sound and complete
0 OWL is based on a subset of logic – descriptive logic
4/12/2016 12:23
9-5
Why Rules?
0 RDF is built on XML and OWL is built on RDF
0 We can express subclass relationships in RDF; additional
relationships can be expressed in OWL
0 However reasoning power is still limited in OWL
0 Therefore the need for rules and subsequently a markup language
for rules so that machines can understand
4/12/2016 12:23
9-6
Example Rules
0 Studies(X,Y), Lives(X,Z), Loc(Y,U), Loc(Z,U) HomeStudent(X)
0 i.e. if John Studies at UTDallas and John is lives on Campbell Road
and the location of Campbell Road and UTDallas are Richardson
then John is a Home student
0 Note that
Person (X) Man(X) or Woman(X) is not a rule in predicate logic
That is if X is a person then X is either a man of a woman. This can be
expressed in OWL
However we can have a rule of the form
Person(X) and Not Man(X) Woman(X)
4/12/2016 12:23
9-7
Monotonic Rules
0 Mother(X,Y)
0 Mother(X,Y) Parent(X,Y)
If Mary is the mother of John, then Mary is the parent of John
Syntax: Facts and Rules
Rule is of the form:
B1, B2, ---- Bn A
That is, if B1, B2, ---Bn hold then A holds
4/12/2016 12:23
9-8
Logic Programming
0 Deductive logic programming is in general based on deduction
- i.e., Deduce data from existing data and rules
- e.g., Father of a father is a grandfather, John is the father of
Peter and Peter is the father of James and therefore John is the
grandfather of James
0 Inductive logic programming deduces rules from the data
- e.g., John is the father of Peter, Peter is the father of James,
John is the grandfather of James, James is the father of Robert,
Peter is the grandfather of Robert
- From the above data, deduce that the father of a father is a
grandfather
0 Popular in Europe and Japan
4/12/2016 12:23
9-9
Nonmonotonic Rules
0 If we have X and NOT X, we do not treat them as inconsistent as in
the case of monotonic reasoning.
0 For example, consider the example of an apartment that is
acceptable to John. That is, in general John is prepared to rent an
apartment unless the apartment ahs less than two bedrooms, is
does not allow pets etc. This can be expressed as follows:
0 Acceptable(X)
0 Bedroom(X,Y), Y<2 NOT Acceptable(X)
0 NOT Pets(X) NOT Acceptable(X)
0 Note that there could be a contradiction. But with nonmotonic
reasoning this is allowed.
4/12/2016 12:23
9-10
Rule Markup
0 The various components of logic are expressed in the Rule Markup
Language – RuleML
0 Both monotonic and nonmonotnic rules can be represented
0 Example representation of Fact P(a) - a is a parent
<fact>
<atom>
<predicate>p</predicate>
<term>
<const>a</const>
<term>
<atom>
</fact>
4/12/2016 12:23
9-11
Policies in RuleML
<fact>
<atom>
<predicate>p</predicate>
<term>
<const>a</const>
<term>
<atom>
Level = L
</fact>
4/12/2016 12:23
9-12
Example Policies
0 Temporal Access Control
- After 1/1/05, only doctors have access to medical records
0 Role-based Access Control
- Manager has access to salary information
- Project leader has access to project budgets, but he does not
have access to salary information
- What happens is the manager is also the project leader?
0 Positive and Negative Authorizations
- John has write access to EMP
- John does not have read access to DEPT
- John does not have write access to Salary attribute in EMP
- How are conflicts resolved?
4/12/2016 12:23
9-13
Privacy Policies
0 Privacy constraints processing
- Simple Constraint: an attribute of a document is private
- Content-based constraint: If document contains information
about X, then it is private
- Association-based Constraint: Two or more documents taken
together is private; individually each document is public
- Release constraint: After X is released Y becomes private
0 Augment a database system with a privacy controller for constraint
processing
4/12/2016 12:23
9-14
System Architecture for Access Control
Pull/Query
User
Push/result
RuleMLAccess
Policy
base
RuleMFAdmin
Credential
base
RuleML Data
Documents
Admin
Tools
4/12/2016 12:23
9-15
RuleML Data Management
0 Data is presented as RuleML documents
0 Query language – Logic programming based?
0 Policies in RuleML
0 Reasoning engine
- Use the one developed for RuleML
4/12/2016 12:23
9-16
Inference/Privacy Control
Technology
By UTD
Interface to the Semantic Web
Inference Engine/
Rules Processor
Policies
Ontologies
Rules
Rule-based Data
Management
Rules Data
4/12/2016 12:23
9-17
Summary and Directions
0 Rules have expressive and reasoning power
0 Handles some of the inadequacies of OWL
0 Both monotonic and nonromantic reasoning
0 Logic programming based
0 Policies specified in RulesML
0 Need to build an integrated system