containment of conjunctive
play

Containment of Conjunctive Meta-Queries Andrea Cal` , Object - PowerPoint PPT Presentation

Containment of Conjunctive Object Containment of Conjunctive Meta-Queries Andrea Cal` , Object Meta-Queries Michael Kifer Introduction Preliminaries Andrea Cal` Michael Kifer The encoding Deciding Faculty of Computer Science


  1. Containment of Conjunctive Object Containment of Conjunctive Meta-Queries Andrea Cal` ı, Object Meta-Queries Michael Kifer Introduction Preliminaries Andrea Cal` ı Michael Kifer The encoding Deciding Faculty of Computer Science containment Free University of Bolzano by chasing Complexity State University of New York Conclusions at Stony Brook XXXII Conference on Very Large Data Bases VLDB 2006 Seoul, Korea, 15 th September 2006

  2. F-Logic (Frame-Logic) Containment F-Logic of Conjunctive Object Meta-Queries object-oriented formalism [Kifer & Lausen, JACM 1985] Andrea Cal` ı, Michael Kifer raised interest in the academia and commercially ⋆ building ontologies Introduction ⋆ reasoning in the Semantic Web Preliminaries The encoding meta-querying capability Deciding we will use a subset of F-Logic queries called F-Logic-Lite containment by chasing Complexity Restrictions in F-Logic Lite Conclusions no negation no default inheritance limited form of cardinality constraints

  3. Query containment Well known problem in: Containment of Conjunctive 1 query optimisation Object Meta-Queries 2 schema integration Andrea Cal` ı, 3 object classification (in DLs) Michael Kifer 4 service discovery Introduction 5 . . . Preliminaries amounts to check whether the result of a query is always The encoding contained in the result of another, for all databases Deciding containment Query containment under constraints by chasing Complexity QC considering only databases that satisfy certain Conclusions constraints relevant cases: 1 functional and inclusion dependencies 2 extended ER schemata 3 Description Logic knowledge bases

  4. Our contribution Containment of Conjunctive Object Meta-Queries Andrea Cal` ı, Michael Kifer 1 we give a relational encoding of F-Logic Lite Introduction axioms in first-order rules Preliminaries 2 we consider containment of conjunctive meta-queries over The encoding relations encoding F-Logic Lite under the above rules Deciding containment 3 we provide a technique to decide query containment in by chasing such a case Complexity Conclusions 4 we prove that checking containment is in NP

  5. Outline Containment of Conjunctive Object Meta-Queries 1 Introduction Andrea Cal` ı, Michael Kifer 2 Preliminaries Introduction Preliminaries 3 The encoding The encoding Deciding containment 4 Deciding containment by chasing by chasing Complexity Conclusions 5 Complexity 6 Conclusions

  6. F-Logic formalism by examples Containment of Conjunctive Object Classes, subclasses and members Meta-Queries Andrea Cal` ı, john:student states that object john is a member of Michael Kifer class student ; Introduction freshman::student and student::person state that Preliminaries class freshman is a subclass of the class student and The encoding student is a subclass of person Deciding containment by chasing Complexity The above statements imply, for instance, that the following Conclusions F-Logic formulae are true: 1 john:person ( john is a student) 2 freshman::person (class freshman is a subclass of person )

  7. F-Logic formalism by examples (contd.) Containment of Conjunctive Object Meta-Queries Andrea Cal` ı, Michael Kifer Attributes Introduction Preliminaries john[age->33] means that object john has an attribute, The encoding age , whose value is 33 ; Deciding containment by chasing an attribute may have more than one value Complexity Conclusions

  8. F-Logic formalism by examples (contd.) Containment of Conjunctive Object Meta-Queries Andrea Cal` ı, Signature statements: type constraints Michael Kifer Introduction person[age*=>number] (type constraint) says that the Preliminaries attribute age of class student has the type number The encoding this type is inherited by subclasses and class instances of Deciding containment person by chasing Complexity this acts as a constraint on the statements of the form Conclusions john[age->33]

  9. F-Logic formalism by examples (contd.) Containment of Conjunctive Object Meta-Queries Andrea Cal` ı, Michael Kifer Signature statements: cardinality constraints Introduction Preliminaries person[age { 0:1 } *=> number] says that the attribute The encoding age has at most one value Deciding containment person[name { 1:* } *=> string] says that the name by chasing attribute is mandatory in class person Complexity Conclusions

  10. A F-Logic feature Containment of Conjunctive Object Meta-Queries Andrea Cal` ı, Michael Kifer Classes are also objects Introduction statements like student:class are correct Preliminaries The encoding in this case students occurs as an object instead of a Deciding class containment by chasing it does not follow from this and the previous statements Complexity that john:class , freshman:class , or student::class Conclusions

  11. Meta-queries examples Containment of Conjunctive Object Meta-Queries Andrea Cal` ı, Michael Kifer Query ?- X::person. could have answers X = employee and X = student Introduction Preliminaries Query ?- student[Att*=>string]. could have answers The encoding Attr = name and Attr = major Deciding Query ?- student[Att*=>string], john[Att->Val]. containment by chasing asks for attributes of class student of type string that Complexity have a defined value for object john ; Conclusions john does not need to be a member of student

  12. Meta-query Containment Containment of Conjunctive Object Meta-Queries Andrea Cal` ı, Michael Kifer Consider the meta-queries: Introduction q1(A,B) :- T1[A*=>T2], T2::T3, T3[B*=> ]. Preliminaries q2(A,B) :- T1[A*=>T2], T2[B*=> ]. The encoding q1 asks for pairs of attributes A , B s.t. the range of A is Deciding containment contained in the domain of B by chasing Complexity it is easy to see that q1 is contained in q2 Conclusions

  13. Low-level encoding of F-Logic Lite Containment member( O , C ): object O is a member of class C . of Conjunctive Object This is the encoding for O : C . Meta-Queries sub( C 1 , C 2 ): class C 1 is a subclass of class C 1 . Andrea Cal` ı, Michael Kifer This encodes the statement C 1 :: C 2 . Introduction data( O , A , V ): attribute A has value V on object O . This Preliminaries is the encoding for O [ A -> V ]. The encoding type( O , A , T ): attribute A has type T for object O (recall Deciding that in F-logic classes are also objects). This encodes the containment by chasing statements of the form O [ A *=> T ]. Complexity mandatory( A , O ): attribute A is mandatory for object Conclusions (class) O , i.e., it must have at least one value for O . This is an encoding of statements of the form O [ A { 1:* } *=> ]. funct( A , O ): A is a functional attribute for the object (class) O , i.e., it can have at most one value for O . This statement encodes O [ A { 0:1 } *=> ].

  14. Axioms Containment of Conjunctive Type correctness Object Meta-Queries member( V , T ) :- type( O , A , T ) , data( O , A , V ) Andrea Cal` ı, Michael Kifer Introduction Subclass transitivity Preliminaries sub( C 1 , C 2 ) :- sub( C 1 , C 3 ) , sub( C 3 , C 2 ) The encoding Deciding containment Membership property by chasing Complexity member( O , C 1 ) :- member( O , C ) , sub( C , C 1 ) Conclusions Functional attribute property V = W :- data( O , A , V ) , data( O , A , W ) , funct( A , O ). Notice that the equality predicate is used in the head.

  15. Axioms (contd.) Containment of Conjunctive Mandatory attributes definition Object Meta-Queries ∀ O , A ∃ V data( O , A , V ) :- mandatory( A , O ) Andrea Cal` ı, Notice that this is not a Datalog rule: there is an existentially Michael Kifer quantified variable in the head Introduction Preliminaries Inheritance of types from classes to members The encoding Deciding type( O , A , T ) :- member( O , C ) , type( C , A , T ) containment by chasing Complexity Inheritance of types from classes to subclasses Conclusions sub( C , C 1 ) , type( C 1 , A , T ) Supertyping type( C , A , T ) :- type( C , A , T 1 ) , sub( T 1 , T )

  16. Axioms (contd.) Containment of Conjunctive Inheritance of mandatory attributes to subclasses Object Meta-Queries mandatory( A , C ) :- sub( C , C 1 ) , mandatory( A , C 1 ) Andrea Cal` ı, Michael Kifer Introduction Inheritance of mandatory attributes from classes to their Preliminaries members The encoding mandatory( A , O ) :- member( O , C ) , mandatory( A , C ) Deciding containment by chasing Inheritance of functional property to subclasses Complexity Conclusions funct( A , C ) :- sub( C , C 1 ) , funct( A , C 1 ) Inheritance of functional property to members funct( A , O ) :- member( O , C ) , funct( A , C )

  17. Meta-query containment Containment of Conjunctive Object Meta-Queries Andrea Cal` ı, Michael Kifer We denote the set of rules by Σ FL Introduction Meta-queries are conjunctive queries over the predicates Preliminaries encoding our formalism The encoding Given two (meta)-queries q 1 and q 2 , we say that q 1 is Deciding contained in q 2 with respect to Σ FL , denoted q 1 ⊆ Σ FL q 2 , containment by chasing if for every database B that satisfies Σ FL we have Complexity q 1 ( B ) ⊆ q 2 ( B ) Conclusions q ( B ) denotes the result of query q on B

Recommend


More recommend