towards grouping constructs for
play

Towards Grouping Constructs for Motivation Grouping Facets - PowerPoint PPT Presentation

Introduction Towards Grouping Constructs for Motivation Grouping Facets Semistructured Data Data Model Matching Franc ois Bry, Dan Olteanu, Sebastian Schaffert Answer Semantics Summary http://www.pms.informatik.uni-muenchen.de 7.


  1. Introduction Towards Grouping Constructs for Motivation Grouping Facets Semistructured Data Data Model Matching Franc ¸ois Bry, Dan Olteanu, Sebastian Schaffert Answer Semantics Summary http://www.pms.informatik.uni-muenchen.de 7. September 2001 Abstract Markup languages for semistructured data like XML are of growing importance as means for data exchange and storage. In this paper we propose an enhancement for the semistructured data model that allows to express more semantics. A data model is pro- posed and the implications on pattern matching are investigated. • First • Prev • Next • Last • Go Back • Full Screen • Close • Quit

  2. 1. Introduction Meta-level information in semistructured databases is expressed Introduction Motivation • through the naming of elements and/or Grouping Facets • implemented in the application that processes the data Data Model Matching Answer Semantics Summary Grouping Constructs as an enhancement to the semistructured data model • allow to add generic metainformation explicitly • are applicable to data documents , schema/query documents and answers to a query • First • Prev • Next • Last • Go Back • Full Screen • Close • Quit

  3. 2. Motivation Terms Courses Introduction Comp. Sc. Mathematics Seminars Motivation 1 CS I Algebra I Grouping Facets and Data Model Analysis I Matching 2 CS II Algebra II and Answer Semantics Hardware Basics Summary 3 CS III Graph Theory Programming Seminar and or App. Analysis System Seminar 4 CS IV Stochastics or Hardware Seminar and or Advanced Numerical or Algorithms Mathematics Logics Seminar • First • Prev • Next • Last • Go Back • Full Screen • Close • Quit

  4. This is a typical XML representation of the timetable: Introduction Example Motivation 1 <course_of_studies> 2 ... Grouping Facets <term> 3 Data Model <number>4</number> 4 <computer_sciences> Matching 5 6 <course>CS IV</course> Answer Semantics 7 <course>Advanced Algorithms</course> Summary 8 </computer_sciences> <mathematics> 9 <course>Stochastic</course> 10 <course>Numerical Mathematics</course> 11 12 </mathematics> 13 <seminars> 14 <course>Programming Seminar</course> 15 <course>System Seminar</course> ... 16 </seminars> 17 18 </term> 19 </course_of_studies> • First • Prev • Next • Last • Go Back • Full Screen • Close • Quit

  5. Using Grouping Constructs could yield the following XML representation: Example 1 <course_of_studies> Introduction ... 2 <term> Motivation 3 <number>4</number> 4 Grouping Facets 5 <computer_sciences> Data Model 6 <AND> 7 <course>CS IV</course> Matching 8 <course>Advanced Algorithms</course> Answer Semantics </AND> 9 Summary </computer_sciences> 10 <mathematics> 11 12 <OR> 13 <course>Stochastic</course> 14 <course>Numerical Mathematics</course> </OR> 15 </mathematics> 16 <seminars> 17 18 <OR> 19 <course>Programming Seminar</course> 20 <course>System Seminar</course> ... 21 </OR> 22 </seminars> 23 24 </term> 25 </course_of_studies> • First • Prev • Next • Last • Go Back • Full Screen • Close • Quit

  6. 3. Grouping Facets The Grouping Constructs consist of any of the following Grouping Fa- Introduction cets : Motivation Grouping Facets • connector [data,schema]: properties “and”, “or”, “xor” Data Model • order [data,schema]: properties “ordered”, “unordered” Matching Answer Semantics • repetition [schema]: properties “allowed” and “not allowed” Summary • selection [data,schema]: property “n to m” • exclusion [schema]: for excluding certain items • First • Prev • Next • Last • Go Back • Full Screen • Close • Quit

  7. 4. Data Model 4.1. Data Trees (DTs) Introduction Motivation A tree T = ( Nodes , Edges ) is a rooted DAG, where for every node Grouping Facets n ∈ Nodes there is a unique path from the root root to n . Data Model Definition 4.1 (elementary data tree) Matching An elementary data tree DT, with set of nodes Nodes , set of edges Answer Semantics Edges and root root , is a tree represented by the tuple ( Nodes , name, Summary children, root ), where: • name : Nodes → Labels is a function mapping each node to its label • children : Nodes → Lists ( Nodes ) is a function such that if ( n, m ) ∈ Edges then m ∈ children ( n ) • First • Prev • Next • Last • Go Back • Full Screen • Close • Quit

  8. Definition 4.2 (data tree with grouping facets) Given a set G of grouping facets, a data tree with grouping facets is defined as a tuple ( Nodes ,name,children, root ,grouping), where: Introduction Motivation • ( Nodes , name, children, root ) is an elementary data tree Grouping Facets • grouping : Nodes → Power ( G ) is a function mapping each Data Model node to a set of corresponding grouping facets. Matching Answer Semantics Notation: Summary • A ( B 1 , . . . , B n ) denotes a tree with root A and the children B i in the given order • A { B 1 , . . . , B n } denotes a tree with root A and the children B i in any order • First • Prev • Next • Last • Go Back • Full Screen • Close • Quit

  9. 4.2. Semantics of Data Trees with Grouping Definition 4.3 (Interpretation of grouping facets) Let DT = ( Nodes DT , name, children, root, grouping DT ) be a data Introduction tree with grouping facets. A given node N ∈ Nodes DT with a grou- Motivation ping facet G ∈ grouping DT ( N ) and children T 1 , . . . , T n is interpreted Grouping Facets as its correspondent forest of data trees I ( N G ) with root node N and Data Model without G as defined in the following table. Matching Answer Semantics I applied recursively to all nodes from the data tree DT beginning Summary with the root node generates a forest of elementary data trees. This forest is called the interpretation of DT , written I ( DT ) . • First • Prev • Next • Last • Go Back • Full Screen • Close • Quit

  10. Example: A A A Introduction OR Motivation B C B C B C Grouping Facets XOR Data Model D E D E Matching Answer Semantics Summary A A A C C B D E • First • Prev • Next • Last • Go Back • Full Screen • Close • Quit

  11. enriched subtree N G interpreted as Introduction I ( N ()) { N() } { N ( T ′ 1 , . . . , T ′ n ) | T ′ I ( N ( T 1 , . . . , T n )) i ∈ I ( T i ) , 1 ≤ i ≤ n } Motivation I ( N {} ) I ( N ()) Grouping Facets I ( N { T 1 , . . . , T n } ) � { I ( N ( T π (1) , . . . , T π ( n ) )) | Data Model π permutation of { 1 , . . . , n }} Matching I ( N {} ) I ( N ǫ ()) Answer Semantics I ( N ǫ ( T 1 , . . . , T n )) I ( N { T 1 , . . . , T n } ) Summary I ( N AND ()) I ( N {} ) I ( N AND ( T 1 , . . . , T n )) I ( N { T 1 , . . . , T n } ) I ( N {} ) I ( N OR ()) I ( N OR ( T 1 , . . . , T n )) � { I ( N { P 1 , . . . , P k } ) | { P 1 , . . . , P k } ⊆ { T 1 , . . . , T n } , 1 ≤ k ≤ n } I ( N ord. ()) I ( N ()) I ( N ord. ( T 1 , . . . , T n )) I ( N ( T 1 , . . . , T n )) I ( N unord. ()) I ( N {} ) I ( N unord. ( T 1 , . . . , T n )) I ( N { T 1 , . . . , T n } ) • First • Prev • Next • Last • Go Back • Full Screen • Close • Quit

  12. enriched subtree N G interpreted as Introduction I ( N repeat ()) I ( N {} ) � { I ( N { T ′ 1 ◦ . . . ◦ T ′ I ( N repeat ( T 1 , . . . , T n )) n } ) | Motivation T ′ i = ( T i , . . . , T i ) , | T ′ i | = k i , 1 ≤ i ≤ n, k i ≥ Grouping Facets 0 } Data Model I ( N {} ) I ( N i to j ()) Matching I ( N i to j ( T 1 , . . . , T n )) � { I ( N { P 1 , . . . , P k } ) | Answer Semantics { P 1 , . . . , P k } ⊆ Summary { T 1 , . . . , T n } , i ≤ k ≤ j } 1 ≤ i ≤ j ≤ n I ( N AND ()) I ( N AND () ¬ ( ∅ )) I ( N AND ( T 1 , . . . , T n ) ¬ ( ∅ )) I ( N AND ( T 1 , . . . , T n )) I ( N exclude () ¬ ( M )) I ( N {}¬ ( M )) I ( N exclude ( T 1 , . . . T n )) { I ( N {}¬ ( M � ( T 1 , . . . , T n ))) } I ( N XOR () ¬ ( M )) I ( N {}¬ ( M )) � { I ( N { T i }¬ ( M � T j ) | I ( N XOR ( T 1 , . . . , T n ) ¬ ( M )) 1 ≤ i, j ≤ n, j � = i } • First • Prev • Next • Last • Go Back • Full Screen • Close • Quit

  13. 5. Matching Matching with Grouping Constructs is necessary Introduction Motivation • for answering queries and Grouping Facets • for checking the validity of a database against a schema Data Model Matching Matching for Data Trees is based on a technique called simulation. Answer Semantics Summary • First • Prev • Next • Last • Go Back • Full Screen • Close • Quit

Recommend


More recommend