Presentation is loading. Please wait.

Presentation is loading. Please wait.

Authors: Magesh Jayapandian and H.V. Jagadish Chris Truszkowski.

Similar presentations


Presentation on theme: "Authors: Magesh Jayapandian and H.V. Jagadish Chris Truszkowski."— Presentation transcript:

1 Authors: Magesh Jayapandian and H.V. Jagadish Chris Truszkowski

2 Introduction Forms, forms, forms Form Generation Class and Analysis Query Generation Evaluation

3 Introduction class, database form: Database form, class. Introductions made Database:Query Form relationship Good form time consuming Query->Form translation not obvious Query/schema complexity ^ -> Form generation harder Tools exist, but do not shoulder entire burden

4 Forms: (N) a definition A visual representation of a query operation. Meaningful layout crucial to understanding Form elements: Constraint Result Aggregate Ordering Disjunction Join

5

6 Generation after generation… Query Analysis Selection Projection Sort Aggregate Join Disjunction Structure Query vs. Schema grouping

7 Class analysis time Similarity analysis Shared elements Jaccard distance Clustering Classes of similar queries Complexity

8 Query generation Reverse reverse … Simple Queries No Join Single Group Complex Queries Binding variable Algorithm GenerateQuery Input: A filled form F Output: An XQuery expression X foreach join-element j ∈ T, the relationship tree of F do Create a new binding variable v1 for the entity referenced by the left-hand side of the join condition (if it does not already exist); Create a binding variable v2 for the entity referenced by the right-hand side of the join condition (if it does not already exist); Assign v1, v2 to the group containing j; if j denotes a nested relationship then Construct a new query block b and record the current query block as its parent; Add b to B, the set of query blocks; if no join-element found then Create a single binding variable v and assign it to the root group; foreach form-group g ∈ T do Partition the form-elements in g between the two binding variables by schematic similarity; foreach binding variable v do Assign v to the lowest common ancestor of schema entities (referenced by elements) that are assigned to it; foreach query block b ∈ B do Assign a unique variable name to b and denote its associated schematic entity as its scope; Create a for clause using the variable name and scope; Create a predicate for each constraint-specification or join-specification element and add it to the where clause; Create a projection for each result-display element and add it to the return clause; Create an orderby attribute for each result-ordering element and add it to the orderby clause; foreach query block b ∈ B do Construct a let-clause that connects b to its parent block; Construct the XQuery expression X recursively using a DFS traversal of the query blocks;

9 Evaluation Size of form set Complexity of forms Expresivity Complexity vs Expresivity

10 Questions? Preguntas? Fragen?


Download ppt "Authors: Magesh Jayapandian and H.V. Jagadish Chris Truszkowski."

Similar presentations


Ads by Google