file27 paper

Embed Size (px)

Citation preview

  • 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 .