Efficient design of interpretation of REL license using Expert Systems Chun Hui Suen, Munich University of Technology, Institute for Data Processing.

Slides:



Advertisements
Similar presentations
DAML Queries/Life Cycle SRI International. Parts of Ontologies (used in the examples to follow) Assumptions Researcher String lastName firstName Publication-ref.
Advertisements

1 Authorization XACML – a language for expressing policies and rules.
CS 484 – Artificial Intelligence1 Announcements Choose Research Topic by today Project 1 is due Thursday, October 11 Midterm is Thursday, October 18 Book.
B. Ross Cosc 4f79 1 Frames Knowledge bases can be enhanced by using principles from frame knowledge representation (similar to object orientation) This.
A Content Protection Scheme Using MPEG-21 Concepts and Tools Chia-Hsien Lu Feng-Cheng Chang Hsueh-Ming Hang Dept. Electronics Engineering National Chiao.
Case Tools Trisha Cummings. Our Definition of CASE  CASE is the use of computer-based support in the software development process.  A CASE tool is a.
Knowledge Engineering.  Process of acquiring knowledge from experts and building knowledge base  Narrow perspective  Knowledge acquisition, representation,
Using the Semantic Web to Construct an Ontology- Based Repository for Software Patterns Scott Henninger Computer Science and Engineering University of.
Andrew Courter Texas Tech University CS5331.  PKS Why PKS? STRIPS The Databases Inference Algorithm Extended Features  PKS Examples  Conclusion and.
Chapter 12: Expert Systems Design Examples
Help and Documentation zUser support issues ydifferent types of support at different times yimplementation and presentation both important yall need careful.
1 Draft of a Matchmaking Service Chuang liu. 2 Matchmaking Service Matchmaking Service is a service to help service providers to advertising their service.
COMP 6703 eScience Project Semantic Web for Museums Student : Lei Junran Client/Technical Supervisor : Tom Worthington Academic Supervisor : Peter Strazdins.
1 Chapter 9 Rules and Expert Systems. 2 Chapter 9 Contents (1) l Rules for Knowledge Representation l Rule Based Production Systems l Forward Chaining.
An Intelligent Broker Approach to Semantics-based Service Composition Yufeng Zhang National Lab. for Parallel and Distributed Processing Department of.
Production Rules Rule-Based Systems. 2 Production Rules Specify what you should do or what you could conclude in different situations. Specify what you.
Case-based Reasoning System (CBR)
EXPERT SYSTEMS Part I.
SYSTEM TESTING AND DEPLOYMENT
1 The Pépite project Élisabeth Delozanne, Paris Universitas, UPMC D. Prévit, B. Grugeon, F. Chenevotot Automatic Multi-criteria Assessment of Open-Ended.
Building Knowledge-Driven DSS and Mining Data
An expert system is a package that holds a body of knowledge and a set of rules on a subject that has been gained from human experts. An expert system.
Expert Systems Expert Systems Chris LaJoie, Chris Panton, and Kurt DeVaney.
Some Thoughts to Consider 6 What is the difference between Artificial Intelligence and Computer Science? What is the difference between Artificial Intelligence.
Rajashree Deka Tetherless World Constellation Rensselaer Polytechnic Institute.
Artificial Intelligence Lecture No. 15 Dr. Asad Ali Safi ​ Assistant Professor, Department of Computer Science, COMSATS Institute of Information Technology.
More Software Architectures. Blackboard Architecture In a blackboard system, a set of problem solving modules (typically called knowledge sources) share.
Overview of the Course Copyright 2003, Keith D. Cooper, Ken Kennedy & Linda Torczon, all rights reserved. Students enrolled in Comp 412 at Rice University.
10/6/2015 1Intelligent Systems and Soft Computing Lecture 0 What is Soft Computing.
Database Management 9. course. Execution of queries.
Rights Expression Languages in Digital Rights Management Xin Wang ContentGuard, Inc. October 19, 2006.
Text linking in the humanities: citing canonical works using OpenURL CNI Spring 2009 Task Force Meeting Eric Rebillard Departments of Classics and History.
What Science Is and Is Not What is the goal of science?
110/19/2015CS360 AI & Robotics AI Application Areas  Neural Networks and Genetic Algorithms  These model the structure of neurons in the brain  Humans.
Chapter 9: Rules and Expert Systems Lora Streeter.
Configuration Systems - CSE Sudhan Kanitkar.
ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM] Professor Janis Grundspenkis Riga Technical University Faculty of Computer Science and Information.
Page 1 Alliver™ Page 2 Scenario Users Contents Properties Contexts Tags Users Context Listener Set of contents Service Reasoner GPS Navigator.
Data Mining – Intro. Course Overview Spatial Databases Temporal and Spatio-Temporal Databases Multimedia Databases Data Mining.
The Volcano Optimizer Generator Extensibility and Efficient Search.
Soft Computing Lecture 19 Part 2 Hybrid Intelligent Systems.
Windows Role-Based Access Control Longhorn Update
XML Grammar and Parser for WSOL Kruti Patel, Vladimir Tosic, Bernard Pagurek Network Management & Artificial Intelligence Lab Department of Systems & Computer.
1 Technology in Action Chapter 11 Behind the Scenes: Databases and Information Systems Copyright © 2010 Pearson Education, Inc. Publishing as Prentice.
Expert Systems. L EARNING O BJECTIVES : By the end of this topic you should be able to: explain what is meant by an expert system describe the components.
ARTIFICIAL INTELLIGENCE [INTELLIGENT AGENTS PARADIGM] Professor Janis Grundspenkis Riga Technical University Faculty of Computer Science and Information.
XML Access Control Koukis Dimitris Padeleris Pashalis.
Of 33 lecture 1: introduction. of 33 the semantic web vision today’s web (1) web content – for human consumption (no structural information) people search.
KNOWLEDGE BASED SYSTEMS
How Google and Microsoft taught search to “understand” the Web Austin Granger Chris Hesemann.
Business Analysis Consulting: STS Realty By: Our group.
ITEC 1010 Information and Organizations Chapter V Expert Systems.
1 Lecture 4 The Fuzzy Controller design. 2 By a fuzzy logic controller (FLC) we mean a control law that is described by a knowledge-based system consisting.
1 Integration of data sources Patrick Lambrix Department of Computer and Information Science Linköpings universitet.
Enable Semantic Interoperability for Decision Support and Risk Management Presented by Dr. David Li Key Contributors: Dr. Ruixin Yang and Dr. John Qu.
Some Thoughts to Consider 5 Take a look at some of the sophisticated toys being offered in stores, in catalogs, or in Sunday newspaper ads. Which ones.
Model Transformation By Demonstration Yu Sun, Jules White, Jeff Gray This work funded in part by NSF CAREER award CCF CIS Dept. – University of.
The article written by Boyarshinova Vera Scientific adviser: Eltyshev Denis THE USE OF NEURO-FUZZY MODELS FOR INTEGRATED ASSESSMENT OF THE CONDITIONS OF.
Chapter 1 Overview of Databases and Transaction Processing.
16 April 2011 Alan, Edison, etc, Saturday.. Knowledge, Planning and Robotics 1.Knowledge 2.Types of knowledge 3.Representation of knowledge 4.Planning.
Mechanisms for Requirements Driven Component Selection and Design Automation 최경석.
Certifying and Synthesizing Membership Equational Proofs Patrick Lincoln (SRI) joint work with Steven Eker (SRI), Jose Meseguer (Urbana) and Grigore Rosu.
TAIEX-REGIO Workshop on Applying the Partnership Principle in the European Structural and Investment Funds Bratislava, 20/05/2016 Involvement of Partners.
Visualization of Adverse effect pathways
Copyright Pearson Prentice Hall
Knowledge Representation
XML Data DTDs, IDs & IDREFs.
Intelligent Systems and
Chapter 11 user support.
Query Optimization.
Presentation transcript:

Efficient design of interpretation of REL license using Expert Systems Chun Hui Suen, Munich University of Technology, Institute for Data Processing

Contents Problems Problems Current solution Current solution Proposed solution Proposed solution Offline Demo Offline Demo Comparison Comparison Conclusion Conclusion 1

Rights Expression Language DRM System 2 Consumer Content Provider

Rights Expression Language Buy Rent Promotion Share Gift 2 DRM System Consumer Content Provider

Rights Expression Language Direct payment Payment information Try before buying... 2 DRM System Consumer Content Provider

Rights Expression Language Expressive REL needed for user-friendly DRM Complicated REL license interpreter Expressive REL needed for user-friendly DRM Complicated REL license interpreter 2

Problem License Grant Condition Grant Condition License Root Grant … Expressive Rights description – MPEG-21 REL Expressive Rights description – MPEG-21 REL Tree-based XML Tree-based XML Complicated dependancies Complicated dependancies 3

Current solution Inperative programming Inperative programming Object-orientated mapping Object-orientated mapping License Grant Condition Grant Condition License Root Grant … 4

Current solution Inperative programming Inperative programming Object-orientated mapping Object-orientated mapping License Grant Condition Grant Condition License Root Grant … 4 License Object Grant Object Condition Object Grant Object Condition Object License Object Root Grant Object …

Proposed Solution Knowledge based parsing Knowledge based parsing License Grant Condition Grant Condition License Root Grant … Knowledge database XML - Knowledge parser 5

Proposed Solution Knowledge database 6 Root grant xx xxxx License xx xxxx Grant xx xxxx Condition xx xxxx Grant xx xxxx Condition xx xxxx License xx xxxx

Intelligence Rule-based matching (Experts System) Root grant xx xxxx License xx xxxx Grant xx xxxx Condition xx xxxx Grant xx xxxx Condition xx xxxx License xx xxxx Rule patternaction Rule patternaction... Inference Engine Pattern-matching 7

Intelligence Rule-based matching (Experts System) Root grant xx xxxx License xx xxxx Grant xx xxxx Condition xx xxxx Grant xx xxxx Condition xx xxxx License xx xxxx Rule patternaction Rule patternaction... Inference Engine Add / Mod. / Delete 7

Implementation 8 What right is requested? Who can perform it? What resource to use? Under what conditions? System States counters

Implementation 9 Hypothesis is true? Grant valid? Issuer valid? Conditions fulfilled? Principal valid? Resource valid? Operation valid? Root grant License Grant Condition Root Grant Resources Right keyholder

Demo – Input License 1 <rootGrant> Company A Company A <trustedRootIssuer/></rootGrant> „Company A“ is a trusted issuer „Company A“ is a trusted issuer<rootGrant> john john <possessProperty/> Subscription Subscription </rootGrant> “John” has property “Subscription” “John” has property “Subscription” 10

Demo – Input License 2 <license><grant> john john somewhere.mp3 somewhere.mp3 <prerequisiteRight> john john <possessProperty/> Subscription Subscription </prerequisiteRight></grant> “john” allowed to “play”, only if “john” has “Subscription” property “john” allowed to “play”, only if “john” has “Subscription” property 11

Demo – Input License 3 Company A Company A </license> Issuer of license is “Company A” Issuer of license is “Company A” 13

Demo – Parsed License 1 (rootGrant g0) (rootGrant g0) (keyholder "Company A" g0) (keyholder "Company A" g0) (trustedRootIssuer g0) (trustedRootIssuer g0) (rootGrant g1) (rootGrant g1) (keyholder “john" g1) (keyholder “john" g1) (right possessProperty g1) (right possessProperty g1) (property "Subscription" g1) (property "Subscription" g1) (license l0) (license l0) (grant g2 l0) (grant g2 l0) (keyholder “john" g2) (keyholder “john" g2) (right play g2) (right play g2) (digitalresource "somewhere.mp3" g2) (digitalresource "somewhere.mp3" g2) 14

Demo – Parsed License 2 (condition-or c0 g2) (condition-or c0 g2) (condition c0 prerequisiteRight p0) (condition c0 prerequisiteRight p0) (keyholder “john" p0) (keyholder “john" p0) (right possessProperty p0) (right possessProperty p0) (property "Subscription" p0) (property "Subscription" p0) (issuer "Company A" l0) (issuer "Company A" l0) (time ) (time ) (database-count 5 c2) (database-count 5 c2) (predicate 0 “john" play "somewhere.mp3") (predicate 0 “john" play "somewhere.mp3") 15 Hypothesis & states

Demo – Interpretation 1 (authorized-grant g0 -1) (authorized-grant g1 -1) (authorized-grant g2 l0) Grant blocks recognised as authorized/trusted 15

Demo – Interpretation 1 (authorized-grant g0 -1) (authorized-grant g1 -1) (authorized-grant g2 l0) => (predicate p0 “john" possessProperty "Subscription") New hypothesis: Does john has the property Subscription 15

Demo – Interpretation 1 (authorized-grant g0 -1) (authorized-grant g1 -1) (authorized-grant g2 l0) => (predicate p0 “john" possessProperty "Subscription") (keyholder_matched p0 g1) - john (keyholder_matched p0 g1) - john (op_matched p0 g1) - possessProperty (op_matched p0 g1) - possessProperty (cond-fulfilled g1) - none (cond-fulfilled g1) - none (resource_matched p0 g1) - “Subscription” (resource_matched p0 g1) - “Subscription” Conditions for new predicate fulfilled 15

Demo – Interpretation 1 (authorized-grant g0 -1) (authorized-grant g1 -1) (authorized-grant g2 l0) => (predicate p0 “john" possessProperty "Subscription") (keyholder_matched p0 g1) (keyholder_matched p0 g1) (op_matched p0 g1) (op_matched p0 g1) (cond-fulfilled g1) (cond-fulfilled g1) (resource_matched p0 g1) (resource_matched p0 g1) (predicate-success p0) (predicate-success p0) New hypothesis fulfilled 15

Demo – Interpretation 1 (authorized-grant g0 -1) (authorized-grant g1 -1) (authorized-grant g2 l0) => (predicate p0 “john" possessProperty "Subscription") (keyholder_matched p0 g1) (keyholder_matched p0 g1) (op_matched p0 g1) (op_matched p0 g1) (cond-fulfilled g1) (cond-fulfilled g1) (resource_matched p0 g1) (resource_matched p0 g1) (predicate-success p0) (predicate-success p0) (cond-true c0 prerequisiteRight p0) (cond-satisfied c0) Recursive condtion fulfilled 15

Demo – Interpretation 2 (keyholder_matched 0 g2) - John (op_matched 0 g2) - play (resource_matched 0 g2) - somewhere.mp3 (cond-fulfilled g2) - has property Conditions of first grant block fulfilled 16

Demo – Interpretation 2 (keyholder_matched 0 g2) (op_matched 0 g2) (resource_matched 0 g2) (cond-fulfilled g2) (predicate-success 0) Final hypothesis fulfilled. 16

Comparison - Advantages Flat structure – aids in overcoming problems of complex dependancies Flat structure – aids in overcoming problems of complex dependancies OOP implementation requires global data to support recursive condition OOP implementation requires global data to support recursive condition Knowledge predicate is easily stored in database Knowledge predicate is easily stored in database Support high-volume operation Support high-volume operation “Proof” of authorization can be easily generated “Proof” of authorization can be easily generated Logging of reason for authorization Logging of reason for authorization Helps in making intelligent authorization decisions Helps in making intelligent authorization decisions 17

Comparison - Disadvantages Additional knowledge creation stage (XML – pre-processing) Additional knowledge creation stage (XML – pre-processing) Unable to support XML-related conditions in MPEG-21 REL Unable to support XML-related conditions in MPEG-21 REL 18

Future work Quantitative speed test Quantitative speed test Optimization of knowledge-based approach Optimization of knowledge-based approach Partitioning of knowledge database into clearly defined sets to reduce search range for rule matching Partitioning of knowledge database into clearly defined sets to reduce search range for rule matching Support more REL commands Support more REL commands 19

Conclusion Knowledge-based parsing is feasible Knowledge-based parsing is feasible Reduce REL parser design complexity Reduce REL parser design complexity 20

Questions