Download presentation

Presentation is loading. Please wait.

Published bySylvia Stride Modified over 2 years ago

1
1 Web Data Management Path Expressions

2
2 In this lecture Path expressions Regular path expressions Evaluation techniques Resources: Data on the Web Abiteboul, Buneman, Suciu : section 4.1

3
3 Path Expressions Examples: Bib.paper Bib.book.publisher Bib.paper.author.lastname Given an OEM instance, the answer of a path expression p is a set of objects

4
4 Path Expressions Examples: DB = &o1 &o12&o24&o29 &o43 &o70&o71 &96 &243 &206 &25 “Serge” “Abiteboul” 1997 “Victor” “Vianu” 122133 paper book paper references author title year http author title publisher author title page firstname lastname firstnamelastnamefirst last Bib &o44&o45&o46 &o47&o48 &o49 &o50 &o51 &o52 Bib.paper={&o12,&o29} Bib.book.publisher={&o51} Bib.paper.author.lastname={&o71,&206} Bib.paper={&o12,&o29} Bib.book.publisher={&o51} Bib.paper.author.lastname={&o71,&206}

5
5 Answer of a Path Expression Simple evaluation algorithms for Answer(P,DB): Runs in PTIME in size(P), size(db): –PTIME complexity Answer(P, DB) = f(P, root(DB)) Where: f( , x) = {x} f(L.P, x) = {f(P,y) | (x,L,y) edges(DB)} Answer(P, DB) = f(P, root(DB)) Where: f( , x) = {x} f(L.P, x) = {f(P,y) | (x,L,y) edges(DB)}

6
6 Regular Path Expressions R ::= label | _ | R.R | (R|R) | R* | R+ | R? Examples: Bib.(paper|book).author Bib.book.author.lastname? Bib.book.(references)*.author Bib.(_)*.zip

7
7 Applications of Regular Path Expressions Navigating uncertain structure: –Bib.book.author.lastname? Syntactic substitution for inheritance: –Bib.(paper|book).author –Better: Bib.publication.author, but we don’t have inheritance

8
8 Applications of Regular Path Expressions Computing transitive closure: –Bib.(_)*.zip = everything accessible –Bib.book.(references)*.author = everything accessible via references Some regular expressions of doubtful practical use: –(references.references)* = a path with an even number of references –(_._)* = paths of even length –(_._._.(_)?)* = paths of length (3m + 4n) for some m,n But make great examples for illustration

9
9 Answer of a Regular Path Expression Recall: –Lang(R) = the set of words P generated by R Answer of regular path expressions: –Answer(R,DB) = {Answer(P,DB) | P Lang(R)} Need an evaluation algorithm that copes with cycles

10
10 Regular Path Expressions Recall: each regular expression NDFA Example: R = (a.a)*.a.b A = s1s2 s3 s4 a a a b states(A) = {s1,s2,s3,s4} initial(A) = s1 terminal(A) = {s4}

11
11 Regular Path Expressions Canonical Evaluation Algorithm Answer(R,DB): 1.construct A from R 2.construct product automaton G = A x DB: –nodes(G) = states(A) x nodes(db) –edges(G) = {((s,x),L,(s’,x’) | (s,L,s’) edges(A), (x,L,x’) edges(DB)} –root(G) = (initial(A), root(DB)) 3.compute G acc = set of nodes accessible from root(G) 4.return {x | s terminal(A) s.t. (s,x) G acc } Answer(R,DB): 1.construct A from R 2.construct product automaton G = A x DB: –nodes(G) = states(A) x nodes(db) –edges(G) = {((s,x),L,(s’,x’) | (s,L,s’) edges(A), (x,L,x’) edges(DB)} –root(G) = (initial(A), root(DB)) 3.compute G acc = set of nodes accessible from root(G) 4.return {x | s terminal(A) s.t. (s,x) G acc }

12
12 Regular Path Expressions Example: R = _.(_._)*.a A = DB = &o1 &o2 &o3&o4 a a b a s1s2 s3 _ _ a Answer of R on DB = { &o2, &o3}

13
13 Compute Product Automaton G s1,&o1 s1,&o2 s1,&o3s1,&o4 a a b a s2,&o1 s2,&o2 s2,&o3s2,&o4 a a b a s3,&o1 s3,&o2 s3,&o3s3,&o4 a a b a _ _ a

14
14 Compute Accessible Part G acc s1,&o1 s1,&o2 s1,&o3s1,&o4 a a b a s2,&o1 s2,&o2 s2,&o3s2,&o4 a a b a s3,&o1 s3,&o2 s3,&o3s3,&o4 a a b a _ _ a Answer(R,DB) = {&o2, &o3}

15
15 Complexity of Regular Path Expressions The evaluation algorithm runs in PTIME in size(R), size(DB) Even when there are cycles in DB

Similar presentations

OK

Agenda from now on Done: SQL, views, transactions, conceptual modeling, E/R, relational algebra. Starting: XML To do: the database engine: –Storage –Query.

Agenda from now on Done: SQL, views, transactions, conceptual modeling, E/R, relational algebra. Starting: XML To do: the database engine: –Storage –Query.

© 2017 SlidePlayer.com Inc.

All rights reserved.

Ads by Google

Oral cavity anatomy and physiology ppt on cells Ppt on ehv ac dc Ppt on suspension type insulators and conductors Ppt on networking related topics on personality Ppt on operators in c programming Ppt on indian culture vs western culture Ppt on preparedness for disaster in india Ppt on george bernard shaw Ppt on youth leadership development Ppt on major types of soil found in india