ÿþZ a a w a n s o w a n e S y s t e m y B a z D a n y c h Z S B D
B a z y d a n y c h d o k u m e n t ó w X M L
w y k Ba d 3 m o d y f i k a c j a d o k u m e n t ó w
W y k Ba d p r z y g o t o w a B:
K r z y s z t o f J a n k i e w i c z
B a z y d a n y c h d o k u m e n t ó w X M L w y k Ba d 3 m o d y f i k a c j a d o k u m e n t ó w
T r z e c i w y k Ba d d o t y c z c y b a z d a n y c h d o k u m e n t ó w X M L z o s t a n i e p o [w i c o n y s p o s o b o m
m o d y f i k a c j i d o k u m e n t ó w p r z e c h o w y w a n y c h w b a z a c h d a n y c h d o k u m e n t ó w X M L . J a k d o t e j
p o r y b r a k s t a n d a r d u t a k i e g o j z y k a , m i m o i | o d k i l k u l a t w y k o r z y s t y w a n y c h j e s t k i l k a b a r d z i e j
l u b m n i e j p o w s z e c h n y c h r o z w i z a D.
1
Z a a w a n s o w a n e S y s t e m y B a z D a n y c h Z S B D
S p o s o b y m o d y f i k a c j i d o k u m e n t ó w X M L
" P r o s t a w y m i a n a , w s t a w i a n i e , u s u w a n i e d o k u m e n t ó w
X M L
" D O M A P I
" J z y k i d e k l a r a t y w n e
X U p d a t e
R o z s z e r z e n i a X Q u e r y
B a z y d a n y c h d o k u m e n t ó w X M L w y k Ba d 3 m o d y f i k a c j a d o k u m e n t ó w ( 2 )
J a k d o t e j p o r y b r a k s t a n d a r d u j z y k a z a p y t a D p r z e z n a c z o n e g o d o m o d y f i k a c j i d o k u m e n t ó w
X M L w b a z a c h d a n y c h d o k u m e n t ó w X M L . C z e [ z b a z d a n y c h t e g o t y p u u d o s t p n i a j e d y n i e
m e c h a n i z m y p o z w a l a j c e n a w s t a w i a n i e , u s u w a n i e i w y m i a n c a By c h d o k u m e n t ó w .
M i m o b r a k u s t a n d a r d u u d o s t p n i a n e s r ó |n e g o r o d z a j u i n t e r f e j s y p o z w a l a j c e u |y t k o w n i k o m
n a z m i a n p r z e c h o w y w a n y c h w b a z a c h d a n y c h d o k u m e n t ó w X M L .
B a z y d a n y c h , k t ó r e u m o |l i w i m o d y f i k a c j f r a g m e n t ó w d o k u m e n t ó w X M L s t o s u j n a s t p u j c e
p o d e j [c i a :
- u m o |l i w i a j w y k o n y w a n i e o p e r a c j i D O M n a d o k u m e n t a c h w n i c h z a w a r t y c h ;
- u m o |l i w i a j w y k o r z y s t a n i e w y r a |e D X P a t h , k t ó r e w s k a z u j w z By , n a k t ó r y c h m o |n a
p r z e p r o w a d z i j e d n l u b w i e l e o p e r a c j i t a k i c h j a k :
* w s t a w i e n i e w z Ba p r z e d l u b p o w s k a z y w a n y c h p r z e z w y r a |e n i a X P a t h f r a g m e n t a c h ,
* m o d y f i k a c j a w s k a z y w a n e g o w z Ba ,
* u s u n i c i e w s k a z y w a n e g o w z Ba ,
* u t w o r z e n i e z m i e n n e j , k t ó r e j z a w a r t o [ b d z i e i d e n t y c z n a z e w s k a z y w a n y m w z Be m ,
* z m i a n a n a z w y z n a c z n i k a w s k a z y w a n e g o e l e m e n t u ,
- w y k o r z y s t a n i e r o z s z e r z e D j z y k a X Q u e r y ;
J z y k X U p d a t e n a l e |y d o d r u g i e j g r u p y p r o p o z y c j i i o n z o s t a n i e p r z e s t a w i o n y w r a m a c h t e g o
w y k Ba d u j a k o p i e r w s z y . D r u g a c z [ w y k Ba d u s k u p i s i n a p r o p o z y c j i r o z s z e r z e D j z y k a
X Q u e r y .
2
Z a a w a n s o w a n e S y s t e m y B a z D a n y c h Z S B D
X U p d a t e
" C e c h y :
d e k l a r a t y w n y
f o r m a t X M L
p r o s t o t a
" I n i c j a t y w a g r u p y X M L : D B
" W y k o r z y s t y w a n y p o w s z e c h n i e w b a z a c h d a n y c h
d o k u m e n t ó w X M L : d b X M L , A p a c h e X i n d i c e , e X i s t ,
X - H i v e / D B
B a z y d a n y c h d o k u m e n t ó w X M L w y k Ba d 3 m o d y f i k a c j a d o k u m e n t ó w ( 3 )
J z y k X U p d a t e j e s t j z y k i e m s t o s u n k o w o s z e r o k o r o z p o w s z e c h n i o n y m . J e g o p o d s t a w o w e
c e c h y t o :
- d e k l a r a t y w n y c h a r a k t e r j z y k a ,
- f o r m a t d o k u m e n t u X M L ,
- p r o s t o t a .
J z y k X U p d a t e p o w s t a B j a k o i n i c j a t y w a g r u p y X M L : D B . T a s a m a g r u p a s t w o r z y Ba X M L : D B A P I .
X U p d a t e j e s t p r z y k Ba d o w o w y k o r z y s t y w a n y w b a z a c h d a n y c h d o k u m e n t ó w X M L t a k i c h j a k :
d b X M L , A p a c h e , X i n d i c e , e X i s t , X - H i v e / D B .
3
Z a a w a n s o w a n e S y s t e m y B a z D a n y c h Z S B D
W y m a g a n i a d o t y c z c e z a s a d p r o j e k t o w y c h
j z y k a m o d y f i k a c j i ( X M L : D B )
" C z y t e l n y z a k r e s m o d y f i k a c j i
" P r o s t o t a
" Z g o d n o [ z e s t a n d a r d a m i
" R o z s z e r z a l n o [
" F o r m a t
" N i e z a l e |n o [ o d m o d e l i
" P r z e z n a c z e n i e
B a z y d a n y c h d o k u m e n t ó w X M L w y k Ba d 3 m o d y f i k a c j a d o k u m e n t ó w ( 4 )
A n a l o g i c z n i e d o w y m a g a D n a r z u c o n y c h j z y k o m z a p y t a D p r z e z n a c z o n y c h d l a b a z d a n y c h
d o k u m e n t ó w X M L p r z e z o r g a n i z a c j W 3 C , X M L : D B z d e f i n i o w a Ba w Ba s n e w y m a g a n i a
d o t y c z c e j z y k a m o d y f i k a c j i d o k u m e n t ó w X M L . W y m a g a n i a t e z o s t a By p o d z i e l o n e n a d w a
z a k r e s y : z a s a d y p r o j e k t o w e o r a z f u n k c j o n a l n o [.
W y m a g a n i a d o t y c z c e z a s a d p r o j e k t o w y c h s n a s t p u j c e :
- z a k r e s j z y k m o d y f i k a c j i m u s i o p i s y w a t o w j a k i s p o s ó b m a j b y w y k o n y w a n e z a p y t a n i a i
m o d y f i k a c j a z a w a r t o [c i X M L ;
- p r o s t o t a j z y k m o d y f i k a c j i p o w i n i e n b y p r o s t y , o d u |e j s i l e w y r a z u i c z y t e l n y d l a a u t o r a ;
- z g o d n o [ z e s t a n d a r d a m i j z y k m o d y f i k a c j i p o w i n i e n b y z g o d n y z e s t a n d a r d a m i
d o t y c z c y m i : p r z e s t r z e n i n a z w , w y r a |e D X P a t h , s t a n d a r d u X P o i n t e r ;
- r o z s z e r z a l n o [ m u s i b y o t w a r t y n a p r z y s z Be r o z s z e r z e n i a ;
- f o r m a t s p e c y f i k a c j a j z y k a m u s i b y e l e m e n t e m X M L ;
- n i e z a l e |n o [ o d m o d e l i s p e c y f i k a c j a j z y k a n i e m o |e b y z a p r o j e k t o w a n a w s p o s ó b
u z a l e |n i a j c y j z y k o d o b i e k t ó w X M L l u b m o d e l i p a r s e r ó w t a k i c h j a k D O M c z y S A X ;
- p r z e z n a c z e n i e j z y k m u s i b y z d o l n y d o w y k o n y w a n i a d z i a Ba D n a r z e c z c z [c i l u b c a Bo [c i
j e d n e g o l u b w i e l u d o k u m e n t ó w X M L ;
- i n t e g r a c j a r o z w ó j s p e c y f i k a c j i j z y k a m o d y f i k a c j i w y m a g a i n t e r a k c j i z i n n y m i g r u p a m i
r o b o c z y m i X M L : D B . W s z c z e g ó l n o [c i z g r u p r o b o c z X M L D a t a b a s e A P I W o r k i n g G r o u p .
4
Z a a w a n s o w a n e S y s t e m y B a z D a n y c h Z S B D
W y m a g a n i a d o t y c z c e f u n k c j o n a l n o [c i
j z y k a m o d y f i k a c j i ( X M L : D B )
" Z a p y t a n i a d o w s k a z y w a n i a w z Bó w
p r z e z n a c z o n y c h d o m o d y f i k a c j i
" M o d y f i k a c j a w s k a z a n y c h w z Bó w
" W s t a w i e n i e e l e m e n t ó w d o w s k a z a n y c h w z Bó w
" U s u w a n i e w s k a z a n y c h w z Bó w
" O g r a n i c z a n i e z b i o r u d o k u m e n t ó w
" O p e r a t o r y l o g i c z n e
" F u n k c j e i o p e r a t o r y
B a z y d a n y c h d o k u m e n t ó w X M L w y k Ba d 3 m o d y f i k a c j a d o k u m e n t ó w ( 5 )
O m ó w i m y t e r a z w y m a g a n i a d o t y c z c e f u n k c j o n a l n o [c i j z y k a . S o n e n a s t p u j c e :
- z a p y t a n i a j z y k m u s i u d o s t p n i a p r o s t f u n k c j o n a l n o [ d o t y c z c z a p y t a D. Z a p y t a n i e j e s t
w s t p n y m e t a p e m p o l e g a j c y m n a w y b r a n i u z b i o r u w z Bó w p r z e z n a c z o n y c h d o m o d y f i k a c j i ;
- m o d y f i k a c j a j z y k m u s i d e f i n i o w a m e c h a n i z m m o d y f i k a c j i . M o d y f i k a c j a j e s t w y r a |e n i e m
s p o s o b u m o d y f i k a c j i z a w a r t o [c i X M L w s k a z a n e j w z a p y t a n i u ;
- w s t a w i a n i e j z y k m u s i u m o |l i w i a w s t a w i a n i e n o w y c h e l e m e n t ó w X M L d o w z Bó w
u z y s k a n y c h w w y n i k u z a p y t a n i a ;
- u s u w a n i e j z y k m u s i u m o |l i w i a u s u w a n i e e l e m e n t ó w X M L z w z Bó w u z y s k a n y c h w w y n i k u
z a p y t a n i a ;
- o g r a n i c z a n i e j z y k m u s i p o s i a d a m e c h a n i z m y o g r a n i c z a j c e z b i ó r p r z e p y t y w a n y c h
d o k u m e n t ó w ;
- o p e r a t o r y l o g i c z n e j z y k m o d y f i k a c j i m u s i z a w i e r a z b i ó r o p e r a t o r ó w p r z e z n a c z o n y c h d o
o p e r a c j i l o g i c z n y c h . Z b i ó r t e n p o w i n i e n z a w i e r a t a k i e o p e r a t o r y j a k o ' a n d ' , ' n o t ' , ' o r ' ;
- l o g i k a j z y k p o w i n i e n u d o s t p n i a m i n i m a l n y z b i ó r o p e r a t o r ó w i f u n k c j i p o z w a l a j c y c h
o p e r o w a n a d a n y c h l i c z b o w y c h , d a t a c h i t p .
J z y k X U p d a t e o c z y w i [c i e s p e Bn i a w s z y s t k i e t e w y m a g a n i a .
5
Z a a w a n s o w a n e S y s t e m y B a z D a n y c h Z S B D
X U p d a t e
p o d s t a w o w e i n f o r m a c j e
" P r z e s t r z e D n a z w x u : h t t p : / / w w w . x m l d b . o r g / x u p d a t e
" P o l e c e n i a s k Ba d a j s i z d w ó c h c z [c i
s e l e k c j i z a p o m o c w y r a |e D X P a t h f r a g m e n t ó w
d o k u m e n t u , n a k t ó r y c h d o k o n a n a z o s t a n i e
m o d y f i k a c j a
o k r e [l e n i a s p o s o b u m o d y f i k a c j i w s k a z a n y c h w z Bó w ;
m o d y f i k a c j a m o |e m i e p o s t a :
" w s t a w i a n i a n o w y c h w z Bó w r o z b u d o w
d o k u m e n t ó w
" m o d y f i k a c j i z m i a n y z a w a r t o [c i d o k u m e n t ó w
" u s u w a n i a w z Bó w
B a z y d a n y c h d o k u m e n t ó w X M L w y k Ba d 3 m o d y f i k a c j a d o k u m e n t ó w ( 6 )
W s z y s t k i e p o l e c e n i a X U p d a t e z o s t a By u m i e s z c z o n e w p r z e s t r z e n i n a z w :
h t t p : / / w w w . x m l d b . o r g / x u p d a t e .
P o l e c e n i a d o t y c z c e m o d y f i k a c j i d o k u m e n t u X M L p r z e w a |n i e s k Ba d a j s i z d w ó c h c z [c i :
- z a d a n i e m p i e r w s z e j c z [c i j e s t w s k a z a n i e z a p o m o c w y r a |e D X P a t h t y c h f r a g m e n t ó w
d o k u m e n t u X M L , k t ó r e m a j p o d l e g a m o d y f i k a c j i l u b i n n e j o p e r a c j i ;
- z a d a n i e m d r u g i e j c z [c i p o l e c e n i a X U p d a t e j e s t p r z e w a |n i e o k r e [l e n i e s p o s o b u m o d y f i k a c j i
w s k a z a n y c h w z Bó w .
M o d y f i k a c j a d o k u m e n t ó w X M L z a p o m o c w y r a |e D X U p d a t e m o |e , m i d z y i n n y m i , m i e
p o s t a :
- w s t a w i a n i a n o w y c h w z Bó w r o z b u d o w d o k u m e n t ó w ,
- m o d y f i k a c j i z m i a n y z a w a r t o [c i w s k a z y w a n y c h w z Bó w ,
- u s u w a n i a w z Bó w .
6
Z a a w a n s o w a n e S y s t e m y B a z D a n y c h Z S B D
M o d y f i k a c j a
" P o l e c e n i e X U p d a t e r o z p o c z y n a s i o d e l e m e n t u
x u : m o d i f i c a t i o n s
" E l e m e n t x u : m o d i f i c a t i o n s m u s i p o s i a d a a t r y b u t v e r s i o n
d e k l a r u j c y w e r s j X U p d a t e . O b e c n a w e r s j a t o 1 . 0
" E l e m e n t x u : m o d i f i c a t i o n s m o |e z a w i e r a n a s t p u j c e
e l e m e n t y :
x u : i n s e r t - b e f o r e x u : r e m o v e
x u : r e n a m e
x u : i n s e r t - a f t e r
x u : v a r i a b l e
x u : a p p e n d
x u : v a l u e - o f
x u : u p d a t e
x u : i f
B a z y d a n y c h d o k u m e n t ó w X M L w y k Ba d 3 m o d y f i k a c j a d o k u m e n t ó w ( 7 )
P o l e c e n i e m o d y f i k a c j i w j z y k u X U p d a t e r o z p o c z y n a s i e l e m e n t e m x u : m o d i f i c a t i o n s , k t ó r y
o t a c z a s z c z e g ó Bo w e d y r e k t y w y d o t y c z c e k o n k r e t n y c h z m i a n .
E l e m e n t x u : m o d i f i c a t i o n s m u s i p o s i a d a a t r y b u t v e r s i o n d e k l a r u j c y w e r s j X U p d a t e . O b e c n a
w e r s j a t o 1 . 0 . D o d a t k o w o p o w i n i e n p o s i a d a d e k l a r a c j p r z e s t r z e n i n a z w X U p d a t e . Z r e g u By
d e k l a r a c j a p r z e s t r z e n i n a z w t w o r z y p r e f i k s o n a z w i e x u p d a t e , c h o m o |e p r z y j m o w a r ó w n i e |
i n n e w a r t o [c i , d l a p r z y k Ba d u x u . W d a l s z e j c z [c i w y k Ba d u b d z i e w y k o r z y s t y w a n y p r e f i k s x u .
E l e m e n t x u : m o d i f i c a t i o n s m o |e z a w i e r a n a s t p u j c e e l e m e n t y :
- x u : i n s e r t - b e f o r e ,
- x u : i n s e r t - a f t e r ,
- x u : a p p e n d ,
- x u : u p d a t e ,
- x u : r e m o v e ,
- x u : r e n a m e ,
- x u : v a r i a b l e ,
- x u : v a l u e - o f ,
- x u : i f .
Z n a c z e n i e w y m i e n i o n y c h e l e m e n t ó w z o s t a n i e s z c z e g ó Bo w o o m ó w i o n e n a n a s t p n y c h
s l a j d a c h .
7
Z a a w a n s o w a n e S y s t e m y B a z D a n y c h Z S B D
W s t a w i a n i e w z Bó w
" I s t n i e j d w i e p o d s t a w o w e i n s t r u k c j e p r z e z n a c z o n e d o
w s t a w i a n i a n o w y c h w z Bó w d o d o k u m e n t u :
x u : i n s e r t - b e f o r e
x u : i n s e r t - a f t e r
" O b i e i n s t r u k c j e ( e l e m e n t y ) w y m a g a j a t r y b u t u s e l e c t ,
k t ó r y z a p o m o c w y r a |e n i a X P a t h w s k a z u j e w z By p r z e d
k t ó r y m i , l u b p o k t ó r y c h m a z o s t a w s t a w i o n y n o w y w z e B
" W e w n t r z u e l e m e n t ó w x u : i n s e r t - b e f o r e i x u : i n s e r t - a f t e r
u m i e s z c z a n e s k o n s t r u k t o r y t w o r z c e w s t a w i a n e w z By .
B a z y d a n y c h d o k u m e n t ó w X M L w y k Ba d 3 m o d y f i k a c j a d o k u m e n t ó w ( 8 )
I s t n i e j d w i e p o d s t a w o w e i n s t r u k c j e p r z e z n a c z o n e d o w s t a w i a n i a n o w y c h w z Bó w d o
d o k u m e n t u :
- x u : i n s e r t - b e f o r e w s t a w i a n o w y w z e B p r z e d w s k a z a n y m i s t n i e j c y m j u | w z Be m
- x u : i n s e r t - a f t e r w s t a w i a n o w y w z e B b e z p o [r e d n i o p o w s k a z a n y m i s t n i e j c y m j u | w zl e
O b i e i n s t r u k c j e ( e l e m e n t y ) w y m a g a j a t r y b u t u s e l e c t , k t ó r y z a p o m o c w y r a |e n i a X P a t h
w s k a z u j e w z By p r z e d k t ó r y m i , l u b p o k t ó r y c h m a j z o s t a w s t a w i o n e n o w e w z By .
E l e m e n t y x u : i n s e r t - b e f o r e i x u : i n s e r t - a f t e r m o g z a w i e r a e l e m e n t y ( k o n s t r u k t o r y ) t w o r z c e
w z e B, k t ó r y m a z o s t a w s t a w i o n y . T y p n o w e g o w z Ba j e s t z a l e |n y o d u |y t e g o k o n s t r u k t o r a .
M o |l i w e k o n s t r u k t o r y t o :
- x u : e l e m e n t t w o r z y n o w y w z e B b d c y e l e m e n t e m ,
- x u : a t t r i b u t e t w o r z y n o w y w z e B b d c y a t r y b u t e m ,
- x u : t e x t t w o r z y n o w y w z e B t e k s t o w y ,
- x u : p r o c e s s i n g - i n s t r u c t i o n t w o r z y w z e B b d c y i n s t r u k c j p r z e t w a r z a n i a ,
- x u : c o m m e n t t w o r z y n o w y w z e B b d c y k o m e n t a r z e m .
N a n a s t p n y c h s l a j d a c h p r z e d s t a w i o n e z o s t a n p r z y k Ba d y w y k o r z y s t a n i a p o w y |s z y c h
k o n s t r u k t o r ó w .
8
Z a a w a n s o w a n e S y s t e m y B a z D a n y c h Z S B D
K o n s t r u k t o r e l e m e n t u ( 1 / 2 )
" E l e m e n t x u : e l e m e n t p o z w a l a n a u t w o r z e n i e e l e m e n t u .
A t r y b u t n a m e d e f i n i u j e n a z w n o w o t w o r z o n e g o
e l e m e n t u .
" P r z y k Ba d :
<