��u s i n g S y s t e m ;
n a m e s p a c e P u m a . X m l
{
p u b l i c c l a s s X m l X s d N o d e C o n s t r u c t o r : X m l X s d N o d e
{
i n t e r n a l X m l X s d N o d e C o n s t r u c t o r ( S y s t e m . X m l . X m l E l e m e n t P e r v S i b l i n g E l e m e n t , S y s t e m . X m l . S c h e m a . X m l S c h e m a E l e m e n t X m l S c h e m a E l e m e n t , X m l X s d N o d e P a r e n t ) : b a s e ( X m l S c h e m a E l e m e n t , P a r e n t )
{
S y s t e m . D i a g n o s t i c s . D e b u g . A s s e r t ( S a f e t y P a r e n t N o d e ! = n u l l ) ;
S y s t e m . X m l . X m l E l e m e n t n e w C h i l d = C r e a t e X m l E l e m e n t ( X m l S c h e m a E l e m e n t . N a m e ) ;
P a r e n t . X m l N o d e . X m l E l e m e n t . I n s e r t A f t e r ( n e w C h i l d , P e r v S i b l i n g E l e m e n t ) ;
b a s e . S e t X m l N o d e ( n e w C h i l d ) ;
i f ( ! I s C o m p l e x T y p e ) V a l u e = V a l u e C o n s t r u c t o r . C o n s t r u c t D e f a u l t V a l u e ( t h i s . X s d N o d e , X m l X s d D o c u m e n t . C o n s t r u c t P a r a m s . D e f V a l u e P a r a m s ) ;
b a s e . C r e a t e C h i l d s ( ) ;
}
i n t e r n a l X m l X s d N o d e C o n s t r u c t o r ( S y s t e m . X m l . S c h e m a . X m l S c h e m a E l e m e n t X m l S c h e m a E l e m e n t , X m l X s d D o c u m e n t X m l X s d D o c u m e n t )
: b a s e ( X m l S c h e m a E l e m e n t , X m l X s d D o c u m e n t )
{
S y s t e m . X m l . X m l D o c u m e n t x m l D o c u m e n t = X m l X s d D o c u m e n t . X m l D o c u m e n t ;
S y s t e m . X m l . X m l D e c l a r a t i o n x m l D e c l a r a t i o n = x m l D o c u m e n t . C r e a t e X m l D e c l a r a t i o n ( "