file27 paper
-
Upload
postscript -
Category
Documents
-
view
221 -
download
0
Transcript of file27 paper
-
8/14/2019 file27 paper
1/8
A Q u e r y L a n g u a g e f o r a W e b - S i t e M a n a g e m e n t S y s t e m
M a r y F e r n a n d e z
D a n i e l a F l o r e s c u
A l o n L e v y
D a n S u c i u
1 I n t r o d u c t i o n
W e h a v e d e s i g n e d a s y s t e m , c a l l e d S t r u d e l , w h i c h a p p l i e s f a m i l i a r c o n c e p t s f r o m d a t a b a s e m a n a g e m e n t
s y s t e m s , t o t h e p r o c e s s o f b u i l d i n g w e b s i t e s . T h e m a i n m o t i v a t i o n f o r d e v e l o p i n g S t r u d e l i s t h e o b s e r v a t i o n
t h a t w i t h c u r r e n t t e c h n o l o g y , c r e a t i n g a n d m a n a g i n g l a r g e s i t e s i s t e d i o u s , b e c a u s e a s i t e d e s i g n e r m u s t
s i m u l t a n e o u s l y p e r f o r m ( a t l e a s t ) t h r e e t a s k s : ( 1 ) c h o o s i n g w h a t i n f o r m a t i o n w i l l b e a v a i l a b l e a t t h e s i t e , ( 2 )
o r g a n i z i n g t h a t i n f o r m a t i o n i n i n d i v i d u a l p a g e s o r i n g r a p h s o f l i n k e d p a g e s , a n d ( 3 ) s p e c i f y i n g t h e v i s u a l
p r e s e n t a t i o n o f p a g e s i n H T M L . F u r t h e r m o r e , s i n c e t h e r e i s n o s e p a r a t i o n b e t w e e n t h e p h y s i c a l o r g a n i z a t i o n
o f t h e i n f o r m a t i o n u n d e r l y i n g a w e b s i t e a n d t h e l o g i c a l v i e w w e h a v e o n i t , c h a n g i n g o r r e s t r u c t u r i n g a s i t e
a r e u n w i e l d y t a s k s .
I n S t r u d e l , t h e w e b s i t e m a n a g e r c a n s e p a r a t e t h e l o g i c a l v i e w o f i n f o r m a t i o n a v a i l a b l e a t a w e b s i t e ,
t h e s t r u c t u r e o f t h a t i n f o r m a t i o n i n l i n k e d p a g e s , a n d t h e g r a p h i c a l p r e s e n t a t i o n o f p a g e s i n H T M L . F i r s t ,
t h e s i t e b u i l d e r d e n e s i n d e p e n d e n t l y t h e d a t a t h a t w i l l b e a v a i l a b l e a t t h e s i t e . T h i s p r o c e s s m a y r e q u i r e
c r e a t i n g a n i n t e g r a t e d v i e w o f d a t a f r o m m u l t i p l e ( e x t e r n a l ) s o u r c e s . S e c o n d , t h e s i t e b u i l d e r d e n e s t h e
s t r u c t u r e o f t h e w e b - s i t e . T h e s t r u c t u r e i s d e n e d a s a v i e w o v e r t h e u n d e r l y i n g i n f o r m a t i o n , a n d d i e r e n t
v e r s i o n s o f t h e s i t e c a n b e d e n e d b y s p e c i f y i n g m u l t i p l e v i e w s . F i n a l l y , t h e g r a p h i c a l r e p r e s e n t a t i o n o f t h e
p a g e s i n t h e w e b s i t e i s s p e c i e d .
T h i s p a p e r d e s c r i b e s t h e q u e r y l a n g u a g e t h a t l i e s a t t h e h e a r t o f t h e S t r u d e l s y s t e m . I n S t r u d e l , w e
m o d e l t h e d a t a a t t h e d i e r e n t l e v e l s a s g r a p h s . T h a t i s , t h e d a t a i n t h e e x t e r n a l s o u r c e s , t h e d a t a i n t h e
i n t e g r a t e d v i e w a n d t h e w e b - s i t e i t s e l f a r e m o d e l e d a s g r a p h s . A g r a p h m o d e l i s a p p r o p r i a t e b e c a u s e s i t e d a t a
m a y b e d e r i v e d f r o m m u l t i p l e s o u r c e s , s u c h a s e x i s t i n g d a t a b a s e s y s t e m s a n d H T M L l e s . C o n s e q u e n t l y ,
o u r s y s t e m r e q u i r e s a q u e r y l a n g u a g e f o r ( 1 ) d e n i n g t h e i n t e g r a t e d v i e w o f t h e d a t a , a n d ( 2 ) d e n i n g t h e
s t r u c t u r e o f w e b s i t e s . A n i m p o r t a n t r e q u i r e m e n t o f o u r q u e r y l a n g u a g e i s t h a t i t b e a b l e t o c o n s t r u c t g r a p h s .
O u r q u e r y p r o c e s s o r n e e d s t o b e a b l e t o a n s w e r q u e r i e s t h a t i n v o l v e a c c e s s i n g d i e r e n t d a t a s o u r c e s . E v e n
t h o u g h w e m o d e l t h e s o u r c e s a s c o n t a i n i n g g r a p h s , w e c a n n o t a s s u m e t h e y h a v e a u n i f o r m r e p r e s e n t a t i o n o f
g r a p h s . H e n c e , o u r q u e r y p r o c e s s o r n e e d s t o a d h e r e t o p o s s i b l e l i m i t a t i o n s o n a c c e s s t o d a t a i n t h e g r a p h s ,
a n d s h o u l d b e a b l e t o e x p l o i t a d d i t i o n a l q u e r y i n g c a p a b i l i t i e s t h a t a n e x t e r n a l s o u r c e m a y h a v e . W e h a v e
d e s i g n e d a g e n e r a l f r a m e w o r k f o r p r o c e s s i n g S t r u d e l q u e r i e s o v e r m u l t i p l e u n s t r u c t u r e d d a t a s o u r c e s , a n d
a r e d e s i g n i n g o p t i m i z a t i o n s t h a t u s e t h e c a p a b i l i t i e s o f e x t e r n a l s o u r c e s w h e n e v e r p o s s i b l e .
T h e p u r p o s e o f t h i s p a p e r i s t o d e s c r i b e t h e s y n t a x a n d s e m a n t i c s o f S t r u Q L , t h e q u e r y l a n g u a g e a t
t h e c o r e o f S t r u d e l . W e b e l i e v e t h a t S t r u Q L i s a l a n g u a g e o f i n d e p e n d e n t i n t e r e s t , a n d i s u s e f u l f o r o t h e r
a p p l i c a t i o n s i n v o l v i n g t h e m a n a g e m e n t o f s e m i s t r u c t u r e d d a t a , a s w e l l a s a v i e w d e n i t i o n l a n g u a g e f o r s u c h
d a t a . W e d i s c u s s t h e r e l a t i o n s h i p o f S t r u Q L t o o t h e r l a n g u a g e s p r o p o s e d i n t h e l i t e r a t u r e i n S e c t i o n 6 :
s e e A b i 9 7 , B u n 9 7 ] .
2 S t r u d e l A r c h i t e c t u r e
I n e v e r y l e v e l o f t h e S t r u d e l s y s t e m , d a t a i s v i e w e d u n i f o r m l y a s a g r a p h . A t t h e b o t t o m - m o s t l e v e l , d a t a
i s s t o r e d i n S t r u d e l ' s d a t a g r a p h r e p o s i t o r y o r i n e x t e r n a l s o u r c e s . E x t e r n a l s o u r c e s m a y h a v e a v a r i e t y o f
f o r m a t s , b u t e a c h i s t r a n s l a t e d i n t o t h e g r a p h d a t a m o d e l b y a w r a p p e r ( s e e F i g u r e 1 ) . S t r u d e l ' s g r a p h
m o d e l i s s i m i l a r t o t h a t o f O E M P G M W 9 5 ] . A d a t a g r a p h c o n t a i n s o b j e c t s c o n n e c t e d b y d i r e c t e d e d g e s
A T & T L a b s | R e s e a r c h , e m a i l : f m f f , d a n a , l e v y , s u c i u g @ r e s e a r c h . a t t . c o m
-
8/14/2019 file27 paper
2/8
l a b e l e d w i t h s t r i n g - v a l u e d a t t r i b u t e n a m e s . O b j e c t s a r e e i t h e r n o d e s , c a r r y i n g a u n i q u e o b j e c t i d e n t i e r
( o i d ) , o r a r e a t o m i c v a l u e s , s u c h a s i n t e g e r s , s t r i n g s , l e s , e t c . S t r u d e l a l s o p r o v i d e s n a m e d c o l l e c t i o n s o f
o b j e c t s , i . e . , s e t s o f o i d s : t e c h n i c a l l y s p e a k i n g t h e s e a r e r e d u n d a n t , s i n c e e v e r y c o l l e c t i o n c a n b e r e p r e s e n t e d
a s a w i d e s u b t r e e , b u t w e i n c l u d e d t h e m i n t h e d a t a m o d e l f o r c o n v e n i e n c e .
T h e d a t a g r a p h d e s c r i b e s t h e l o g i c a l s t r u c t u r e o f a l l t h e i n f o r m a t i o n a v a i l a b l e a t t h a t s i t e , a n d m a y b e
o b t a i n e d b y i n t e g r a t i n g i n f o r m a t i o n f r o m t h e v a r i o u s e x t e r n a l s o u r c e s . T h i s i n t e g r a t i o n i s d o n e i n a s i m i l a r
w a y t o r e c e n t l y p r o p o s e d d a t a i n t e g r a t i o n p r o t o t y p e s s u c h a s T s i m m i s P G M W 9 5 ] a n d t h e I n f o r m a t i o n
M a n i f o l d L R O 9 6 ] . G i v e n t h e d a t a g r a p h , a s i t e b u i l d e r c a n d e n e o n e o r m o r e s i t e g r a p h s ; e a c h s i t e g r a p h
r e p r e s e n t s t h e l o g i c a l s t r u c t u r e o f t h e i n f o r m a t i o n d i s p l a y e d a t t h a t s i t e ( i . e . , a n o d e f o r e v e r y w e b p a g e a n d
a t t r i b u t e s d e s c r i b i n g t h e i n f o r m a t i o n i n t h e p a g e a n d l i n k s b e t w e e n p a g e s ) . T h e r e c a n b e s e v e r a l s i t e g r a p h s ,
c o r r e s p o n d i n g t o d i e r e n t v e r s i o n s ( o r v i e w s ) o f t h e w e b s i t e . F i n a l l y , t h e H T M L g e n e r a t o r c o n s t r u c t s a
b r o w s a b l e H T M L g r a p h f r o m a g r a p h s i t e . T h e H T M L g e n e r a t o r c r e a t e s a w e b p a g e f o r e v e r y n o d e i n t h e
s i t e g r a p h , u s i n g t h e v a l u e s o f t h e a t t r i b u t e s o f t h e n o d e .
HTML Generator
Mediator
QueryData Graph
Site Graph
DataRDB/
Site Definition
HTML Graph (physical Web Site)
Repository
Processor
OODB
HTML
Pages
STRUDEL
Wrapper Wrapper
F i g u r e 1 : S t r u d e l A r c h i t e c t u r e
I n S t r u d e l , w e n e e d t o q u e r y a n d / o r t o t r a n s f o r m g r a p h s : ( 1 ) a t t h e i n t e g r a t i o n l e v e l , w h e n d a t a f r o m
d i e r e n t e x t e r n a l s o u r c e s i s i n t e g r a t e d i n t o t h e d a t a g r a p h , a n d ( 2 ) a t t h e s i t e - g r a p h d e n i t i o n l e v e l , w h e n s i t e
g r a p h s a r e c o n s t r u c t e d f r o m a d a t a g r a p h . I n a d d i t i o n , S t r u d e l ' s d e s i g n e n a b l e s u s t o p r o v i d e a n i n t e r f a c e
f o r a d - h o c q u e r i e s o v e r a w e b s i t e . W e u s e t h e s a m e q u e r y a n d t r a n s f o r m a t i o n l a n g u a g e , S t r u Q L ( S i t e
T R a n s f o r m a t i o n U n d Q u e r y L a n g u a g e ) , a t a l l t h r e e l e v e l s . W e d e s c r i b e S t r u Q L ' s c o r e f r a g m e n t n e x t .
3 D a t a M o d e l a n d Q u e r y L a n g u a g e
D a t a M o d e l . O u r d a t a m o d e l i s a m i n o r v a r i a t i o n o n t h e g r a p h m o d e l O E M P G M W 9 5 ] , d e s i g n e d f o r
s e m i s t r u c t u r e d d a t a . F i r s t w e x a u n i v e r s e o f v a l u e s , a n d o n e o f l a b e l s . A l l i n t e g e r s , r e a l s , s t r i n g s , t r u e a n d
f a l s e a r e v a l u e s , w h i l e l a b e l s a r e t y p i c a l l y s t r i n g s . A d a t a b a s e i s a d i r e c t e d , n i t e g r a p h , w h o s e s e t o f n o d e s
-
8/14/2019 file27 paper
3/8
c o n s i s t s o f a n i t e s e t o f o i d s a n d a n i t e s e t o f v a l u e s . E d g e s c a n g o f r o m o i d s t o o i d s , a n d f r o m o i d s t o
v a l u e s , b u t a n e d g e c a n n o t e m a n a t e a t a v a l u e . L a b e l s a r e a t t a c h e d t o e d g e s : f o r a n y t w o n o d e s x ; y a n d a n y
l a b e l a t h e r e c a n b e a t m o s t o n e e d g e b e t w e e n x a n d y l a b e l e d a ; w h e n t h a t ' s t h e c a s e w e w r i t e x ! a ! y . I n
a d d i t i o n t o t h e g r a p h , t h e d a t a b a s e a l s o c o n t a i n s a n u m b e r o f c o l l e c t i o n s . E a c h c o l l e c t i o n i s a s e t o f n o d e s .
I n t u i t i v e l y , t h e c o l l e c t i o n s a r e t h e e n t r y p o i n t s t o t h e g r a p h . F o r e x a m p l e , t h e g r a p h m a y h a v e a c o l l e c t i o n
R o o t ( x ) , c o n s i s t i n g o f a s i n g l e n o d e x w h i c h i s t h e g r a p h ' s r o o t . T h e r e i s a n i m p l i c i t s c h e m a a s s o c i a t e d t o
t h a t d a t a b a s e , n a m e l y t h e n u m b e r a n d n a m e s o f t h e c o l l e c t i o n s .
Q u e r y L a n g u a g e : B a s i c S y n t a x . T o s t a r t , c o n s i d e r t h e f o l l o w i n g S t r u Q L q u e r y w h i c h r e t u r n s a l l
P o s t S c r i p t p a p e r s d i r e c t l y a c c e s s i b l e f r o m h o m e p a g e s :
w h e r e H o m e P a g e s ( p ) ; p ! " P a p e r " ! q ; i s P o s t S c r i p t ( q )
c o l l e c t P o s t s c r i p t P a g e s ( q )
H e r e H o m e P a g e s i s a c o l l e c t i o n , " P a p e r " i s a n e d g e l a b e l , a n d i s P o s t S c r i p t i s a p r e d i c a t e t e s t i n g w h e t h e r
n o d e q i s a P o s t S c r i p t l e . T h e c o n d i t i o n p ! " P a p e r " ! q m e a n s t h a t t h e r e e x i s t s a n e d g e l a b e l e d " P a p e r "
f r o m p t o q . T h e q u e r y c o n s t r u c t s a n e w c o l l e c t i o n , P o s t s c r i p t P a g e s , c o n s i s t i n g o f a l l a n s w e r s .
S t r u Q L i s n o v e l , i n t h e w a y i t c o m b i n e s r e g u l a r e x p r e s s i o n s w i t h t h e c r e a t i o n o f n e w g r a p h s f r o m e x i s t i n g
g r a p h s ; i t s c r e a t e , a n d l i n k c l a u s e s s p e c i f y n e w g r a p h s . T h e f o l l o w i n g e x a m p l e c o p i e s t h e i n p u t g r a p h a n d
a d d s a " H o m e " e d g e f r o m e a c h n o d e b a c k t o t h e r o o t :
w h e r e R o o t ( p ) ; p ! ! q ; q ! l ! q
0
c r e a t e N ( p ) ; N ( q ) ; N ( q
0
)
l i n k N ( q ) ! l ! N ( q
0
) ; N ( q ) ! " H o m e " ! N ( p )
c o l l e c t N e w R o o t ( N ( p ) )
T h e i n p ! ! q d e n o t e s a r e g u l a r p a t h e x p r e s s i o n s : i n t h i s s i m p l e c a s e i t m e a n s a n y p a t h f r o m p t o q . N
i s a S k o l e m f u n c t i o n c r e a t i n g n e w o i d s . T h e q u e r y r s t n d s a l l n o d e s q r e a c h a b l e f r o m t h e r o o t p ( i n c l u d i n g
p i t s e l f ) a n d a l l n o d e s q
0
d i r e c t l y a c c e s s i b l e f r o m q b y o n e l i n k l a b e l e d l . T h e n i t c o n s t r u c t s n e w n o d e s N ( q )
a n d N ( q
0
) : i n e e c t , t h i s c o p i e s a l l n o d e s a c c e s s i b l e f r o m t h e r o o t . T h e q u e r y a d d s a l i n k l b e t w e e n a n y
p a i r o f n o d e s t h a t w e r e l i n k e d i n t h e o r i g i n a l g r a p h a n d a d d s a n e w H o m e l i n k t h a t p o i n t s t o t h e n e w r o o t .
F i n a l l y , i t c r e a t e s a n o u t p u t c o l l e c t i o n N e w R o o t t h a t c o n t a i n s t h e n e w g r a p h ' s r o o t .
A s i m i l a r q u e r y p r o d u c e s a s i t e g r a p h , i . e . , a v i e w o f t h e i n p u t g r a p h , c a l l e d T e x t O n l y , t h a t e x c l u d e s a n y
n o d e s t h a t c o n t a i n i m a g e l e s :
1
w h e r e R o o t ( p ) ; p ! ! q ; q ! l ! q
0
; n o t ( i s I m a g e F i l e ( q
0
) )
c r e a t e N ( p ) ; N ( q ) ; N ( q
0
)
l i n k N ( q ) ! l ! N ( q
0
) ;
c o l l e c t T e x t O n l y R o o t ( N ( p ) )
I n t h e g e n e r a l s y n t a x , S t r u Q L h a s f o u r c l a u s e s , s e l e c t ; c r e a t e ; l i n k ; c o l l e c t w h o s e s y n t a x i s g i v e n b e l o w :
w h e r e C
1
; : : : ; C
k
c r e a t e N
1
; : : : ; N
n
l i n k L
1
; : : : ; L
p
c o l l e c t G
1
; : : : ; G
q
T h e C ' s i n t h e w h e r e c l a u s e a r e c a l l e d c o n d i t i o n s a n d a r e g i v e n b y t h e g r a m m a r :
C : : = P a t h C o n d j B o o l C o n d
P a t h C o n d : : = N o d e E x p r ! R P E ! N o d e E x p r
1
T h i s e x a m p l e i s i n s p i r e d b y a n i n c o n s i s t e n c y i n t h e C N N w e b s i t e h t t p : / / w w w . c n n . c o m . T h e s i t e p r o v i d e s a l i n k t o a
t e x t - o n l y v e r s i o n . B u t , s u r p r i s i n g l y , b y f o l l o w i n g t h e l i n k s f r o m t h a t p a g e o n e e n d s u p a g a i n a t p a g e s w i t h i m a g e s .
-
8/14/2019 file27 paper
4/8
T h a t i s , a c o n d i t i o n c a n b e e i t h e r a p a t h c o n d i t i o n , o r a b o o l e a n c o n d i t i o n . P a t h c o n d i t i o n s a r e r e g u l a r p a t h
e x p r e s s i o n s , R P E b e t w e e n t w o n o d e s :
R P E : : = L a b e l C o n s t j L a b e l V a r j U n a r y B o o l C o n d j \ \ j ( R P E : R P E ) j ( R P E \ j \ R P E ) j R P E \ \ j R P E \ + \
W e u s e q u o t a t i o n m a r k s h e r e t o d i s t i n g u i s h t h e s y n t a x f r o m t h e m e t a s y n t a x . H e r e U n a r y B o o l C o n d i s
a b o o l e a n c o m b i n a t i o n o f u s e r - d e n e d e x t e r n a l f u n c t i o n s o n l a b e l s . F o r e x a m p l e t h e p a t h c o n d i t i o n x !
( i s M y E d g e ) + ! y u s e s t h e u s e r - d e n e d f u n c t i o n i s M y E d g e ( a ) , a n d i s s a t i s e d w h e n e v e r t h e r e e x i s t s a p a t h
f r o m x t o y w h o s e l a b e l s f o r m t h e s e q u e n c e a
1
; : : : ; a
n
a n d t h e f o l l o w i n g h o l d : n 1 , i s M y E d g e ( a
1
) , : : : ,
i s M y E d g e ( a
n
) . T h e w i l d - c h a r d e n o t e s a n y l a b e l ( a n d i s t h e s a m e a s t h e p r e d i c a t e t r u e ) . W e a b b r e v i a t e
( ) w i t h a n d ( ) + w i t h + , t h u s w r i t i n g x ! ! y i n s t e a d o f x ! ( ) ! y .
A B o o l C o n d i s a n a r b i t r a r y b o o l e a n c o n d i t i o n o n n o d e s , v a l u e s , a n d l a b e l s . A t o m i c b o o l e a n c o n d i t i o n s
a r e c o l l e c t i o n m e m b e r s h i p s , l i k e R o o t ( x ) , b u i l t - i n p r e d i c a t e s , l i k e x < y , o r u s e r d e n e d p r e d i c a t e s , l i k e
i s P o s t S c r i p t ( x ) . N o t e t h a t w e c a n n o t n e g a t e p a t h c o n d i t i o n s , i . e . t h e q u e r y w h e r e R o o t ( x ) ; n o t ( x ! ! y )
i s n o t l e g a l . A s e x p l a i n e d b e l o w w e c a n e x p r e s s t h i s q u e r y i n S t r u Q L , u s i n g c o m p o s e d q u e r i e s .
N o d e e x p r e s s i o n s o c c u r i n a l l t h r e e c l a u s e s c r e a t e ; l i n k , a n d c o l l e c t . N o d e e x p r e s s i o n s a r e e i t h e r ( 1 ) n o d e
v a r i a b l e s , o r ( 2 ) S k o l e m t e r m s . T h e l a t t e r a r e o b t a i n e d b y a p p l y i n g a S k o l e m f u n c t i o n ( o f a n y a r i t y ) t o
e i t h e r o f t h e f o l l o w i n g : n o d e e x p r e s s i o n s , l a b e l v a r i a b l e s , o r v a l u e s . I n t h e c r e a t e c l a u s e e a c h o f N
1
; : : : ; N
n
i s a S k o l e m t e r m . I n t h e l i n k c l a u s e , e a c h L i s o f t h e f o r m N E 1 ! V C ! N E 2 , w h e r e V C i s a l a b e l v a r i a b l e
o r c o n s t a n t , N E 1 i s a S k o l e m t e r m , a n d N E 2 a n o d e e x p r e s s i o n . F i n a l l y , e a c h G i n t h e c o l l e c t c l a u s e i s o f
t h e f o r m C o l l e c t i o n N a m e ( N o d e E x p r ) .
Q u e r y B l o c k s S t r u Q L q u e r i e s a r e t y p i c a l l y l a r g e r t h a n O L T P o r D e c i s i o n S u p p o r t d a t a b a s e q u e r i e s ,
b e c a u s e t h e y h a v e t o c o n s t r u c t n e w g r a p h s , w i t h a d i v e r s i t y r i c h e n o u g h t o p l e a s e a h u m a n v i e w e r . F o r
t h a t r e a s o n w e a l l o w t h e w h e r e ; c r e a t e ; l i n k , a n d c o l l e c t c l a u s e s t o b e i n t e r l e a v e d , a n d i n t r o d u c e s o m e b l o c k
s t r u c t u r e i n t o t h e l a n g u a g e . W e g i v e t h e s y n t a x b e l o w . T h e r e i s o n e
2
n a m e d i n p u t g r a p h a n d o n e n a m e d
o u t p u t g r a p h p e r q u e r y :
B l o c k : : = ( w h e r e C
1
; : : : ; C
k
;
c r e a t e N
1
; : : : ; N
n
]
l i n k L
1
; : : : ; L
p
]
c o l l e c t G
1
; : : : ; G
q
]
\ f
0 0
B l o c k ; : : : ; B l o c k \ g
0 0
] )
Q u e r y : : = i n p u t i d e n t
B l o c k
o u t p u t i d e n t
H e r e ( : : : ) m e a n s r e p e t i t i o n a n d : : : ] m e a n s t h a t : : : i s o p t i o n a l . F o r e x a m p l e t h e f o l l o w i n g q u e r y c o p i e s t h a t
p o r t i o n o f t h e g r a p h n a m e d D a t a G r a p h w h i c h i s r e a c h a b l e o n l y t h r o u g h a t t r i b u t e s \ P a p e r " , \ T e c h R e p o r t " ,
\ T i t l e " , \ A b s t r a c t " , \ A u t h o r " . I n a d d i t i o n i t c o n s t r u c t s a s p e c i a l n o d e A u t h o r s ( ) a n d c o n n e c t s i t t o a l l p a g e s
c o r r e s p o n d i n g t o \ A u t h o r " s . T h e o u t p u t g r a p h i s c a l l e d S i t e G r a p h . O n e w a y t o w r i t e t h i s i n S t r u Q L i s :
i n p u t D a t a G r a p h
w h e r e R o o t ( x ) ; x ! ! y ; y ! l ! z ;
l i n f \ P a p e r " , \ T e c h R e p o r t " , \ T i t l e " , \ A b s t r a c t " , \ A u t h o r " g
c r e a t e A u t h o r s ( ) ; P a g e ( y ) ; P a g e ( z )
l i n k P a g e ( y ) ! l ! P a g e ( z )
w h e r e x ! ! y 1 ; y 1 ! \ A u t h o r " ! z 1
l i n k A u t h o r s ( ) ! \ A u t h o r " ! P a g e ( z 1 )
o u t p u t S i t e G r a p h
2
I n o r d e r t o i n t e g r a t e i n f o r m a t i o n f r o m s e v e r a l s o u r c e , w e a l l o w m u l t i p l e i n p u t g r a p h s . W h e n m u l t i p l e i n p u t g r a p h s a r e
p r e s e n t , e v e r y o c c u r r e n c e o f a c o l l e c t i o n n e e d s t o b e p r e c e d e d b y a g r a p h n a m e . F o r c l a r i t y o f p r e s e n t a t i o n h o w e v e r , w e f o c u s
o n q u e r i e s w i t h o n l y o n e i n p u t g r a p h .
-
8/14/2019 file27 paper
5/8
I n t e r m i x i n g t h e w h e r e ; c r e a t e ; l i n k c l a u s e s m a k e s t h e q u e r y e a s i e r t o r e a d . T h i s i s n o t h i n g m o r e t h a n s y n t a c t i c
c o n v e n i e n c e , s i n c e t h e m e a n i n g i s t h e s a m e a s t h a t o f t h e q u e r y i n w h i c h a l l c l a u s e s a r e j o i n e d t o g e t h e r :
i n p u t D a t a G r a p h
w h e r e R o o t ( x ) ; x ! ! y ; y ! l ! z ;
l i n f \ P a p e r " , \ T e c h R e p o r t " , \ T i t l e " , \ A b s t r a c t " , \ A u t h o r " g
x ! ! y 1 ; y 1 ! \ A u t h o r " ! z 1
c r e a t e A u t h o r s ( ) ; P a g e ( y ) ; P a g e ( z )
l i n k P a g e ( y ) ! l ! P a g e ( z )
A u t h o r s ( ) ! \ A u t h o r " ! P a g e ( z 1 )
o u t p u t S i t e G r a p h
T h e r e i s a c e r t a i n s e n s e t h a t t h e v a r i a b l e s y 1 ; z 1 a r e r e d u n d a n t : i n d e e d a n y v a l i d b i n d i n g o f y 1 ; z 1 i s a l s o a
v a l i d b i n d i n g o f y ; z . B u t t h e c o n v e r s e i s n o t t r u e , a n d i n f a c t t h e r e i s a s p e c i a l a c t i o n d o n e f o r t h e v a r i a b l e s
y 1 ; z 1 w h i c h i s n o t d o n e f o r a n y y ; z . T h i s m a k e s t h e q u e r y h a r d e r t o r e a d . B y u s i n g b l o c k s w e c a n a v o i d
h a v i n g t o i n t r o d u c e t h e n e w v a r i a b l e s :
i n p u t D a t a G r a p h
w h e r e R o o t ( x ) ; x ! ! y ; y ! l ! z ;
l i n f \ P a p e r " , \ T e c h R e p o r t " , \ T i t l e " , \ A b s t r a c t " , \ A u t h o r " g
c r e a t e A u t h o r s ( ) ; P a g e ( y ) ; P a g e ( z )
l i n k P a g e ( y ) ! l ! P a g e ( z )
f w h e r e l = \ A u t h o r "
l i n k A u t h o r s ( ) ! \ A u t h o r " ! P a g e ( z )
g
o u t p u t S i t e G r a p h
T h e s e m a n t i c s o f q u e r i e s w i t h n e s t e d b l o c k s c a n b e r e d u c e d t o t h a t o f q u e r i e s w i t h o u t n e s t e d b l o c k s . F o r
e x a m p l e e a c h q u e r y o f t h e f o r m :
w h e r e E ( x ; y ; z )
c r e a t e C ( x ; y ; z )
l i n k L ( x ; y ; z )
f w h e r e E 1 ( x ; y ; z ; u ; v )
c r e a t e C 1 ( x ; y ; z ; u ; v )
l i n k L 1 ( x ; y ; z ; u ; v )
g
w h e r e E ; C ; L ; E 1 ; C 1 ; L 1 a r e e x p r e s s i o n s f o r t h e c o r r e s p o n d i n g c l a u s e , i s e q u i v a l e n t t o t h e f o l l o w i n g q u e r y
w i t h o u t b l o c k s t r u c t u r e .
w h e r e E ( x ; y ; z ) ; E ( x 1 ; y 1 ; z 1 ) ; E 1 ( x 1 ; y 1 ; z 1 ; u ; v )
c r e a t e C ( x ; y ; z ) ; C 1 ( x 1 ; y 1 ; z 1 ; u ; v )
l i n k L ( x ; y ; z ) ; L ( x 1 ; y 1 ; z 1 ; u ; v )
F i n a l l y w e n o t e t h a t t h e q u e r y w i t h b l o c k s t r u c t u r e i s e a s i e r t o e v a l u a t e t h a n t h a t w i t h o u t . A q u e r y p r o c e s s o r
w o u l d n e e d t o d i s c o v e r t h e v a r i a b l e r e d u n d a n c y i n t h e q u e r y w i t h o u t b l o c k s t r u c t u r e ( t h a t e v e r y b i n d i n g o f
x 1 ; y 1 ; z 1 i s a b i n d i n g f o r x ; y ; z t o o ) .
Q u e r y C o m p o s i t i o n W e c a n e x p r e s s q u e r y c o m p o s i t i o n i n S t r u Q L b y r e p l a c i n g t h e g r a p h n a m e i n
i n p u t w i t h a n o t h e r S t r u Q L q u e r y . R e c a l l t h a t w h e r e R o o t ( x ) ; x ! ! y ; n o t ( x ! \ A \ ! y ) c o l l e c t C ( y )
-
8/14/2019 file27 paper
6/8
i s i n c o r r e c t , b e c a u s e w e d o n o t a l l o w n e g a t i o n s o n p a t h c o n d i t i o n s . H o w e v e r w e c a n e x p r e s s t h a t q u e r y a s
a c o m p o s i t i o n o f t w o S t r u Q L q u e r i e s . F o r e x a m p l e , i f t h e c o l l e c t i o n R o o t i s g u a r a n t e e d t o c o n t a i n e x a c t l y
o n e e l e m e n t , t h e n t h e f o l l o w i n g i s a c o r r e c t t r a n s l a t i o n :
i n p u t ( i n p u t G
w h e r e R o o t ( x ) ; x ! \ A \ ! y
c o l l e c t D ( y ) )
w h e r e R o o t ( x ) ; x ! ! y ; n o t ( D ( y ) )
c o l l e c t C ( y )
T h e g e n e r a l c a s e r e q u i r e s a m o r e i n v o l v e d t r a n s l a t i o n .
4 S t r u Q L S e m a n t i c s
S t r u Q L ' s s e m a n t i c s c a n b e d e s c r i b e d i n t w o s t a g e s . T h e q u e r y s t a g e d e p e n d s o n l y o n t h e w h e r e c l a u s e
a n d p r o d u c e s a l l p o s s i b l e b i n d i n g s o f v a r i a b l e s t o v a l u e s t h a t s a t i s f y a l l c o n d i t i o n s i n t h e c l a u s e ; i t s r e s u l t
i s a r e l a t i o n w i t h o n e c o l u m n f o r e a c h n o d e o r l a b e l v a r i a b l e i n t h e w h e r e c l a u s e . T h e c o n s t r u c t i o n s t a g e
c o n s t r u c t s a n e w g r a p h f r o m t h i s r e l a t i o n , b a s e d o n t h e c r e a t e ; l i n k ; c o l l e c t c l a u s e s . W e e x p l a i n t h e d e t a i l s
n e x t .
W e a d o p t a c t i v e - d o m a i n s e m a n t i c s f o r S t r u Q L . F o r a d a t a g r a p h G , l e t O b e t h e s e t o f a l l o i d s a n d
v a l u e s i n t h e g r a p h , a n d L b e t h e s e t o f a l l l a b e l s i n G . L e t V b e t h e s e t o f a l l n o d e a n d l a b e l v a r i a b l e s i n a
q u e r y . T h e m e a n i n g o f t h e w h e r e - c l a u s e i s t h e s e t o f a s s i g n m e n t s : V ! O L t h a t s a t i s f y a l l c o n d i t i o n s
i n t h e w h e r e c l a u s e . E a c h a s s i g n m e n t m a p s n o d e v a r i a b l e s t o O a n d e d g e v a r i a b l e s t o L . T h e m e a n i n g o f
t h e c r e a t e l i n k c o l l e c t c l a u s e s i s a s f o l l o w s . F i r s t , t h e c r e a t e c l a u s e s p e c i e s w h a t n e w n o d e s t o c r e a t e : f o r
e a c h r o w i n t h e r e l a t i o n , o n e n e w n o d e i s c r e a t e d , c o r r e s p o n d i n g t o e a c h S k o l e m t e r m i n t h e c r e a t e c l a u s e .
S e c o n d , t h e l i n k c l a u s e s p e c i e s w h a t e d g e s t o c o n s t r u c t i n t h e o u t p u t g r a p h : t h a t i s , a n e d g e i s c r e a t e d f o r
e v e r y t r i p l e t i n t h e l i n k c l a u s e . F i n a l l y , t h e c o l l e c t c l a u s e p l a c e s n o d e s i n t h e n e w l y d e n e d c o l l e c t i o n s .
T w o c o m m e n t s a r e i n o r d e r . F i r s t , n o t i c e t h a t , w h e n a S k o l e m f u n c t i o n i s a p p l i e d t o t h e s a m e a r g u m e n t s
s t e m m i n g f r o m t w o d i e r e n t r o w s , t h e n t h e s a m e n o d e i s r e t u r n e d . S e c o n d , c o n c e p t u a l l y , t h e r e s u l t o f t h e
q u e r y i s a n e w g r a p h , c o n s i s t i n g o f : ( 1 ) a f r e s h c o p y o f t h e o l d g r a p h , a n d ( 2 ) a l l t h e n e w n o d e s , l i n k s , a n d
c o l l e c t i o n s c r e a t e d e x p l i c i t l y i n t h e q u e r y . T h u s , e d g e s i n t h e l i n k c l a u s e p o i n t i n g \ b a c k " t o t h e o l d g r a p h
a r e a c t u a l l y p o i n t i n g t o t h e f r e s h c o p y . F u r t h e r m o r e , t h e c o l l e c t i o n s o f t h e n e w g r a p h a r e p r e c i s e l y t h o s e
d e n e d i n c o l l e c t .
H o w e v e r , t h e a c t i v e - d o m a i n s e m a n t i c s i s u n s a t i s f a c t o r y b e c a u s e i t d e p e n d s o n h o w w e d e n e t h e a c t i v e
d o m a i n ; t h e s e m a n t i c s c h a n g e s i f , f o r e x a m p l e , w e c o m p u t e t h e a c t i v e d o m a i n o n l y f o r t h e a c c e s s i b l e p a r t
o f t h e g r a p h . T h e s i t u a t i o n i s s i m i l a r t o t h e d o m a i n i n d e p e n d e n c e i s s u e i n t h e r e l a t i o n a l c a l c u l u s : t h e r e
i t i s s o l v e d b y c o n s i d e r i n g r a n g e - r e s t r i c t e d q u e r i e s , w h i c h a r e g u a r a n t e e d t o b e d o m a i n i n d e p e n d e n t , i . e . ,
t h e i r s e m a n t i c s d o e s n o t c h a n g e i f w e a r t i c i a l l y c h a n g e t h e a c t i v e d o m a i n . W e a r e c u r r e n t l y s p e c i f y i n g
r a n g e - r e s t r i c t i o n r u l e s f o r S t r u Q L .
5 E x p r e s s i v e p o w e r
S t r u Q L ' s r e g u l a r p a t h e x p r e s s i o n s , l i k e t h o s e i n L O R E L a n d U n Q L , r e q u i r e g r a p h t r a v e r s a l a n d , t h e r e f o r e ,
t h e c o m p u t a t i o n o f t r a n s i t i v e c l o s u r e . T h e a b i l i t y t o c o m p u t e t h e t r a n s i t i v e c l o s u r e o f a n i n p u t g r a p h d o e s
n o t i m p l y t h e a b i l i t y t o c o m p u t e t h e t r a n s i t i v e c l o s u r e o f a n a r b i t r a r y b i n a r y o r 2 n - a r y r e l a t i o n . T h i s i s
p r o v e n f o r m a l l y f o r U n Q L B D H S 9 6 ] . S u r p r i s i n g l y , S t r u Q L c a n e x p r e s s t r a n s i t i v e c l o s u r e o f a n a r b i t r a r y
r e l a t i o n a s t h e c o m p o s i t i o n o f t w o q u e r i e s
3
. F o r e x a m p l e , c o n s i d e r t h e t r e e - e n c o d i n g o f a b i n a r y r e l a t i o n
R ( A ; B ) w i t h a t t r i b u t e s A a n d B , a s s h o w n b e l o w . W e c a n c o m p u t e a l l n o d e s r e a c h a b l e f r o m " x " w i t h t w o
S t r u Q L q u e r i e s . T h e r s t c o n s t r u c t s t h e g r a p h c o r r e s p o n d i n g t o t h e r e l a t i o n R ( A ; B ) , a n d t h e s e c o n d u s e s
t h e r e g u l a r e x p r e s s i o n t o n d a l l n o d e s a c c e s s i b l e f r o m t h e r o o t .
3
I t f o l l o w s f r o m t h e r e s u l t i n B D H S 9 6 ] t h a t a s i n g l e w h e r e l i n k q u e r y c a n n o t e x p r e s s t r a n s i t i v e c l o s u r e .
-
8/14/2019 file27 paper
7/8
i n p u t ( w h e r e R o o t ( r ) ; r ! " t u p " ! s 1 ; r ! " t u p " ! s 2 ;
s 1 ! " A " ! x 1 ; s 1 ! " B " ! y 1
s 2 ! " A " ! x 2 ; s 2 ! " B " ! y 2
y 1 = x 2
c r e a t e N ( y 1 ) ; N ( x 2 )
l i n k N ( y 1 ) ! " b o g u s " ! N ( x 2 )
c o l l e c t N e w R o o t ( N ( " x " ) ) )
w h e r e N e w R o o t ( x ) ; x ! ! N ( y )
c o l l e c t R e s u l t ( y )
A B
\ x " \ y "
\ y " \ z "
\ y " \ w "
\ x " \ y "
\ A " \ B "
\ y " \ z "
\ A " \ B "
\ y " \ w "
\ A " \ B "
\ t u p " \ t u p " \ t u p "
W e c a n p r o v e t h a t S t r u Q L h a s p r e c i s e l y t h e s a m e e x p r e s s i v e p o w e r a s r s t o r d e r l o g i c e x t e n d e d w i t h
t r a n s i t i v e c l o s u r e I m m 8 7 ] , F O + T C . T h a t i s , c o n s i d e r i n g a t w o - s o r t e d ( w i t h s o r t s O i d a n d L a b e l ) , r s t o r d e r
v o c a b u l a r y = f E ; C
1
; : : : ; C
k
g , w h e r e E ( O i d ; L a b e l ; O i d ) i s t h e e d g e r e l a t i o n a n d C
1
( O i d ) ; : : : ; C
k
( O i d )
a r e t h e c o l l e c t i o n s , t h e n a b o o l e a n q u e r y o v e r t h i s v o c a b u l a r y i s e x p r e s s i b l e i n p u r e S t r u Q L ( i . e . w i t h o u t
e x t e r n a l p r e d i c a t e s ) i f a n d o n l y i f i t i s e x p r e s s i b l e i n F O + T C .
6 R e l a t e d L a n g u a g e s
S e v e r a l l a n g u a g e s h a v e b e e n d e v e l o p e d f o r q u e r y i n g a n d r e s t r u c t u r i n g g r a p h a n d s e m i s t r u c t u r e d d a t a . F o r
e x a m p l e , t h e L O R E L l a n g u a g e Q R S
+
9 5 , A G M
+
9 7 ] h a s b e e n d e v e l o p e d i n t h e T s i m m i s p r o j e c t f o r t h e
a p p l i c a t i o n o f d a t a i n t e g r a t i o n . I n c o m p a r i s o n t o S t r u Q L , L O R E L h a s t h e e q u i v a l e n t e x p r e s s i v e p o w e r t o
t h e w h e r e c l a u s e o f S t r u Q L , b u t u n l i k e L O R E L , S t r u Q L c a n c o n s t r u c t a n a r b i t r a r y n e w o u t p u t g r a p h
( w i t h t h e c r e a t e a n d l i n k c l a u s e s ) . T h i s f e a t u r e i s s t r i c t l y n e c e s s a r y i n t h e a p p l i c a t i o n o f c r e a t i n g w e b s i t e s .
U n Q L B D H S 9 6 ] , a n o t h e r q u e r y l a n g u a g e f o r s e m i s t r u c t u r e d d a t a , c a n c o n s t r u c t a r b i t r a r y n e w g r a p h s .
H o w e v e r , a s e x p l a i n e d a b o v e , S t r u Q L i s m o r e e x p r e s s i v e t h a n U n Q L : t h e l a t t e r c a n n o t c o m p u t e t r a n s i t i v e
c l o s u r e o f a n a r b i t r a r y 2 n - a r y r e l a t i o n .
I n t h e o r y , S t r u Q L h a s p r e c i s e l y t h e s a m e e x p r e s s i v e p o w e r a s s t r a t i e d l i n e a r d a t a l o g . H o w e v e r t h e
t r a n s l a t i o n o f S t r u Q L q u e r i e s i n t o s t r a t i e d l i n e a r d a t a l o g r e s u l t s i n c u m b e r s o m e a n d h a r d t o u n d e r s t a n d
q u e r i e s . I n p a r t i c u l a r , S t r u Q L e n a b l e s a c o n c i s e r e p r e s e n t a t i o n o f r e g u l a r p a t h e x p r e s s i o n s a n d c l e a r l y
s e p a r a t e s t h e q u e r y i n g a n d t h e c r e a t i o n o f a g r a p h c r e a t i o n .
G r a p h L o g C E H
+
9 4 ] i s a n o t h e r q u e r y l a n g u a g e d e s i g n e d f o r g e n e r a l p u r p o s e d a t a b a s e a p p l i c a t i o n s , s u c -
c e e d i n g G a n d G + C M W 8 7 , C M W 8 8 , W o o 8 8 ] . G r a p h L o g c o m b i n e s d a t a l o g n o t a t i o n w i t h a v i s u a l q u e r y
l a n g u a g e a n d h a s t h e s a m e e x p r e s s i v e p o w e r a s s t r a t i e d l i n e a r d a t a l o g .
R e f e r e n c e s
A b i 9 7 ] S e r g e A b i t e b o u l . Q u e r y i n g s e m i - s t r u c t u r e d d a t a . I n I C D T , 1 9 9 7 .
A G M
+
9 7 ] S e r g e A b i t e b o u l , R o y G o l d m a n , J a s o n M c H u g h , V a s i l i s V a s s a l o s , a n d Y u e Z h u g e . V i e w s f o r
s e m i s t r u c t u r e d d a t a . I n P r o c e e d i n g s o f t h e W o r k s h o p o n M a n a g e m e n t o f S e m i - s t r u c t u r e d D a t a ,
1 9 9 7 .
B D H S 9 6 ] P e t e r B u n e m a n , S u s a n D a v i d s o n , G e r d H i l l e b r a n d , a n d D a n S u c i u . A q u e r y l a n g u a g e a n d
o p t i m i z a t i o n t e c h n i q u e s f o r u n s t r u c t u r e d d a t a . I n S I G M O D , 1 9 9 6 .
-
8/14/2019 file27 paper
8/8
B u n 9 7 ] P e t e r B u n e m a n . T u t o r i a l : S e m i s t r u c t u r e d d a t a . I n P O D S , 1 9 9 7 .
C E H
+
9 4 ] M . P . C o n s e n s , F . C h . E i g l e r , M . Z . H a s a n , A . O . M e n d e l z o n , E . G . N o i k , A . G . R y m a n , a n d
D . V i s t a . A r c h i t e c t u r e a n d a p p l i c a t i o n s o f t h e h y + v i s u a l i z a t i o n s y s t e m . I B M S y s t e m s J o u r n a l ,
3 3 : 3 : 4 5 8 { 4 7 6 , 1 9 9 4 .
C M W 8 7 ] I . C r u z , A . O . M e n d e l z o n , a n d P . T W o o d . A g r a p h i c a l q u e r y l a n g u a g e s u p p o r t i n g r e c u r s i o n . I n
P r o c e e d i n g s o f A C M S I G M O D C o n f . , S a n F r a n c i s c o , C a l i f o r n i a , M a y 1 9 8 7 .
C M W 8 8 ] I . C r u z , A . O . M e n d e l z o n , a n d P . T W o o d . G + : r e c u r s i v e q u e r i e s w i t h o u t r e c u r s i o n . I n P r o c .
S e c o n d I n t ' l C o n f . o n E x p e r t D a t a b a s e S y s t e m , T y s o n s C o r n e r , V i r g i n i a , A p r i l 1 9 8 8 .
I m m 8 7 ] N e i l I m m e r m a n . L a n g u a g e s t h a t c a p t u r e c o m p l e x i t y c l a s s e s . S I A M J o u r n a l o f C o m p u t i n g ,
1 6 : 7 6 0 { 7 7 8 , 1 9 8 7 .
L R O 9 6 ] A l o n Y . L e v y , A n a n d R a j a r a m a n , a n d J o a n n J . O r d i l l e . Q u e r y i n g h e t e r o g e n e o u s i n f o r m a t i o n
s o u r c e s u s i n g s o u r c e d e s c r i p t i o n s . I n P r o c e e d i n g s o f t h e 2 2 n d V L D B C o n f e r e n c e , B o m b a y , I n d i a . ,
1 9 9 6 .
P G M W 9 5 ] Y . P a p a k o n s t a n t i n o u , H . G a r c i a - M o l i n a , a n d J . W i d o m . O b j e c t e x c h a n g e a c r o s s h e t e r o g e n e o u s
i n f o r m a t i o n s o u r c e s . I n I E E E I n t e r n a t i o n a l C o n f e r e n c e o n D a t a E n g i n e e r i n g , M a r c h 1 9 9 5 .
Q R S
+
9 5 ] D . Q u a s s , A . R a j a r a m a n , Y . S a g i v , J . U l l m a n , a n d J . W i d o m . Q u e r y i n g s e m i s t r u c t u r e h e t e r o -
g e n e o u s i n f o r m a t i o n . I n I n t e r n a t i o n a l C o n f e r e n c e o n D e d u c t i v e a n d O b j e c t O r i e n t e d D a t a b a s e s ,
1 9 9 5 .
W o o 8 8 ] P e t e r T . W o o d . Q u e r i e s o n G r a p h s . P h D t h e s i s , U n i v e r s i t y o f T o r o n t o , T o r o n t o , C a n a d a , M 5 S
1 A 1 , D e c e m b e r 1 9 8 8 . A v a i l a b l e a s U n i v e r s i t y o f T o r o n t o T e c h n i c a l R e p o r t C S R I - 2 2 3 .