packages feed

hxt-relaxng 9.0.0 → 9.1.0

raw patch · 12 files changed

+8346/−8181 lines, 12 filesdep −directorydep ~hxtPVP ok

version bump matches the API change (PVP)

Dependencies removed: directory

Dependency ranges changed: hxt

API changes (from Hackage documentation)

- Text.XML.HXT.RelaxNG.BasicArrows: hasRngName :: ArrowXml a => String -> a XmlTree XmlTree
- Text.XML.HXT.RelaxNG.Validation: validateWithRelaxAndHandleErrors :: IOSArrow XmlTree XmlTree -> IOSArrow XmlTree XmlTree
- Text.XML.HXT.RelaxNG.Validator: validate :: String -> String -> IOSArrow n XmlTree
- Text.XML.HXT.RelaxNG.Validator: validateSchema :: String -> IOSArrow n XmlTree
- Text.XML.HXT.RelaxNG.Validator: validateWithoutSpezification :: String -> String -> IOSArrow n XmlTree
+ Text.XML.HXT.RelaxNG.BasicArrows: addRngAttrChanges :: ArrowXml a => String -> a XmlTree XmlTree
+ Text.XML.HXT.RelaxNG.BasicArrows: addRngAttrDescr :: ArrowXml a => String -> a XmlTree XmlTree
+ Text.XML.HXT.RelaxNG.BasicArrows: addRngAttrName :: ArrowXml a => String -> a XmlTree XmlTree
+ Text.XML.HXT.RelaxNG.BasicArrows: addRngAttrNs :: ArrowXml a => String -> a XmlTree XmlTree
+ Text.XML.HXT.RelaxNG.BasicArrows: hasRngAttName :: ArrowXml a => String -> a XmlTree XmlTree
+ Text.XML.HXT.RelaxNG.BasicArrows: hasRngAttrRelaxSimplificationChanges :: ArrowXml a => a XmlTree XmlTree
+ Text.XML.HXT.RelaxNG.BasicArrows: hasRngElemName :: ArrowXml a => String -> a XmlTree XmlTree
+ Text.XML.HXT.RelaxNG.BasicArrows: isRngAttrRelaxSimplificationChanges :: ArrowXml a => a XmlTree XmlTree
+ Text.XML.HXT.RelaxNG.BasicArrows: mkRngAttr :: ArrowXml a => String -> a b String -> a b XmlTree
+ Text.XML.HXT.RelaxNG.BasicArrows: mkRngAttrContextBase :: ArrowXml a => a b String -> a b XmlTree
+ Text.XML.HXT.RelaxNG.BasicArrows: mkRngAttrDefineOrigName :: ArrowXml a => String -> a b XmlTree
+ Text.XML.HXT.RelaxNG.BasicArrows: mkRngAttrName :: ArrowXml a => String -> a b XmlTree
+ Text.XML.HXT.RelaxNG.BasicArrows: mkRngAttrRelaxSimplificationChanges :: ArrowXml a => String -> a b XmlTree
+ Text.XML.HXT.RelaxNG.BasicArrows: rmRngAttrNs :: ArrowXml a => a XmlTree XmlTree
+ Text.XML.HXT.RelaxNG.DataTypes: contextAttributesDefault :: String
+ Text.XML.HXT.RelaxNG.Simplification: resetStates :: IOSArrow XmlTree XmlTree
+ Text.XML.HXT.RelaxNG.Validation: validateWithRelax :: IOSArrow XmlTree XmlTree -> IOSArrow XmlTree XmlTree
- Text.XML.HXT.RelaxNG.BasicArrows: mkRngRelaxError :: ArrowXml a => a n XmlTree -> a n XmlTree -> a n XmlTree
+ Text.XML.HXT.RelaxNG.BasicArrows: mkRngRelaxError :: ArrowXml a => a n XmlTree

Files

hxt-relaxng.cabal view
@@ -1,6 +1,6 @@ -- arch-tag: Haskell XML Toolbox main description file Name:           hxt-relaxng-Version:        9.0.0+Version:        9.1.0 Synopsis:       The HXT RelaxNG validator Description:    The HXT RelaxNG validator License:        OtherLicense@@ -57,20 +57,15 @@  hs-source-dirs: src   ghc-options: -Wall+ ghc-prof-options: -auto-all -caf-all   -- extensions: MultiParamTypeClasses DeriveDataTypeable FunctionalDependencies FlexibleInstances   build-depends: base       >= 4   && < 5,                 haskell98  >= 1   && < 2,                 containers >= 0.2 && < 1,-                directory  >= 1   && < 2,-                -- filepath   >= 1   && < 2,                 parsec     >= 2.1 && < 4,-                -- HUnit      >= 1.2 && < 2,                 network    >= 2.1 && < 3,-                -- deepseq    >= 1.1 && < 2,-                -- bytestring >= 0.9 && < 1,-                -- hxt-charproperties  >= 9 && < 10,-                hxt                 >= 9 && < 10,-                hxt-charproperties  >= 9 && < 10,-                hxt-regex-xmlschema >= 9 && < 10+                hxt                 >= 9.1   && < 10,+                hxt-charproperties  >= 9     && < 10,+                hxt-regex-xmlschema >= 9     && < 10
src/Text/XML/HXT/RelaxNG/BasicArrows.hs view
@@ -2,13 +2,12 @@  {- |    Module     : Text.XML.HXT.RelaxNG.BasicArrows-   Copyright  : Copyright (C) 2005 Uwe Schmidt+   Copyright  : Copyright (C) 2011 Uwe Schmidt    License    : MIT     Maintainer : Uwe Schmidt (uwe@fh-wedel.de)    Stability  : experimental    Portability: portable-   Version    : $Id$     Constants and basic arrows for Relax NG @@ -23,24 +22,36 @@  import Text.XML.HXT.DOM.Interface import Text.XML.HXT.Arrow.XmlArrow-    hiding-    ( mkText-    , mkError++import Text.XML.HXT.RelaxNG.DataTypes+    ( a_relaxSimplificationChanges+    , defineOrigName+    , contextBaseAttr     ) -hasRngName      :: ArrowXml a => String -> a XmlTree XmlTree-hasRngName s-    = hasName s-      `orElse`-      ( hasLocalPart s >>> hasNamespaceUri relaxNamespace )+-- ------------------------------------------------------------ +hasRngAttName           :: ArrowXml a => String -> a XmlTree XmlTree+hasRngAttName s+    = isAttr+      >>>+      hasLocalPart s+      >>>+      hasNamespaceUri ""++hasRngElemName          :: ArrowXml a => String -> a XmlTree XmlTree+hasRngElemName s+    = isElem+      >>>+      hasLocalPart s+      >>>+      hasNamespaceUri relaxNamespace+ checkRngName :: ArrowXml a => [String] -> a XmlTree XmlTree checkRngName l-    = ( isElem-        >>>-        catA (map hasRngName l)-      )-      `guards` this+    = catA (map hasRngElemName l)+      `guards`+      this  noOfChildren    :: ArrowXml a => (Int -> Bool) -> a XmlTree XmlTree noOfChildren p@@ -101,97 +112,97 @@ -- ------------------------------------------------------------  isRngAnyName            :: ArrowXml a => a XmlTree XmlTree-isRngAnyName            = isElem >>> hasRngName "anyName"+isRngAnyName            = hasRngElemName "anyName"  isRngAttribute          :: ArrowXml a => a XmlTree XmlTree-isRngAttribute          = isElem >>> hasRngName "attribute"+isRngAttribute          = hasRngElemName "attribute"  isRngChoice             :: ArrowXml a => a XmlTree XmlTree-isRngChoice             = isElem >>> hasRngName "choice"+isRngChoice             = hasRngElemName "choice"  isRngCombine            :: ArrowXml a => a XmlTree XmlTree-isRngCombine            = isElem >>> hasRngName "combine"+isRngCombine            = hasRngElemName "combine"  isRngData               :: ArrowXml a => a XmlTree XmlTree-isRngData               = isElem >>> hasRngName "data"+isRngData               = hasRngElemName "data"  isRngDefine             :: ArrowXml a => a XmlTree XmlTree-isRngDefine             = isElem >>> hasRngName "define"+isRngDefine             = hasRngElemName "define"  isRngDiv                :: ArrowXml a => a XmlTree XmlTree-isRngDiv                = isElem >>> hasRngName "div"+isRngDiv                = hasRngElemName "div"  isRngElement            :: ArrowXml a => a XmlTree XmlTree-isRngElement            = isElem >>> hasRngName "element"+isRngElement            = hasRngElemName "element"  isRngEmpty              :: ArrowXml a => a XmlTree XmlTree-isRngEmpty              = isElem >>> hasRngName "empty"+isRngEmpty              = hasRngElemName "empty"  isRngExcept             :: ArrowXml a => a XmlTree XmlTree-isRngExcept             = isElem >>> hasRngName "except"+isRngExcept             = hasRngElemName "except"  isRngExternalRef        :: ArrowXml a => a XmlTree XmlTree-isRngExternalRef        = isElem >>> hasRngName "externalRef"+isRngExternalRef        = hasRngElemName "externalRef"  isRngGrammar            :: ArrowXml a => a XmlTree XmlTree-isRngGrammar            = isElem >>> hasRngName "grammar"+isRngGrammar            = hasRngElemName "grammar"  isRngGroup              :: ArrowXml a => a XmlTree XmlTree-isRngGroup              = isElem >>> hasRngName "group"+isRngGroup              = hasRngElemName "group"  isRngInclude            :: ArrowXml a => a XmlTree XmlTree-isRngInclude            = isElem >>> hasRngName "include"+isRngInclude            = hasRngElemName "include"  isRngInterleave         :: ArrowXml a => a XmlTree XmlTree-isRngInterleave         = isElem >>> hasRngName "interleave"+isRngInterleave         = hasRngElemName "interleave"  isRngList               :: ArrowXml a => a XmlTree XmlTree-isRngList               = isElem >>> hasRngName "list"+isRngList               = hasRngElemName "list"  isRngMixed              :: ArrowXml a => a XmlTree XmlTree-isRngMixed              = isElem >>> hasRngName "mixed"+isRngMixed              = hasRngElemName "mixed"  isRngName               :: ArrowXml a => a XmlTree XmlTree-isRngName               = isElem >>> hasRngName "name"+isRngName               = hasRngElemName "name"  isRngNotAllowed         :: ArrowXml a => a XmlTree XmlTree-isRngNotAllowed         = isElem >>> hasRngName "notAllowed"+isRngNotAllowed         = hasRngElemName "notAllowed"  isRngNsName             :: ArrowXml a => a XmlTree XmlTree-isRngNsName             = isElem >>> hasRngName "nsName"+isRngNsName             = hasRngElemName "nsName"  isRngOneOrMore          :: ArrowXml a => a XmlTree XmlTree-isRngOneOrMore          = isElem >>> hasRngName "oneOrMore"+isRngOneOrMore          = hasRngElemName "oneOrMore"  isRngOptional           :: ArrowXml a => a XmlTree XmlTree-isRngOptional           = isElem >>> hasRngName "optional"+isRngOptional           = hasRngElemName "optional"  isRngParam              :: ArrowXml a => a XmlTree XmlTree-isRngParam              = isElem >>> hasRngName "param"+isRngParam              = hasRngElemName "param"  isRngParentRef          :: ArrowXml a => a XmlTree XmlTree-isRngParentRef          = isElem >>> hasRngName "parentRef"+isRngParentRef          = hasRngElemName "parentRef"  isRngRef                :: ArrowXml a => a XmlTree XmlTree-isRngRef                = isElem >>> hasRngName "ref"+isRngRef                = hasRngElemName "ref"  isRngRelaxError         :: ArrowXml a => a XmlTree XmlTree-isRngRelaxError         = isElem >>> hasRngName "relaxError"+isRngRelaxError         = hasRngElemName "relaxError"  isRngStart              :: ArrowXml a => a XmlTree XmlTree-isRngStart              = isElem >>> hasRngName "start"+isRngStart              = hasRngElemName "start"  isRngText               :: ArrowXml a => a XmlTree XmlTree-isRngText               = isElem >>> hasRngName "text"+isRngText               = hasRngElemName "text"  isRngType               :: ArrowXml a => a XmlTree XmlTree-isRngType               = isElem >>> hasRngName "type"+isRngType               = hasRngElemName "type"  isRngValue              :: ArrowXml a => a XmlTree XmlTree-isRngValue              = isElem >>> hasRngName "value"+isRngValue              = hasRngElemName "value"  isRngZeroOrMore         :: ArrowXml a => a XmlTree XmlTree-isRngZeroOrMore         = isElem >>> hasRngName "zeroOrMore"+isRngZeroOrMore         = hasRngElemName "zeroOrMore"  -- ------------------------------------------------------------ @@ -228,8 +239,8 @@ mkRngRef                :: ArrowXml a => a n XmlTree -> a n XmlTree -> a n XmlTree mkRngRef                = mkRngElement "ref" -mkRngRelaxError         :: ArrowXml a => a n XmlTree -> a n XmlTree -> a n XmlTree-mkRngRelaxError         = mkRngElement "relaxError"+mkRngRelaxError         :: ArrowXml a => a n XmlTree+mkRngRelaxError         = mkRngElement "relaxError" none none  mkRngStart              :: ArrowXml a => a n XmlTree -> a n XmlTree -> a n XmlTree mkRngStart              = mkRngElement "start"@@ -253,27 +264,66 @@ -- Attributes  isRngAttrAttribute              :: ArrowXml a => a XmlTree XmlTree-isRngAttrAttribute              = isAttr >>> hasRngName "attribute"+isRngAttrAttribute              = hasRngAttName "attribute"  isRngAttrCombine                :: ArrowXml a => a XmlTree XmlTree-isRngAttrCombine                = isAttr >>> hasRngName "combine"+isRngAttrCombine                = hasRngAttName "combine"  isRngAttrDatatypeLibrary        :: ArrowXml a => a XmlTree XmlTree-isRngAttrDatatypeLibrary        = isAttr >>> hasRngName "datatypeLibrary"+isRngAttrDatatypeLibrary        = hasRngAttName "datatypeLibrary"  isRngAttrHref                   :: ArrowXml a => a XmlTree XmlTree-isRngAttrHref                   = isAttr >>> hasRngName "href"+isRngAttrHref                   = hasRngAttName "href"  isRngAttrName                   :: ArrowXml a => a XmlTree XmlTree-isRngAttrName                   = isAttr >>> hasRngName "name"+isRngAttrName                   = hasRngAttName "name"  isRngAttrNs                     :: ArrowXml a => a XmlTree XmlTree-isRngAttrNs                     = isAttr >>> hasRngName "ns"+isRngAttrNs                     = hasRngAttName "ns"  isRngAttrType                   :: ArrowXml a => a XmlTree XmlTree-isRngAttrType                   = isAttr >>> hasRngName "type"+isRngAttrType                   = hasRngAttName "type" +isRngAttrRelaxSimplificationChanges     :: ArrowXml a => a XmlTree XmlTree+isRngAttrRelaxSimplificationChanges     = hasRngAttName a_relaxSimplificationChanges+ -- ------------------------------------------------------------++mkRngAttr                       :: ArrowXml a => String -> a b String -> a b XmlTree+mkRngAttr name value            = mkAttr (mkName name) (value >>> mkText)++mkRngAttrName                   :: ArrowXml a => String -> a b XmlTree+mkRngAttrName value             = mkRngAttr "name" (constA value)++mkRngAttrRelaxSimplificationChanges     :: ArrowXml a => String -> a b XmlTree+mkRngAttrRelaxSimplificationChanges value+                                = mkRngAttr a_relaxSimplificationChanges (constA value)++mkRngAttrDefineOrigName         :: ArrowXml a => String -> a b XmlTree+mkRngAttrDefineOrigName value   = mkRngAttr defineOrigName (constA value)++mkRngAttrContextBase            :: ArrowXml a => a b String -> a b XmlTree+mkRngAttrContextBase            = mkRngAttr contextBaseAttr++addRngAttrName                  :: ArrowXml a => String -> a XmlTree XmlTree+addRngAttrName value            = addAttr "name" value++addRngAttrDescr                 :: ArrowXml a => String -> a XmlTree XmlTree+addRngAttrDescr                 = addAttr "descr"++addRngAttrChanges               :: ArrowXml a => String -> a XmlTree XmlTree+addRngAttrChanges               = addAttr "changes"++addRngAttrNs                    :: ArrowXml a => String -> a XmlTree XmlTree+addRngAttrNs                    = addAttr "ns"++rmRngAttrNs                     :: ArrowXml a => a XmlTree XmlTree+rmRngAttrNs                     = removeAttr "ns"++-- ------------------------------------------------------------++hasRngAttrRelaxSimplificationChanges             :: ArrowXml a => a XmlTree XmlTree+hasRngAttrRelaxSimplificationChanges             = hasAttr a_relaxSimplificationChanges  hasRngAttrAttribute             :: ArrowXml a => a XmlTree XmlTree hasRngAttrAttribute             = hasAttr "attribute"
src/Text/XML/HXT/RelaxNG/CreatePattern.hs view
@@ -217,6 +217,7 @@   where   getContext :: LA XmlTree Context   getContext = getAttrValue contextBaseAttr &&& getMapping+   getMapping :: LA XmlTree [(Prefix, Uri)]   getMapping = listA $ getAttrl >>>                        ( (getName >>> isA (contextAttributes `isPrefixOf`))@@ -226,6 +227,7 @@                            (getChildren >>> getText)                          )                        )+   getValue :: LA XmlTree String   getValue = (getChildren >>> getText) `orElse` (constA "") 
src/Text/XML/HXT/RelaxNG/DataTypes.hs view
@@ -33,9 +33,11 @@ -- -- The value is always followed by the original attribute name and value -contextAttributes :: String-contextAttributes = "RelaxContext:"+contextAttributes               :: String+contextAttributes               = "RelaxContext-" +contextAttributesDefault        :: String+contextAttributesDefault        = "RelaxContextDefault"  -- | Start of base uri attribute value -- (see also: 'simplificationStep1' in "Text.XML.HXT.RelaxNG.Simplification")
src/Text/XML/HXT/RelaxNG/PatternToString.hs view
@@ -1,3 +1,5 @@+{-# OPTIONS_GHC -fno-warn-incomplete-patterns #-}+ module Text.XML.HXT.RelaxNG.PatternToString   ( patternToStringTree   , patternToFormatedString@@ -10,6 +12,7 @@  import Control.Arrow.ListArrows +import Data.Tree.Class                  ( formatTree ) import Data.Tree.NTree.TypeDefs  import Text.XML.HXT.DOM.Interface
src/Text/XML/HXT/RelaxNG/Schema.hs view
@@ -1,3916 +1,3968 @@-{- |-   Module     : Text.HXT.RelaxNG.Schema--   Don't edit this module, it's generated by RelaxSchemaToXmlTree---}--module Text.XML.HXT.RelaxNG.Schema-    ( relaxSchemaTree, relaxSchemaArrow )-where--import Text.XML.HXT.DOM.TypeDefs-import Text.XML.HXT.DOM.XmlNode (mkRoot, mkElement, mkAttr, mkText)--import Control.Arrow.ListArrows--relaxSchemaArrow :: ArrowList a => a b XmlTree-relaxSchemaArrow = constA relaxSchemaTree--relaxSchemaTree :: XmlTree-relaxSchemaTree =-  let-  ns1   = "http://relaxng.org/ns/structure/1.0"-  qn1   = mkSNsName "RelaxContext:xml"-  qn2   = mkSNsName "RelaxContextBaseURI"-  qn3   = mkSNsName "RelaxContextDefault"-  qn4   = mkNsName "anyName" ns1-  qn5   = mkNsName "attribute" ns1-  qn6   = mkNsName "choice" ns1-  qn7   = mkNsName "data" ns1-  qn8   = mkSNsName "datatypeLibrary"-  qn9   = mkNsName "define" ns1-  qn10  = mkNsName "element" ns1-  qn11  = mkNsName "empty" ns1-  qn12  = mkNsName "except" ns1-  qn13  = mkNsName "grammar" ns1-  qn14  = mkNsName "group" ns1-  qn15  = mkNsName "interleave" ns1-  qn16  = mkSNsName "name"-  qn17  = mkNsName "name" ns1-  qn18  = mkSNsName "ns"-  qn19  = mkNsName "nsName" ns1-  qn20  = mkNsName "oneOrMore" ns1-  qn21  = mkNsName "ref" ns1-  qn22  = mkNsName "start" ns1-  qn23  = mkNsName "text" ns1-  qn24  = mkSNsName "type"-  qn25  = mkNsName "value" ns1-  in-  mkRoot []-    [ mkElement qn13 []-      [ mkElement qn22 []-        [ mkElement qn6 []-          [ mkElement qn6 []-            [ mkElement qn6 []-              [ mkElement qn6 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn6 []-                          [ mkElement qn6 []-                            [ mkElement qn6 []-                              [ mkElement qn6 []-                                [ mkElement qn6 []-                                  [ mkElement qn6 []-                                    [ mkElement qn6 []-                                      [ mkElement qn6 []-                                        [ mkElement qn6 []-                                          [ mkElement qn6 []-                                            [ mkElement qn21-                                              [ mkAttr qn16 [ mkText "24" ]-                                              ] []-                                            , mkElement qn21-                                              [ mkAttr qn16 [ mkText "25" ]-                                              ] []-                                            ]-                                          , mkElement qn21-                                            [ mkAttr qn16 [ mkText "26" ]-                                            ] []-                                          ]-                                        , mkElement qn21-                                          [ mkAttr qn16 [ mkText "27" ]-                                          ] []-                                        ]-                                      , mkElement qn21-                                        [ mkAttr qn16 [ mkText "28" ]-                                        ] []-                                      ]-                                    , mkElement qn21-                                      [ mkAttr qn16 [ mkText "29" ]-                                      ] []-                                    ]-                                  , mkElement qn21-                                    [ mkAttr qn16 [ mkText "30" ]-                                    ] []-                                  ]-                                , mkElement qn21-                                  [ mkAttr qn16 [ mkText "31" ]-                                  ] []-                                ]-                              , mkElement qn21-                                [ mkAttr qn16 [ mkText "32" ]-                                ] []-                              ]-                            , mkElement qn21-                              [ mkAttr qn16 [ mkText "33" ]-                              ] []-                            ]-                          , mkElement qn21-                            [ mkAttr qn16 [ mkText "34" ]-                            ] []-                          ]-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "35" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "36" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "37" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "38" ]-                    ] []-                  ]-                , mkElement qn21-                  [ mkAttr qn16 [ mkText "39" ]-                  ] []-                ]-              , mkElement qn21-                [ mkAttr qn16 [ mkText "42" ]-                ] []-              ]-            , mkElement qn21-              [ mkAttr qn16 [ mkText "43" ]-              ] []-            ]-          , mkElement qn21-            [ mkAttr qn16 [ mkText "44" ]-            ] []-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "44" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "grammar"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "15" ]-                    ] []-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn21-                          [ mkAttr qn16 [ mkText "11" ]-                          ] []-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "10" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "22" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "23" ]-                      ] []-                    ]-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "43" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "externalRef"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn5 []-                [ mkElement qn17-                  [ mkAttr qn18 [ mkText "" ]-                  ]-                  [ mkText "href"-                  ]-                , mkElement qn7-                  [ mkAttr qn24 [ mkText "anyURI" ]-                  , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                  ] []-                ]-              , mkElement qn14 []-                [ mkElement qn14 []-                  [ mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "ns"-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  , mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "datatypeLibrary"-                        ]-                      , mkElement qn7-                        [ mkAttr qn24 [ mkText "anyURI" ]-                        , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                        ] []-                      ]-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn20 []-                    [ mkElement qn5 []-                      [ mkElement qn4 []-                        [ mkElement qn12 []-                          [ mkElement qn6 []-                            [ mkElement qn19-                              [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                              ] []-                            , mkElement qn19-                              [ mkAttr qn18 [ mkText "" ]-                              ] []-                            ]-                          ]-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  ]-                ]-              ]-            , mkElement qn6 []-              [ mkElement qn11 [] []-              , mkElement qn20 []-                [ mkElement qn21-                  [ mkAttr qn16 [ mkText "15" ]-                  ] []-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "42" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "notAllowed"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn6 []-              [ mkElement qn11 [] []-              , mkElement qn20 []-                [ mkElement qn21-                  [ mkAttr qn16 [ mkText "15" ]-                  ] []-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "39" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "data"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn5 []-                [ mkElement qn17-                  [ mkAttr qn18 [ mkText "" ]-                  ]-                  [ mkText "type"-                  ]-                , mkElement qn7-                  [ mkAttr qn24 [ mkText "NCName" ]-                  , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                  ] []-                ]-              , mkElement qn14 []-                [ mkElement qn14 []-                  [ mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "ns"-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  , mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "datatypeLibrary"-                        ]-                      , mkElement qn7-                        [ mkAttr qn24 [ mkText "anyURI" ]-                        , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                        ] []-                      ]-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn20 []-                    [ mkElement qn5 []-                      [ mkElement qn4 []-                        [ mkElement qn12 []-                          [ mkElement qn6 []-                            [ mkElement qn19-                              [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                              ] []-                            , mkElement qn19-                              [ mkAttr qn18 [ mkText "" ]-                              ] []-                            ]-                          ]-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "15" ]-                    ] []-                  ]-                ]-              , mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn20 []-                    [ mkElement qn21-                      [ mkAttr qn16 [ mkText "40" ]-                      ] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "41" ]-                    ] []-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "41" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "except"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "15" ]-                    ] []-                  ]-                ]-              , mkElement qn20 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn6 []-                          [ mkElement qn6 []-                            [ mkElement qn6 []-                              [ mkElement qn6 []-                                [ mkElement qn6 []-                                  [ mkElement qn6 []-                                    [ mkElement qn6 []-                                      [ mkElement qn6 []-                                        [ mkElement qn6 []-                                          [ mkElement qn6 []-                                            [ mkElement qn6 []-                                              [ mkElement qn6 []-                                                [ mkElement qn6 []-                                                  [ mkElement qn6 []-                                                    [ mkElement qn21-                                                      [ mkAttr qn16 [ mkText "24" ]-                                                      ] []-                                                    , mkElement qn21-                                                      [ mkAttr qn16 [ mkText "25" ]-                                                      ] []-                                                    ]-                                                  , mkElement qn21-                                                    [ mkAttr qn16 [ mkText "26" ]-                                                    ] []-                                                  ]-                                                , mkElement qn21-                                                  [ mkAttr qn16 [ mkText "27" ]-                                                  ] []-                                                ]-                                              , mkElement qn21-                                                [ mkAttr qn16 [ mkText "28" ]-                                                ] []-                                              ]-                                            , mkElement qn21-                                              [ mkAttr qn16 [ mkText "29" ]-                                              ] []-                                            ]-                                          , mkElement qn21-                                            [ mkAttr qn16 [ mkText "30" ]-                                            ] []-                                          ]-                                        , mkElement qn21-                                          [ mkAttr qn16 [ mkText "31" ]-                                          ] []-                                        ]-                                      , mkElement qn21-                                        [ mkAttr qn16 [ mkText "32" ]-                                        ] []-                                      ]-                                    , mkElement qn21-                                      [ mkAttr qn16 [ mkText "33" ]-                                      ] []-                                    ]-                                  , mkElement qn21-                                    [ mkAttr qn16 [ mkText "34" ]-                                    ] []-                                  ]-                                , mkElement qn21-                                  [ mkAttr qn16 [ mkText "35" ]-                                  ] []-                                ]-                              , mkElement qn21-                                [ mkAttr qn16 [ mkText "36" ]-                                ] []-                              ]-                            , mkElement qn21-                              [ mkAttr qn16 [ mkText "37" ]-                              ] []-                            ]-                          , mkElement qn21-                            [ mkAttr qn16 [ mkText "38" ]-                            ] []-                          ]-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "39" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "42" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "43" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "44" ]-                    ] []-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "40" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "param"-            ]-          , mkElement qn14 []-            [ mkElement qn5 []-              [ mkElement qn17-                [ mkAttr qn18 [ mkText "" ]-                ]-                [ mkText "name"-                ]-              , mkElement qn7-                [ mkAttr qn24 [ mkText "NCName" ]-                , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                ] []-              ]-            , mkElement qn23 [] []-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "38" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "value"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn5 []-                  [ mkElement qn17-                    [ mkAttr qn18 [ mkText "" ]-                    ]-                    [ mkText "type"-                    ]-                  , mkElement qn7-                    [ mkAttr qn24 [ mkText "NCName" ]-                    , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                    ] []-                  ]-                ]-              , mkElement qn14 []-                [ mkElement qn14 []-                  [ mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "ns"-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  , mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "datatypeLibrary"-                        ]-                      , mkElement qn7-                        [ mkAttr qn24 [ mkText "anyURI" ]-                        , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                        ] []-                      ]-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn20 []-                    [ mkElement qn5 []-                      [ mkElement qn4 []-                        [ mkElement qn12 []-                          [ mkElement qn6 []-                            [ mkElement qn19-                              [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                              ] []-                            , mkElement qn19-                              [ mkAttr qn18 [ mkText "" ]-                              ] []-                            ]-                          ]-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  ]-                ]-              ]-            , mkElement qn23 [] []-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "37" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "text"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn6 []-              [ mkElement qn11 [] []-              , mkElement qn20 []-                [ mkElement qn21-                  [ mkAttr qn16 [ mkText "15" ]-                  ] []-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "36" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "empty"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn6 []-              [ mkElement qn11 [] []-              , mkElement qn20 []-                [ mkElement qn21-                  [ mkAttr qn16 [ mkText "15" ]-                  ] []-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "35" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "parentRef"-            ]-          , mkElement qn14 []-            [ mkElement qn5 []-              [ mkElement qn17-                [ mkAttr qn18 [ mkText "" ]-                ]-                [ mkText "name"-                ]-              , mkElement qn7-                [ mkAttr qn24 [ mkText "NCName" ]-                , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                ] []-              ]-            , mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "34" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "ref"-            ]-          , mkElement qn14 []-            [ mkElement qn5 []-              [ mkElement qn17-                [ mkAttr qn18 [ mkText "" ]-                ]-                [ mkText "name"-                ]-              , mkElement qn7-                [ mkAttr qn24 [ mkText "NCName" ]-                , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                ] []-              ]-            , mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "33" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "mixed"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "15" ]-                    ] []-                  ]-                ]-              , mkElement qn20 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn6 []-                          [ mkElement qn6 []-                            [ mkElement qn6 []-                              [ mkElement qn6 []-                                [ mkElement qn6 []-                                  [ mkElement qn6 []-                                    [ mkElement qn6 []-                                      [ mkElement qn6 []-                                        [ mkElement qn6 []-                                          [ mkElement qn6 []-                                            [ mkElement qn6 []-                                              [ mkElement qn6 []-                                                [ mkElement qn6 []-                                                  [ mkElement qn6 []-                                                    [ mkElement qn21-                                                      [ mkAttr qn16 [ mkText "24" ]-                                                      ] []-                                                    , mkElement qn21-                                                      [ mkAttr qn16 [ mkText "25" ]-                                                      ] []-                                                    ]-                                                  , mkElement qn21-                                                    [ mkAttr qn16 [ mkText "26" ]-                                                    ] []-                                                  ]-                                                , mkElement qn21-                                                  [ mkAttr qn16 [ mkText "27" ]-                                                  ] []-                                                ]-                                              , mkElement qn21-                                                [ mkAttr qn16 [ mkText "28" ]-                                                ] []-                                              ]-                                            , mkElement qn21-                                              [ mkAttr qn16 [ mkText "29" ]-                                              ] []-                                            ]-                                          , mkElement qn21-                                            [ mkAttr qn16 [ mkText "30" ]-                                            ] []-                                          ]-                                        , mkElement qn21-                                          [ mkAttr qn16 [ mkText "31" ]-                                          ] []-                                        ]-                                      , mkElement qn21-                                        [ mkAttr qn16 [ mkText "32" ]-                                        ] []-                                      ]-                                    , mkElement qn21-                                      [ mkAttr qn16 [ mkText "33" ]-                                      ] []-                                    ]-                                  , mkElement qn21-                                    [ mkAttr qn16 [ mkText "34" ]-                                    ] []-                                  ]-                                , mkElement qn21-                                  [ mkAttr qn16 [ mkText "35" ]-                                  ] []-                                ]-                              , mkElement qn21-                                [ mkAttr qn16 [ mkText "36" ]-                                ] []-                              ]-                            , mkElement qn21-                              [ mkAttr qn16 [ mkText "37" ]-                              ] []-                            ]-                          , mkElement qn21-                            [ mkAttr qn16 [ mkText "38" ]-                            ] []-                          ]-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "39" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "42" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "43" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "44" ]-                    ] []-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "32" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "list"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "15" ]-                    ] []-                  ]-                ]-              , mkElement qn20 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn6 []-                          [ mkElement qn6 []-                            [ mkElement qn6 []-                              [ mkElement qn6 []-                                [ mkElement qn6 []-                                  [ mkElement qn6 []-                                    [ mkElement qn6 []-                                      [ mkElement qn6 []-                                        [ mkElement qn6 []-                                          [ mkElement qn6 []-                                            [ mkElement qn6 []-                                              [ mkElement qn6 []-                                                [ mkElement qn6 []-                                                  [ mkElement qn6 []-                                                    [ mkElement qn21-                                                      [ mkAttr qn16 [ mkText "24" ]-                                                      ] []-                                                    , mkElement qn21-                                                      [ mkAttr qn16 [ mkText "25" ]-                                                      ] []-                                                    ]-                                                  , mkElement qn21-                                                    [ mkAttr qn16 [ mkText "26" ]-                                                    ] []-                                                  ]-                                                , mkElement qn21-                                                  [ mkAttr qn16 [ mkText "27" ]-                                                  ] []-                                                ]-                                              , mkElement qn21-                                                [ mkAttr qn16 [ mkText "28" ]-                                                ] []-                                              ]-                                            , mkElement qn21-                                              [ mkAttr qn16 [ mkText "29" ]-                                              ] []-                                            ]-                                          , mkElement qn21-                                            [ mkAttr qn16 [ mkText "30" ]-                                            ] []-                                          ]-                                        , mkElement qn21-                                          [ mkAttr qn16 [ mkText "31" ]-                                          ] []-                                        ]-                                      , mkElement qn21-                                        [ mkAttr qn16 [ mkText "32" ]-                                        ] []-                                      ]-                                    , mkElement qn21-                                      [ mkAttr qn16 [ mkText "33" ]-                                      ] []-                                    ]-                                  , mkElement qn21-                                    [ mkAttr qn16 [ mkText "34" ]-                                    ] []-                                  ]-                                , mkElement qn21-                                  [ mkAttr qn16 [ mkText "35" ]-                                  ] []-                                ]-                              , mkElement qn21-                                [ mkAttr qn16 [ mkText "36" ]-                                ] []-                              ]-                            , mkElement qn21-                              [ mkAttr qn16 [ mkText "37" ]-                              ] []-                            ]-                          , mkElement qn21-                            [ mkAttr qn16 [ mkText "38" ]-                            ] []-                          ]-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "39" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "42" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "43" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "44" ]-                    ] []-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "31" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "oneOrMore"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "15" ]-                    ] []-                  ]-                ]-              , mkElement qn20 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn6 []-                          [ mkElement qn6 []-                            [ mkElement qn6 []-                              [ mkElement qn6 []-                                [ mkElement qn6 []-                                  [ mkElement qn6 []-                                    [ mkElement qn6 []-                                      [ mkElement qn6 []-                                        [ mkElement qn6 []-                                          [ mkElement qn6 []-                                            [ mkElement qn6 []-                                              [ mkElement qn6 []-                                                [ mkElement qn6 []-                                                  [ mkElement qn6 []-                                                    [ mkElement qn21-                                                      [ mkAttr qn16 [ mkText "24" ]-                                                      ] []-                                                    , mkElement qn21-                                                      [ mkAttr qn16 [ mkText "25" ]-                                                      ] []-                                                    ]-                                                  , mkElement qn21-                                                    [ mkAttr qn16 [ mkText "26" ]-                                                    ] []-                                                  ]-                                                , mkElement qn21-                                                  [ mkAttr qn16 [ mkText "27" ]-                                                  ] []-                                                ]-                                              , mkElement qn21-                                                [ mkAttr qn16 [ mkText "28" ]-                                                ] []-                                              ]-                                            , mkElement qn21-                                              [ mkAttr qn16 [ mkText "29" ]-                                              ] []-                                            ]-                                          , mkElement qn21-                                            [ mkAttr qn16 [ mkText "30" ]-                                            ] []-                                          ]-                                        , mkElement qn21-                                          [ mkAttr qn16 [ mkText "31" ]-                                          ] []-                                        ]-                                      , mkElement qn21-                                        [ mkAttr qn16 [ mkText "32" ]-                                        ] []-                                      ]-                                    , mkElement qn21-                                      [ mkAttr qn16 [ mkText "33" ]-                                      ] []-                                    ]-                                  , mkElement qn21-                                    [ mkAttr qn16 [ mkText "34" ]-                                    ] []-                                  ]-                                , mkElement qn21-                                  [ mkAttr qn16 [ mkText "35" ]-                                  ] []-                                ]-                              , mkElement qn21-                                [ mkAttr qn16 [ mkText "36" ]-                                ] []-                              ]-                            , mkElement qn21-                              [ mkAttr qn16 [ mkText "37" ]-                              ] []-                            ]-                          , mkElement qn21-                            [ mkAttr qn16 [ mkText "38" ]-                            ] []-                          ]-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "39" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "42" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "43" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "44" ]-                    ] []-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "30" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "zeroOrMore"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "15" ]-                    ] []-                  ]-                ]-              , mkElement qn20 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn6 []-                          [ mkElement qn6 []-                            [ mkElement qn6 []-                              [ mkElement qn6 []-                                [ mkElement qn6 []-                                  [ mkElement qn6 []-                                    [ mkElement qn6 []-                                      [ mkElement qn6 []-                                        [ mkElement qn6 []-                                          [ mkElement qn6 []-                                            [ mkElement qn6 []-                                              [ mkElement qn6 []-                                                [ mkElement qn6 []-                                                  [ mkElement qn6 []-                                                    [ mkElement qn21-                                                      [ mkAttr qn16 [ mkText "24" ]-                                                      ] []-                                                    , mkElement qn21-                                                      [ mkAttr qn16 [ mkText "25" ]-                                                      ] []-                                                    ]-                                                  , mkElement qn21-                                                    [ mkAttr qn16 [ mkText "26" ]-                                                    ] []-                                                  ]-                                                , mkElement qn21-                                                  [ mkAttr qn16 [ mkText "27" ]-                                                  ] []-                                                ]-                                              , mkElement qn21-                                                [ mkAttr qn16 [ mkText "28" ]-                                                ] []-                                              ]-                                            , mkElement qn21-                                              [ mkAttr qn16 [ mkText "29" ]-                                              ] []-                                            ]-                                          , mkElement qn21-                                            [ mkAttr qn16 [ mkText "30" ]-                                            ] []-                                          ]-                                        , mkElement qn21-                                          [ mkAttr qn16 [ mkText "31" ]-                                          ] []-                                        ]-                                      , mkElement qn21-                                        [ mkAttr qn16 [ mkText "32" ]-                                        ] []-                                      ]-                                    , mkElement qn21-                                      [ mkAttr qn16 [ mkText "33" ]-                                      ] []-                                    ]-                                  , mkElement qn21-                                    [ mkAttr qn16 [ mkText "34" ]-                                    ] []-                                  ]-                                , mkElement qn21-                                  [ mkAttr qn16 [ mkText "35" ]-                                  ] []-                                ]-                              , mkElement qn21-                                [ mkAttr qn16 [ mkText "36" ]-                                ] []-                              ]-                            , mkElement qn21-                              [ mkAttr qn16 [ mkText "37" ]-                              ] []-                            ]-                          , mkElement qn21-                            [ mkAttr qn16 [ mkText "38" ]-                            ] []-                          ]-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "39" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "42" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "43" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "44" ]-                    ] []-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "29" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "optional"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "15" ]-                    ] []-                  ]-                ]-              , mkElement qn20 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn6 []-                          [ mkElement qn6 []-                            [ mkElement qn6 []-                              [ mkElement qn6 []-                                [ mkElement qn6 []-                                  [ mkElement qn6 []-                                    [ mkElement qn6 []-                                      [ mkElement qn6 []-                                        [ mkElement qn6 []-                                          [ mkElement qn6 []-                                            [ mkElement qn6 []-                                              [ mkElement qn6 []-                                                [ mkElement qn6 []-                                                  [ mkElement qn6 []-                                                    [ mkElement qn21-                                                      [ mkAttr qn16 [ mkText "24" ]-                                                      ] []-                                                    , mkElement qn21-                                                      [ mkAttr qn16 [ mkText "25" ]-                                                      ] []-                                                    ]-                                                  , mkElement qn21-                                                    [ mkAttr qn16 [ mkText "26" ]-                                                    ] []-                                                  ]-                                                , mkElement qn21-                                                  [ mkAttr qn16 [ mkText "27" ]-                                                  ] []-                                                ]-                                              , mkElement qn21-                                                [ mkAttr qn16 [ mkText "28" ]-                                                ] []-                                              ]-                                            , mkElement qn21-                                              [ mkAttr qn16 [ mkText "29" ]-                                              ] []-                                            ]-                                          , mkElement qn21-                                            [ mkAttr qn16 [ mkText "30" ]-                                            ] []-                                          ]-                                        , mkElement qn21-                                          [ mkAttr qn16 [ mkText "31" ]-                                          ] []-                                        ]-                                      , mkElement qn21-                                        [ mkAttr qn16 [ mkText "32" ]-                                        ] []-                                      ]-                                    , mkElement qn21-                                      [ mkAttr qn16 [ mkText "33" ]-                                      ] []-                                    ]-                                  , mkElement qn21-                                    [ mkAttr qn16 [ mkText "34" ]-                                    ] []-                                  ]-                                , mkElement qn21-                                  [ mkAttr qn16 [ mkText "35" ]-                                  ] []-                                ]-                              , mkElement qn21-                                [ mkAttr qn16 [ mkText "36" ]-                                ] []-                              ]-                            , mkElement qn21-                              [ mkAttr qn16 [ mkText "37" ]-                              ] []-                            ]-                          , mkElement qn21-                            [ mkAttr qn16 [ mkText "38" ]-                            ] []-                          ]-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "39" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "42" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "43" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "44" ]-                    ] []-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "28" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "choice"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "15" ]-                    ] []-                  ]-                ]-              , mkElement qn20 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn6 []-                          [ mkElement qn6 []-                            [ mkElement qn6 []-                              [ mkElement qn6 []-                                [ mkElement qn6 []-                                  [ mkElement qn6 []-                                    [ mkElement qn6 []-                                      [ mkElement qn6 []-                                        [ mkElement qn6 []-                                          [ mkElement qn6 []-                                            [ mkElement qn6 []-                                              [ mkElement qn6 []-                                                [ mkElement qn6 []-                                                  [ mkElement qn6 []-                                                    [ mkElement qn21-                                                      [ mkAttr qn16 [ mkText "24" ]-                                                      ] []-                                                    , mkElement qn21-                                                      [ mkAttr qn16 [ mkText "25" ]-                                                      ] []-                                                    ]-                                                  , mkElement qn21-                                                    [ mkAttr qn16 [ mkText "26" ]-                                                    ] []-                                                  ]-                                                , mkElement qn21-                                                  [ mkAttr qn16 [ mkText "27" ]-                                                  ] []-                                                ]-                                              , mkElement qn21-                                                [ mkAttr qn16 [ mkText "28" ]-                                                ] []-                                              ]-                                            , mkElement qn21-                                              [ mkAttr qn16 [ mkText "29" ]-                                              ] []-                                            ]-                                          , mkElement qn21-                                            [ mkAttr qn16 [ mkText "30" ]-                                            ] []-                                          ]-                                        , mkElement qn21-                                          [ mkAttr qn16 [ mkText "31" ]-                                          ] []-                                        ]-                                      , mkElement qn21-                                        [ mkAttr qn16 [ mkText "32" ]-                                        ] []-                                      ]-                                    , mkElement qn21-                                      [ mkAttr qn16 [ mkText "33" ]-                                      ] []-                                    ]-                                  , mkElement qn21-                                    [ mkAttr qn16 [ mkText "34" ]-                                    ] []-                                  ]-                                , mkElement qn21-                                  [ mkAttr qn16 [ mkText "35" ]-                                  ] []-                                ]-                              , mkElement qn21-                                [ mkAttr qn16 [ mkText "36" ]-                                ] []-                              ]-                            , mkElement qn21-                              [ mkAttr qn16 [ mkText "37" ]-                              ] []-                            ]-                          , mkElement qn21-                            [ mkAttr qn16 [ mkText "38" ]-                            ] []-                          ]-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "39" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "42" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "43" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "44" ]-                    ] []-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "27" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "interleave"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "15" ]-                    ] []-                  ]-                ]-              , mkElement qn20 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn6 []-                          [ mkElement qn6 []-                            [ mkElement qn6 []-                              [ mkElement qn6 []-                                [ mkElement qn6 []-                                  [ mkElement qn6 []-                                    [ mkElement qn6 []-                                      [ mkElement qn6 []-                                        [ mkElement qn6 []-                                          [ mkElement qn6 []-                                            [ mkElement qn6 []-                                              [ mkElement qn6 []-                                                [ mkElement qn6 []-                                                  [ mkElement qn6 []-                                                    [ mkElement qn21-                                                      [ mkAttr qn16 [ mkText "24" ]-                                                      ] []-                                                    , mkElement qn21-                                                      [ mkAttr qn16 [ mkText "25" ]-                                                      ] []-                                                    ]-                                                  , mkElement qn21-                                                    [ mkAttr qn16 [ mkText "26" ]-                                                    ] []-                                                  ]-                                                , mkElement qn21-                                                  [ mkAttr qn16 [ mkText "27" ]-                                                  ] []-                                                ]-                                              , mkElement qn21-                                                [ mkAttr qn16 [ mkText "28" ]-                                                ] []-                                              ]-                                            , mkElement qn21-                                              [ mkAttr qn16 [ mkText "29" ]-                                              ] []-                                            ]-                                          , mkElement qn21-                                            [ mkAttr qn16 [ mkText "30" ]-                                            ] []-                                          ]-                                        , mkElement qn21-                                          [ mkAttr qn16 [ mkText "31" ]-                                          ] []-                                        ]-                                      , mkElement qn21-                                        [ mkAttr qn16 [ mkText "32" ]-                                        ] []-                                      ]-                                    , mkElement qn21-                                      [ mkAttr qn16 [ mkText "33" ]-                                      ] []-                                    ]-                                  , mkElement qn21-                                    [ mkAttr qn16 [ mkText "34" ]-                                    ] []-                                  ]-                                , mkElement qn21-                                  [ mkAttr qn16 [ mkText "35" ]-                                  ] []-                                ]-                              , mkElement qn21-                                [ mkAttr qn16 [ mkText "36" ]-                                ] []-                              ]-                            , mkElement qn21-                              [ mkAttr qn16 [ mkText "37" ]-                              ] []-                            ]-                          , mkElement qn21-                            [ mkAttr qn16 [ mkText "38" ]-                            ] []-                          ]-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "39" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "42" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "43" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "44" ]-                    ] []-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "26" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "group"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "15" ]-                    ] []-                  ]-                ]-              , mkElement qn20 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn6 []-                          [ mkElement qn6 []-                            [ mkElement qn6 []-                              [ mkElement qn6 []-                                [ mkElement qn6 []-                                  [ mkElement qn6 []-                                    [ mkElement qn6 []-                                      [ mkElement qn6 []-                                        [ mkElement qn6 []-                                          [ mkElement qn6 []-                                            [ mkElement qn6 []-                                              [ mkElement qn6 []-                                                [ mkElement qn6 []-                                                  [ mkElement qn6 []-                                                    [ mkElement qn21-                                                      [ mkAttr qn16 [ mkText "24" ]-                                                      ] []-                                                    , mkElement qn21-                                                      [ mkAttr qn16 [ mkText "25" ]-                                                      ] []-                                                    ]-                                                  , mkElement qn21-                                                    [ mkAttr qn16 [ mkText "26" ]-                                                    ] []-                                                  ]-                                                , mkElement qn21-                                                  [ mkAttr qn16 [ mkText "27" ]-                                                  ] []-                                                ]-                                              , mkElement qn21-                                                [ mkAttr qn16 [ mkText "28" ]-                                                ] []-                                              ]-                                            , mkElement qn21-                                              [ mkAttr qn16 [ mkText "29" ]-                                              ] []-                                            ]-                                          , mkElement qn21-                                            [ mkAttr qn16 [ mkText "30" ]-                                            ] []-                                          ]-                                        , mkElement qn21-                                          [ mkAttr qn16 [ mkText "31" ]-                                          ] []-                                        ]-                                      , mkElement qn21-                                        [ mkAttr qn16 [ mkText "32" ]-                                        ] []-                                      ]-                                    , mkElement qn21-                                      [ mkAttr qn16 [ mkText "33" ]-                                      ] []-                                    ]-                                  , mkElement qn21-                                    [ mkAttr qn16 [ mkText "34" ]-                                    ] []-                                  ]-                                , mkElement qn21-                                  [ mkAttr qn16 [ mkText "35" ]-                                  ] []-                                ]-                              , mkElement qn21-                                [ mkAttr qn16 [ mkText "36" ]-                                ] []-                              ]-                            , mkElement qn21-                              [ mkAttr qn16 [ mkText "37" ]-                              ] []-                            ]-                          , mkElement qn21-                            [ mkAttr qn16 [ mkText "38" ]-                            ] []-                          ]-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "39" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "42" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "43" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "44" ]-                    ] []-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "25" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "attribute"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn14 []-                  [ mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "ns"-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  , mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "datatypeLibrary"-                        ]-                      , mkElement qn7-                        [ mkAttr qn24 [ mkText "anyURI" ]-                        , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                        ] []-                      ]-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn20 []-                    [ mkElement qn5 []-                      [ mkElement qn4 []-                        [ mkElement qn12 []-                          [ mkElement qn6 []-                            [ mkElement qn19-                              [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                              ] []-                            , mkElement qn19-                              [ mkAttr qn18 [ mkText "" ]-                              ] []-                            ]-                          ]-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn5 []-                  [ mkElement qn17-                    [ mkAttr qn18 [ mkText "" ]-                    ]-                    [ mkText "name"-                    ]-                  , mkElement qn7-                    [ mkAttr qn24 [ mkText "QName" ]-                    , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                    ] []-                  ]-                , mkElement qn15 []-                  [ mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn20 []-                      [ mkElement qn21-                        [ mkAttr qn16 [ mkText "15" ]-                        ] []-                      ]-                    ]-                  , mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn21-                          [ mkAttr qn16 [ mkText "17" ]-                          ] []-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "18" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "19" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "20" ]-                      ] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "15" ]-                    ] []-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn6 []-                          [ mkElement qn6 []-                            [ mkElement qn6 []-                              [ mkElement qn6 []-                                [ mkElement qn6 []-                                  [ mkElement qn6 []-                                    [ mkElement qn6 []-                                      [ mkElement qn6 []-                                        [ mkElement qn6 []-                                          [ mkElement qn6 []-                                            [ mkElement qn6 []-                                              [ mkElement qn6 []-                                                [ mkElement qn6 []-                                                  [ mkElement qn6 []-                                                    [ mkElement qn21-                                                      [ mkAttr qn16 [ mkText "24" ]-                                                      ] []-                                                    , mkElement qn21-                                                      [ mkAttr qn16 [ mkText "25" ]-                                                      ] []-                                                    ]-                                                  , mkElement qn21-                                                    [ mkAttr qn16 [ mkText "26" ]-                                                    ] []-                                                  ]-                                                , mkElement qn21-                                                  [ mkAttr qn16 [ mkText "27" ]-                                                  ] []-                                                ]-                                              , mkElement qn21-                                                [ mkAttr qn16 [ mkText "28" ]-                                                ] []-                                              ]-                                            , mkElement qn21-                                              [ mkAttr qn16 [ mkText "29" ]-                                              ] []-                                            ]-                                          , mkElement qn21-                                            [ mkAttr qn16 [ mkText "30" ]-                                            ] []-                                          ]-                                        , mkElement qn21-                                          [ mkAttr qn16 [ mkText "31" ]-                                          ] []-                                        ]-                                      , mkElement qn21-                                        [ mkAttr qn16 [ mkText "32" ]-                                        ] []-                                      ]-                                    , mkElement qn21-                                      [ mkAttr qn16 [ mkText "33" ]-                                      ] []-                                    ]-                                  , mkElement qn21-                                    [ mkAttr qn16 [ mkText "34" ]-                                    ] []-                                  ]-                                , mkElement qn21-                                  [ mkAttr qn16 [ mkText "35" ]-                                  ] []-                                ]-                              , mkElement qn21-                                [ mkAttr qn16 [ mkText "36" ]-                                ] []-                              ]-                            , mkElement qn21-                              [ mkAttr qn16 [ mkText "37" ]-                              ] []-                            ]-                          , mkElement qn21-                            [ mkAttr qn16 [ mkText "38" ]-                            ] []-                          ]-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "39" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "42" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "43" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "44" ]-                    ] []-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "24" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "element"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn6 []-                [ mkElement qn5 []-                  [ mkElement qn17-                    [ mkAttr qn18 [ mkText "" ]-                    ]-                    [ mkText "name"-                    ]-                  , mkElement qn7-                    [ mkAttr qn24 [ mkText "QName" ]-                    , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                    ] []-                  ]-                , mkElement qn15 []-                  [ mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn20 []-                      [ mkElement qn21-                        [ mkAttr qn16 [ mkText "15" ]-                        ] []-                      ]-                    ]-                  , mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn21-                          [ mkAttr qn16 [ mkText "17" ]-                          ] []-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "18" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "19" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "20" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn14 []-                [ mkElement qn14 []-                  [ mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "ns"-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  , mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "datatypeLibrary"-                        ]-                      , mkElement qn7-                        [ mkAttr qn24 [ mkText "anyURI" ]-                        , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                        ] []-                      ]-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn20 []-                    [ mkElement qn5 []-                      [ mkElement qn4 []-                        [ mkElement qn12 []-                          [ mkElement qn6 []-                            [ mkElement qn19-                              [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                              ] []-                            , mkElement qn19-                              [ mkAttr qn18 [ mkText "" ]-                              ] []-                            ]-                          ]-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "15" ]-                    ] []-                  ]-                ]-              , mkElement qn20 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn6 []-                          [ mkElement qn6 []-                            [ mkElement qn6 []-                              [ mkElement qn6 []-                                [ mkElement qn6 []-                                  [ mkElement qn6 []-                                    [ mkElement qn6 []-                                      [ mkElement qn6 []-                                        [ mkElement qn6 []-                                          [ mkElement qn6 []-                                            [ mkElement qn6 []-                                              [ mkElement qn6 []-                                                [ mkElement qn6 []-                                                  [ mkElement qn6 []-                                                    [ mkElement qn21-                                                      [ mkAttr qn16 [ mkText "24" ]-                                                      ] []-                                                    , mkElement qn21-                                                      [ mkAttr qn16 [ mkText "25" ]-                                                      ] []-                                                    ]-                                                  , mkElement qn21-                                                    [ mkAttr qn16 [ mkText "26" ]-                                                    ] []-                                                  ]-                                                , mkElement qn21-                                                  [ mkAttr qn16 [ mkText "27" ]-                                                  ] []-                                                ]-                                              , mkElement qn21-                                                [ mkAttr qn16 [ mkText "28" ]-                                                ] []-                                              ]-                                            , mkElement qn21-                                              [ mkAttr qn16 [ mkText "29" ]-                                              ] []-                                            ]-                                          , mkElement qn21-                                            [ mkAttr qn16 [ mkText "30" ]-                                            ] []-                                          ]-                                        , mkElement qn21-                                          [ mkAttr qn16 [ mkText "31" ]-                                          ] []-                                        ]-                                      , mkElement qn21-                                        [ mkAttr qn16 [ mkText "32" ]-                                        ] []-                                      ]-                                    , mkElement qn21-                                      [ mkAttr qn16 [ mkText "33" ]-                                      ] []-                                    ]-                                  , mkElement qn21-                                    [ mkAttr qn16 [ mkText "34" ]-                                    ] []-                                  ]-                                , mkElement qn21-                                  [ mkAttr qn16 [ mkText "35" ]-                                  ] []-                                ]-                              , mkElement qn21-                                [ mkAttr qn16 [ mkText "36" ]-                                ] []-                              ]-                            , mkElement qn21-                              [ mkAttr qn16 [ mkText "37" ]-                              ] []-                            ]-                          , mkElement qn21-                            [ mkAttr qn16 [ mkText "38" ]-                            ] []-                          ]-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "39" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "42" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "43" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "44" ]-                    ] []-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "23" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "include"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn5 []-                [ mkElement qn17-                  [ mkAttr qn18 [ mkText "" ]-                  ]-                  [ mkText "href"-                  ]-                , mkElement qn7-                  [ mkAttr qn24 [ mkText "anyURI" ]-                  , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                  ] []-                ]-              , mkElement qn14 []-                [ mkElement qn14 []-                  [ mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "ns"-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  , mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "datatypeLibrary"-                        ]-                      , mkElement qn7-                        [ mkAttr qn24 [ mkText "anyURI" ]-                        , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                        ] []-                      ]-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn20 []-                    [ mkElement qn5 []-                      [ mkElement qn4 []-                        [ mkElement qn12 []-                          [ mkElement qn6 []-                            [ mkElement qn19-                              [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                              ] []-                            , mkElement qn19-                              [ mkAttr qn18 [ mkText "" ]-                              ] []-                            ]-                          ]-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "15" ]-                    ] []-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn21-                        [ mkAttr qn16 [ mkText "11" ]-                        ] []-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "10" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "21" ]-                      ] []-                    ]-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "22" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "div"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "15" ]-                    ] []-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn21-                          [ mkAttr qn16 [ mkText "11" ]-                          ] []-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "10" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "22" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "23" ]-                      ] []-                    ]-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "21" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "div"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "15" ]-                    ] []-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn21-                        [ mkAttr qn16 [ mkText "11" ]-                        ] []-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "10" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "21" ]-                      ] []-                    ]-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "20" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "choice"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "15" ]-                    ] []-                  ]-                ]-              , mkElement qn20 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn21-                        [ mkAttr qn16 [ mkText "17" ]-                        ] []-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "18" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "19" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "20" ]-                    ] []-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "19" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "nsName"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "15" ]-                    ] []-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn21-                  [ mkAttr qn16 [ mkText "16" ]-                  ] []-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "18" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "anyName"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "15" ]-                    ] []-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn21-                  [ mkAttr qn16 [ mkText "16" ]-                  ] []-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "17" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "name"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn7-              [ mkAttr qn24 [ mkText "QName" ]-              , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-              ] []-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "16" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "except"-            ]-          , mkElement qn15 []-            [ mkElement qn6 []-              [ mkElement qn11 [] []-              , mkElement qn20 []-                [ mkElement qn21-                  [ mkAttr qn16 [ mkText "15" ]-                  ] []-                ]-              ]-            , mkElement qn20 []-              [ mkElement qn6 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn21-                      [ mkAttr qn16 [ mkText "17" ]-                      ] []-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "18" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "19" ]-                    ] []-                  ]-                , mkElement qn21-                  [ mkAttr qn16 [ mkText "20" ]-                  ] []-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "15" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn4 []-            [ mkElement qn12 []-              [ mkElement qn19-                [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                ] []-              ]-            ]-          , mkElement qn6 []-            [ mkElement qn11 [] []-            , mkElement qn20 []-              [ mkElement qn6 []-                [ mkElement qn6 []-                  [ mkElement qn5 []-                    [ mkElement qn4 [] []-                    , mkElement qn23 [] []-                    ]-                  , mkElement qn23 [] []-                  ]-                , mkElement qn21-                  [ mkAttr qn16 [ mkText "0" ]-                  ] []-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "0" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn4 [] []-          , mkElement qn6 []-            [ mkElement qn11 [] []-            , mkElement qn20 []-              [ mkElement qn6 []-                [ mkElement qn6 []-                  [ mkElement qn5 []-                    [ mkElement qn4 [] []-                    , mkElement qn23 [] []-                    ]-                  , mkElement qn23 [] []-                  ]-                , mkElement qn21-                  [ mkAttr qn16 [ mkText "0" ]-                  ] []-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "10" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "define"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn5 []-                  [ mkElement qn17-                    [ mkAttr qn18 [ mkText "" ]-                    ]-                    [ mkText "name"-                    ]-                  , mkElement qn7-                    [ mkAttr qn24 [ mkText "NCName" ]-                    , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                    ] []-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "combine"-                      ]-                    , mkElement qn6 []-                      [ mkElement qn25-                        [ mkAttr qn1 [ mkText "http://www.w3.org/XML/1998/namespace" ]-                        , mkAttr qn3 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                        , mkAttr qn2 [ mkText "file:///home/uwe/haskell/hxt/curr/src/Text/XML/HXT/RelaxNG/schema2hs/Schema.rng" ]-                        , mkAttr qn8 [ mkText "" ]-                        , mkAttr qn24 [ mkText "token" ]-                        , mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                        ]-                        [ mkText "choice"-                        ]-                      , mkElement qn25-                        [ mkAttr qn1 [ mkText "http://www.w3.org/XML/1998/namespace" ]-                        , mkAttr qn3 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                        , mkAttr qn2 [ mkText "file:///home/uwe/haskell/hxt/curr/src/Text/XML/HXT/RelaxNG/schema2hs/Schema.rng" ]-                        , mkAttr qn8 [ mkText "" ]-                        , mkAttr qn24 [ mkText "token" ]-                        , mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                        ]-                        [ mkText "interleave"-                        ]-                      ]-                    ]-                  ]-                ]-              , mkElement qn14 []-                [ mkElement qn14 []-                  [ mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "ns"-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  , mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "datatypeLibrary"-                        ]-                      , mkElement qn7-                        [ mkAttr qn24 [ mkText "anyURI" ]-                        , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                        ] []-                      ]-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn20 []-                    [ mkElement qn5 []-                      [ mkElement qn4 []-                        [ mkElement qn12 []-                          [ mkElement qn6 []-                            [ mkElement qn19-                              [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                              ] []-                            , mkElement qn19-                              [ mkAttr qn18 [ mkText "" ]-                              ] []-                            ]-                          ]-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "15" ]-                    ] []-                  ]-                ]-              , mkElement qn20 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn6 []-                          [ mkElement qn6 []-                            [ mkElement qn6 []-                              [ mkElement qn6 []-                                [ mkElement qn6 []-                                  [ mkElement qn6 []-                                    [ mkElement qn6 []-                                      [ mkElement qn6 []-                                        [ mkElement qn6 []-                                          [ mkElement qn6 []-                                            [ mkElement qn6 []-                                              [ mkElement qn6 []-                                                [ mkElement qn6 []-                                                  [ mkElement qn6 []-                                                    [ mkElement qn21-                                                      [ mkAttr qn16 [ mkText "24" ]-                                                      ] []-                                                    , mkElement qn21-                                                      [ mkAttr qn16 [ mkText "25" ]-                                                      ] []-                                                    ]-                                                  , mkElement qn21-                                                    [ mkAttr qn16 [ mkText "26" ]-                                                    ] []-                                                  ]-                                                , mkElement qn21-                                                  [ mkAttr qn16 [ mkText "27" ]-                                                  ] []-                                                ]-                                              , mkElement qn21-                                                [ mkAttr qn16 [ mkText "28" ]-                                                ] []-                                              ]-                                            , mkElement qn21-                                              [ mkAttr qn16 [ mkText "29" ]-                                              ] []-                                            ]-                                          , mkElement qn21-                                            [ mkAttr qn16 [ mkText "30" ]-                                            ] []-                                          ]-                                        , mkElement qn21-                                          [ mkAttr qn16 [ mkText "31" ]-                                          ] []-                                        ]-                                      , mkElement qn21-                                        [ mkAttr qn16 [ mkText "32" ]-                                        ] []-                                      ]-                                    , mkElement qn21-                                      [ mkAttr qn16 [ mkText "33" ]-                                      ] []-                                    ]-                                  , mkElement qn21-                                    [ mkAttr qn16 [ mkText "34" ]-                                    ] []-                                  ]-                                , mkElement qn21-                                  [ mkAttr qn16 [ mkText "35" ]-                                  ] []-                                ]-                              , mkElement qn21-                                [ mkAttr qn16 [ mkText "36" ]-                                ] []-                              ]-                            , mkElement qn21-                              [ mkAttr qn16 [ mkText "37" ]-                              ] []-                            ]-                          , mkElement qn21-                            [ mkAttr qn16 [ mkText "38" ]-                            ] []-                          ]-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "39" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "42" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "43" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "44" ]-                    ] []-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "11" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "start"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn5 []-                  [ mkElement qn17-                    [ mkAttr qn18 [ mkText "" ]-                    ]-                    [ mkText "combine"-                    ]-                  , mkElement qn6 []-                    [ mkElement qn25-                      [ mkAttr qn1 [ mkText "http://www.w3.org/XML/1998/namespace" ]-                      , mkAttr qn3 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                      , mkAttr qn2 [ mkText "file:///home/uwe/haskell/hxt/curr/src/Text/XML/HXT/RelaxNG/schema2hs/Schema.rng" ]-                      , mkAttr qn8 [ mkText "" ]-                      , mkAttr qn24 [ mkText "token" ]-                      , mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                      ]-                      [ mkText "choice"-                      ]-                    , mkElement qn25-                      [ mkAttr qn1 [ mkText "http://www.w3.org/XML/1998/namespace" ]-                      , mkAttr qn3 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                      , mkAttr qn2 [ mkText "file:///home/uwe/haskell/hxt/curr/src/Text/XML/HXT/RelaxNG/schema2hs/Schema.rng" ]-                      , mkAttr qn8 [ mkText "" ]-                      , mkAttr qn24 [ mkText "token" ]-                      , mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                      ]-                      [ mkText "interleave"-                      ]-                    ]-                  ]-                ]-              , mkElement qn14 []-                [ mkElement qn14 []-                  [ mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "ns"-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  , mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "datatypeLibrary"-                        ]-                      , mkElement qn7-                        [ mkAttr qn24 [ mkText "anyURI" ]-                        , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                        ] []-                      ]-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn20 []-                    [ mkElement qn5 []-                      [ mkElement qn4 []-                        [ mkElement qn12 []-                          [ mkElement qn6 []-                            [ mkElement qn19-                              [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                              ] []-                            , mkElement qn19-                              [ mkAttr qn18 [ mkText "" ]-                              ] []-                            ]-                          ]-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "15" ]-                    ] []-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn6 []-                          [ mkElement qn6 []-                            [ mkElement qn6 []-                              [ mkElement qn6 []-                                [ mkElement qn6 []-                                  [ mkElement qn6 []-                                    [ mkElement qn6 []-                                      [ mkElement qn6 []-                                        [ mkElement qn6 []-                                          [ mkElement qn6 []-                                            [ mkElement qn6 []-                                              [ mkElement qn6 []-                                                [ mkElement qn6 []-                                                  [ mkElement qn21-                                                    [ mkAttr qn16 [ mkText "24" ]-                                                    ] []-                                                  , mkElement qn21-                                                    [ mkAttr qn16 [ mkText "25" ]-                                                    ] []-                                                  ]-                                                , mkElement qn21-                                                  [ mkAttr qn16 [ mkText "26" ]-                                                  ] []-                                                ]-                                              , mkElement qn21-                                                [ mkAttr qn16 [ mkText "27" ]-                                                ] []-                                              ]-                                            , mkElement qn21-                                              [ mkAttr qn16 [ mkText "28" ]-                                              ] []-                                            ]-                                          , mkElement qn21-                                            [ mkAttr qn16 [ mkText "29" ]-                                            ] []-                                          ]-                                        , mkElement qn21-                                          [ mkAttr qn16 [ mkText "30" ]-                                          ] []-                                        ]-                                      , mkElement qn21-                                        [ mkAttr qn16 [ mkText "31" ]-                                        ] []-                                      ]-                                    , mkElement qn21-                                      [ mkAttr qn16 [ mkText "32" ]-                                      ] []-                                    ]-                                  , mkElement qn21-                                    [ mkAttr qn16 [ mkText "33" ]-                                    ] []-                                  ]-                                , mkElement qn21-                                  [ mkAttr qn16 [ mkText "34" ]-                                  ] []-                                ]-                              , mkElement qn21-                                [ mkAttr qn16 [ mkText "35" ]-                                ] []-                              ]-                            , mkElement qn21-                              [ mkAttr qn16 [ mkText "36" ]-                              ] []-                            ]-                          , mkElement qn21-                            [ mkAttr qn16 [ mkText "37" ]-                            ] []-                          ]-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "38" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "39" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "42" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "43" ]-                    ] []-                  ]-                , mkElement qn21-                  [ mkAttr qn16 [ mkText "44" ]+{-# OPTIONS_GHC -fno-warn-unused-binds #-}++{- |+   Module     : Text.HXT.RelaxNG.Schema++   Don't edit this module, it's generated by RelaxSchemaToXmlTree++-}++module Text.XML.HXT.RelaxNG.Schema+    ( relaxSchemaTree, relaxSchemaArrow )+where++import Text.XML.HXT.DOM.TypeDefs+import Text.XML.HXT.DOM.XmlNode (mkRoot, mkElement, mkAttr, mkText)++import Control.Arrow.ListArrows++relaxSchemaArrow :: ArrowList a => a b XmlTree+relaxSchemaArrow = constA relaxSchemaTree++relaxSchemaTree :: XmlTree+relaxSchemaTree =+  let+  ns1 = "http://relaxng.org/ns/structure/1.0"+  qn1        = mkName   "RelaxContext-xml"+  mkelem_qn1 = mkElement qn1+  mkattr_qn1 = mkAttr    qn1+  qn2        = mkName   "RelaxContextBaseURI"+  mkelem_qn2 = mkElement qn2+  mkattr_qn2 = mkAttr    qn2+  qn3        = mkName   "RelaxContextDefault"+  mkelem_qn3 = mkElement qn3+  mkattr_qn3 = mkAttr    qn3+  qn4        = mkNsName "anyName" ns1+  mkelem_qn4 = mkElement qn4+  mkattr_qn4 = mkAttr    qn4+  qn5        = mkNsName "attribute" ns1+  mkelem_qn5 = mkElement qn5+  mkattr_qn5 = mkAttr    qn5+  qn6        = mkNsName "choice" ns1+  mkelem_qn6 = mkElement qn6+  mkattr_qn6 = mkAttr    qn6+  qn7        = mkNsName "data" ns1+  mkelem_qn7 = mkElement qn7+  mkattr_qn7 = mkAttr    qn7+  qn8        = mkName   "datatypeLibrary"+  mkelem_qn8 = mkElement qn8+  mkattr_qn8 = mkAttr    qn8+  qn9        = mkNsName "define" ns1+  mkelem_qn9 = mkElement qn9+  mkattr_qn9 = mkAttr    qn9+  qn10        = mkNsName "element" ns1+  mkelem_qn10 = mkElement qn10+  mkattr_qn10 = mkAttr    qn10+  qn11        = mkNsName "empty" ns1+  mkelem_qn11 = mkElement qn11+  mkattr_qn11 = mkAttr    qn11+  qn12        = mkNsName "except" ns1+  mkelem_qn12 = mkElement qn12+  mkattr_qn12 = mkAttr    qn12+  qn13        = mkNsName "grammar" ns1+  mkelem_qn13 = mkElement qn13+  mkattr_qn13 = mkAttr    qn13+  qn14        = mkNsName "group" ns1+  mkelem_qn14 = mkElement qn14+  mkattr_qn14 = mkAttr    qn14+  qn15        = mkNsName "interleave" ns1+  mkelem_qn15 = mkElement qn15+  mkattr_qn15 = mkAttr    qn15+  qn16        = mkName   "name"+  mkelem_qn16 = mkElement qn16+  mkattr_qn16 = mkAttr    qn16+  qn17        = mkNsName "name" ns1+  mkelem_qn17 = mkElement qn17+  mkattr_qn17 = mkAttr    qn17+  qn18        = mkName   "ns"+  mkelem_qn18 = mkElement qn18+  mkattr_qn18 = mkAttr    qn18+  qn19        = mkNsName "nsName" ns1+  mkelem_qn19 = mkElement qn19+  mkattr_qn19 = mkAttr    qn19+  qn20        = mkNsName "oneOrMore" ns1+  mkelem_qn20 = mkElement qn20+  mkattr_qn20 = mkAttr    qn20+  qn21        = mkNsName "ref" ns1+  mkelem_qn21 = mkElement qn21+  mkattr_qn21 = mkAttr    qn21+  qn22        = mkNsName "start" ns1+  mkelem_qn22 = mkElement qn22+  mkattr_qn22 = mkAttr    qn22+  qn23        = mkNsName "text" ns1+  mkelem_qn23 = mkElement qn23+  mkattr_qn23 = mkAttr    qn23+  qn24        = mkName   "type"+  mkelem_qn24 = mkElement qn24+  mkattr_qn24 = mkAttr    qn24+  qn25        = mkNsName "value" ns1+  mkelem_qn25 = mkElement qn25+  mkattr_qn25 = mkAttr    qn25+  in+  mkRoot []+    [ mkelem_qn13 []+      [ mkelem_qn22 []+        [ mkelem_qn6 []+          [ mkelem_qn6 []+            [ mkelem_qn6 []+              [ mkelem_qn6 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn6 []+                          [ mkelem_qn6 []+                            [ mkelem_qn6 []+                              [ mkelem_qn6 []+                                [ mkelem_qn6 []+                                  [ mkelem_qn6 []+                                    [ mkelem_qn6 []+                                      [ mkelem_qn6 []+                                        [ mkelem_qn6 []+                                          [ mkelem_qn6 []+                                            [ mkelem_qn21+                                              [ mkattr_qn16 [ mkText "24" ]+                                              ] []+                                            , mkelem_qn21+                                              [ mkattr_qn16 [ mkText "25" ]+                                              ] []+                                            ]+                                          , mkelem_qn21+                                            [ mkattr_qn16 [ mkText "26" ]+                                            ] []+                                          ]+                                        , mkelem_qn21+                                          [ mkattr_qn16 [ mkText "27" ]+                                          ] []+                                        ]+                                      , mkelem_qn21+                                        [ mkattr_qn16 [ mkText "28" ]+                                        ] []+                                      ]+                                    , mkelem_qn21+                                      [ mkattr_qn16 [ mkText "29" ]+                                      ] []+                                    ]+                                  , mkelem_qn21+                                    [ mkattr_qn16 [ mkText "30" ]+                                    ] []+                                  ]+                                , mkelem_qn21+                                  [ mkattr_qn16 [ mkText "31" ]+                                  ] []+                                ]+                              , mkelem_qn21+                                [ mkattr_qn16 [ mkText "32" ]+                                ] []+                              ]+                            , mkelem_qn21+                              [ mkattr_qn16 [ mkText "33" ]+                              ] []+                            ]+                          , mkelem_qn21+                            [ mkattr_qn16 [ mkText "34" ]+                            ] []+                          ]+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "35" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "36" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "37" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "38" ]+                    ] []+                  ]+                , mkelem_qn21+                  [ mkattr_qn16 [ mkText "39" ]+                  ] []+                ]+              , mkelem_qn21+                [ mkattr_qn16 [ mkText "42" ]+                ] []+              ]+            , mkelem_qn21+              [ mkattr_qn16 [ mkText "43" ]+              ] []+            ]+          , mkelem_qn21+            [ mkattr_qn16 [ mkText "44" ]+            ] []+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "44" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "grammar"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "15" ]+                    ] []+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn21+                          [ mkattr_qn16 [ mkText "11" ]+                          ] []+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "10" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "22" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "23" ]+                      ] []+                    ]+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "43" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "externalRef"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn5 []+                [ mkelem_qn17+                  [ mkattr_qn18 [ mkText "" ]+                  ]+                  [ mkText "href"+                  ]+                , mkelem_qn7+                  [ mkattr_qn24 [ mkText "anyURI" ]+                  , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                  ] []+                ]+              , mkelem_qn14 []+                [ mkelem_qn14 []+                  [ mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "ns"+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  , mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "datatypeLibrary"+                        ]+                      , mkelem_qn7+                        [ mkattr_qn24 [ mkText "anyURI" ]+                        , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                        ] []+                      ]+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn20 []+                    [ mkelem_qn5 []+                      [ mkelem_qn4 []+                        [ mkelem_qn12 []+                          [ mkelem_qn6 []+                            [ mkelem_qn19+                              [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                              ] []+                            , mkelem_qn19+                              [ mkattr_qn18 [ mkText "" ]+                              ] []+                            ]+                          ]+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  ]+                ]+              ]+            , mkelem_qn6 []+              [ mkelem_qn11 [] []+              , mkelem_qn20 []+                [ mkelem_qn21+                  [ mkattr_qn16 [ mkText "15" ]+                  ] []+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "42" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "notAllowed"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn6 []+              [ mkelem_qn11 [] []+              , mkelem_qn20 []+                [ mkelem_qn21+                  [ mkattr_qn16 [ mkText "15" ]+                  ] []+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "39" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "data"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn5 []+                [ mkelem_qn17+                  [ mkattr_qn18 [ mkText "" ]+                  ]+                  [ mkText "type"+                  ]+                , mkelem_qn7+                  [ mkattr_qn24 [ mkText "NCName" ]+                  , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                  ] []+                ]+              , mkelem_qn14 []+                [ mkelem_qn14 []+                  [ mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "ns"+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  , mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "datatypeLibrary"+                        ]+                      , mkelem_qn7+                        [ mkattr_qn24 [ mkText "anyURI" ]+                        , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                        ] []+                      ]+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn20 []+                    [ mkelem_qn5 []+                      [ mkelem_qn4 []+                        [ mkelem_qn12 []+                          [ mkelem_qn6 []+                            [ mkelem_qn19+                              [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                              ] []+                            , mkelem_qn19+                              [ mkattr_qn18 [ mkText "" ]+                              ] []+                            ]+                          ]+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "15" ]+                    ] []+                  ]+                ]+              , mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn20 []+                    [ mkelem_qn21+                      [ mkattr_qn16 [ mkText "40" ]+                      ] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "41" ]+                    ] []+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "41" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "except"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "15" ]+                    ] []+                  ]+                ]+              , mkelem_qn20 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn6 []+                          [ mkelem_qn6 []+                            [ mkelem_qn6 []+                              [ mkelem_qn6 []+                                [ mkelem_qn6 []+                                  [ mkelem_qn6 []+                                    [ mkelem_qn6 []+                                      [ mkelem_qn6 []+                                        [ mkelem_qn6 []+                                          [ mkelem_qn6 []+                                            [ mkelem_qn6 []+                                              [ mkelem_qn6 []+                                                [ mkelem_qn6 []+                                                  [ mkelem_qn6 []+                                                    [ mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "24" ]+                                                      ] []+                                                    , mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "25" ]+                                                      ] []+                                                    ]+                                                  , mkelem_qn21+                                                    [ mkattr_qn16 [ mkText "26" ]+                                                    ] []+                                                  ]+                                                , mkelem_qn21+                                                  [ mkattr_qn16 [ mkText "27" ]+                                                  ] []+                                                ]+                                              , mkelem_qn21+                                                [ mkattr_qn16 [ mkText "28" ]+                                                ] []+                                              ]+                                            , mkelem_qn21+                                              [ mkattr_qn16 [ mkText "29" ]+                                              ] []+                                            ]+                                          , mkelem_qn21+                                            [ mkattr_qn16 [ mkText "30" ]+                                            ] []+                                          ]+                                        , mkelem_qn21+                                          [ mkattr_qn16 [ mkText "31" ]+                                          ] []+                                        ]+                                      , mkelem_qn21+                                        [ mkattr_qn16 [ mkText "32" ]+                                        ] []+                                      ]+                                    , mkelem_qn21+                                      [ mkattr_qn16 [ mkText "33" ]+                                      ] []+                                    ]+                                  , mkelem_qn21+                                    [ mkattr_qn16 [ mkText "34" ]+                                    ] []+                                  ]+                                , mkelem_qn21+                                  [ mkattr_qn16 [ mkText "35" ]+                                  ] []+                                ]+                              , mkelem_qn21+                                [ mkattr_qn16 [ mkText "36" ]+                                ] []+                              ]+                            , mkelem_qn21+                              [ mkattr_qn16 [ mkText "37" ]+                              ] []+                            ]+                          , mkelem_qn21+                            [ mkattr_qn16 [ mkText "38" ]+                            ] []+                          ]+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "39" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "42" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "43" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "44" ]+                    ] []+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "40" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "param"+            ]+          , mkelem_qn14 []+            [ mkelem_qn5 []+              [ mkelem_qn17+                [ mkattr_qn18 [ mkText "" ]+                ]+                [ mkText "name"+                ]+              , mkelem_qn7+                [ mkattr_qn24 [ mkText "NCName" ]+                , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                ] []+              ]+            , mkelem_qn23 [] []+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "38" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "value"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn5 []+                  [ mkelem_qn17+                    [ mkattr_qn18 [ mkText "" ]+                    ]+                    [ mkText "type"+                    ]+                  , mkelem_qn7+                    [ mkattr_qn24 [ mkText "NCName" ]+                    , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                    ] []+                  ]+                ]+              , mkelem_qn14 []+                [ mkelem_qn14 []+                  [ mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "ns"+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  , mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "datatypeLibrary"+                        ]+                      , mkelem_qn7+                        [ mkattr_qn24 [ mkText "anyURI" ]+                        , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                        ] []+                      ]+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn20 []+                    [ mkelem_qn5 []+                      [ mkelem_qn4 []+                        [ mkelem_qn12 []+                          [ mkelem_qn6 []+                            [ mkelem_qn19+                              [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                              ] []+                            , mkelem_qn19+                              [ mkattr_qn18 [ mkText "" ]+                              ] []+                            ]+                          ]+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  ]+                ]+              ]+            , mkelem_qn23 [] []+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "37" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "text"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn6 []+              [ mkelem_qn11 [] []+              , mkelem_qn20 []+                [ mkelem_qn21+                  [ mkattr_qn16 [ mkText "15" ]+                  ] []+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "36" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "empty"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn6 []+              [ mkelem_qn11 [] []+              , mkelem_qn20 []+                [ mkelem_qn21+                  [ mkattr_qn16 [ mkText "15" ]+                  ] []+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "35" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "parentRef"+            ]+          , mkelem_qn14 []+            [ mkelem_qn5 []+              [ mkelem_qn17+                [ mkattr_qn18 [ mkText "" ]+                ]+                [ mkText "name"+                ]+              , mkelem_qn7+                [ mkattr_qn24 [ mkText "NCName" ]+                , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                ] []+              ]+            , mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "34" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "ref"+            ]+          , mkelem_qn14 []+            [ mkelem_qn5 []+              [ mkelem_qn17+                [ mkattr_qn18 [ mkText "" ]+                ]+                [ mkText "name"+                ]+              , mkelem_qn7+                [ mkattr_qn24 [ mkText "NCName" ]+                , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                ] []+              ]+            , mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "33" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "mixed"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "15" ]+                    ] []+                  ]+                ]+              , mkelem_qn20 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn6 []+                          [ mkelem_qn6 []+                            [ mkelem_qn6 []+                              [ mkelem_qn6 []+                                [ mkelem_qn6 []+                                  [ mkelem_qn6 []+                                    [ mkelem_qn6 []+                                      [ mkelem_qn6 []+                                        [ mkelem_qn6 []+                                          [ mkelem_qn6 []+                                            [ mkelem_qn6 []+                                              [ mkelem_qn6 []+                                                [ mkelem_qn6 []+                                                  [ mkelem_qn6 []+                                                    [ mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "24" ]+                                                      ] []+                                                    , mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "25" ]+                                                      ] []+                                                    ]+                                                  , mkelem_qn21+                                                    [ mkattr_qn16 [ mkText "26" ]+                                                    ] []+                                                  ]+                                                , mkelem_qn21+                                                  [ mkattr_qn16 [ mkText "27" ]+                                                  ] []+                                                ]+                                              , mkelem_qn21+                                                [ mkattr_qn16 [ mkText "28" ]+                                                ] []+                                              ]+                                            , mkelem_qn21+                                              [ mkattr_qn16 [ mkText "29" ]+                                              ] []+                                            ]+                                          , mkelem_qn21+                                            [ mkattr_qn16 [ mkText "30" ]+                                            ] []+                                          ]+                                        , mkelem_qn21+                                          [ mkattr_qn16 [ mkText "31" ]+                                          ] []+                                        ]+                                      , mkelem_qn21+                                        [ mkattr_qn16 [ mkText "32" ]+                                        ] []+                                      ]+                                    , mkelem_qn21+                                      [ mkattr_qn16 [ mkText "33" ]+                                      ] []+                                    ]+                                  , mkelem_qn21+                                    [ mkattr_qn16 [ mkText "34" ]+                                    ] []+                                  ]+                                , mkelem_qn21+                                  [ mkattr_qn16 [ mkText "35" ]+                                  ] []+                                ]+                              , mkelem_qn21+                                [ mkattr_qn16 [ mkText "36" ]+                                ] []+                              ]+                            , mkelem_qn21+                              [ mkattr_qn16 [ mkText "37" ]+                              ] []+                            ]+                          , mkelem_qn21+                            [ mkattr_qn16 [ mkText "38" ]+                            ] []+                          ]+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "39" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "42" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "43" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "44" ]+                    ] []+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "32" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "list"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "15" ]+                    ] []+                  ]+                ]+              , mkelem_qn20 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn6 []+                          [ mkelem_qn6 []+                            [ mkelem_qn6 []+                              [ mkelem_qn6 []+                                [ mkelem_qn6 []+                                  [ mkelem_qn6 []+                                    [ mkelem_qn6 []+                                      [ mkelem_qn6 []+                                        [ mkelem_qn6 []+                                          [ mkelem_qn6 []+                                            [ mkelem_qn6 []+                                              [ mkelem_qn6 []+                                                [ mkelem_qn6 []+                                                  [ mkelem_qn6 []+                                                    [ mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "24" ]+                                                      ] []+                                                    , mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "25" ]+                                                      ] []+                                                    ]+                                                  , mkelem_qn21+                                                    [ mkattr_qn16 [ mkText "26" ]+                                                    ] []+                                                  ]+                                                , mkelem_qn21+                                                  [ mkattr_qn16 [ mkText "27" ]+                                                  ] []+                                                ]+                                              , mkelem_qn21+                                                [ mkattr_qn16 [ mkText "28" ]+                                                ] []+                                              ]+                                            , mkelem_qn21+                                              [ mkattr_qn16 [ mkText "29" ]+                                              ] []+                                            ]+                                          , mkelem_qn21+                                            [ mkattr_qn16 [ mkText "30" ]+                                            ] []+                                          ]+                                        , mkelem_qn21+                                          [ mkattr_qn16 [ mkText "31" ]+                                          ] []+                                        ]+                                      , mkelem_qn21+                                        [ mkattr_qn16 [ mkText "32" ]+                                        ] []+                                      ]+                                    , mkelem_qn21+                                      [ mkattr_qn16 [ mkText "33" ]+                                      ] []+                                    ]+                                  , mkelem_qn21+                                    [ mkattr_qn16 [ mkText "34" ]+                                    ] []+                                  ]+                                , mkelem_qn21+                                  [ mkattr_qn16 [ mkText "35" ]+                                  ] []+                                ]+                              , mkelem_qn21+                                [ mkattr_qn16 [ mkText "36" ]+                                ] []+                              ]+                            , mkelem_qn21+                              [ mkattr_qn16 [ mkText "37" ]+                              ] []+                            ]+                          , mkelem_qn21+                            [ mkattr_qn16 [ mkText "38" ]+                            ] []+                          ]+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "39" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "42" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "43" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "44" ]+                    ] []+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "31" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "oneOrMore"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "15" ]+                    ] []+                  ]+                ]+              , mkelem_qn20 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn6 []+                          [ mkelem_qn6 []+                            [ mkelem_qn6 []+                              [ mkelem_qn6 []+                                [ mkelem_qn6 []+                                  [ mkelem_qn6 []+                                    [ mkelem_qn6 []+                                      [ mkelem_qn6 []+                                        [ mkelem_qn6 []+                                          [ mkelem_qn6 []+                                            [ mkelem_qn6 []+                                              [ mkelem_qn6 []+                                                [ mkelem_qn6 []+                                                  [ mkelem_qn6 []+                                                    [ mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "24" ]+                                                      ] []+                                                    , mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "25" ]+                                                      ] []+                                                    ]+                                                  , mkelem_qn21+                                                    [ mkattr_qn16 [ mkText "26" ]+                                                    ] []+                                                  ]+                                                , mkelem_qn21+                                                  [ mkattr_qn16 [ mkText "27" ]+                                                  ] []+                                                ]+                                              , mkelem_qn21+                                                [ mkattr_qn16 [ mkText "28" ]+                                                ] []+                                              ]+                                            , mkelem_qn21+                                              [ mkattr_qn16 [ mkText "29" ]+                                              ] []+                                            ]+                                          , mkelem_qn21+                                            [ mkattr_qn16 [ mkText "30" ]+                                            ] []+                                          ]+                                        , mkelem_qn21+                                          [ mkattr_qn16 [ mkText "31" ]+                                          ] []+                                        ]+                                      , mkelem_qn21+                                        [ mkattr_qn16 [ mkText "32" ]+                                        ] []+                                      ]+                                    , mkelem_qn21+                                      [ mkattr_qn16 [ mkText "33" ]+                                      ] []+                                    ]+                                  , mkelem_qn21+                                    [ mkattr_qn16 [ mkText "34" ]+                                    ] []+                                  ]+                                , mkelem_qn21+                                  [ mkattr_qn16 [ mkText "35" ]+                                  ] []+                                ]+                              , mkelem_qn21+                                [ mkattr_qn16 [ mkText "36" ]+                                ] []+                              ]+                            , mkelem_qn21+                              [ mkattr_qn16 [ mkText "37" ]+                              ] []+                            ]+                          , mkelem_qn21+                            [ mkattr_qn16 [ mkText "38" ]+                            ] []+                          ]+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "39" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "42" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "43" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "44" ]+                    ] []+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "30" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "zeroOrMore"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "15" ]+                    ] []+                  ]+                ]+              , mkelem_qn20 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn6 []+                          [ mkelem_qn6 []+                            [ mkelem_qn6 []+                              [ mkelem_qn6 []+                                [ mkelem_qn6 []+                                  [ mkelem_qn6 []+                                    [ mkelem_qn6 []+                                      [ mkelem_qn6 []+                                        [ mkelem_qn6 []+                                          [ mkelem_qn6 []+                                            [ mkelem_qn6 []+                                              [ mkelem_qn6 []+                                                [ mkelem_qn6 []+                                                  [ mkelem_qn6 []+                                                    [ mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "24" ]+                                                      ] []+                                                    , mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "25" ]+                                                      ] []+                                                    ]+                                                  , mkelem_qn21+                                                    [ mkattr_qn16 [ mkText "26" ]+                                                    ] []+                                                  ]+                                                , mkelem_qn21+                                                  [ mkattr_qn16 [ mkText "27" ]+                                                  ] []+                                                ]+                                              , mkelem_qn21+                                                [ mkattr_qn16 [ mkText "28" ]+                                                ] []+                                              ]+                                            , mkelem_qn21+                                              [ mkattr_qn16 [ mkText "29" ]+                                              ] []+                                            ]+                                          , mkelem_qn21+                                            [ mkattr_qn16 [ mkText "30" ]+                                            ] []+                                          ]+                                        , mkelem_qn21+                                          [ mkattr_qn16 [ mkText "31" ]+                                          ] []+                                        ]+                                      , mkelem_qn21+                                        [ mkattr_qn16 [ mkText "32" ]+                                        ] []+                                      ]+                                    , mkelem_qn21+                                      [ mkattr_qn16 [ mkText "33" ]+                                      ] []+                                    ]+                                  , mkelem_qn21+                                    [ mkattr_qn16 [ mkText "34" ]+                                    ] []+                                  ]+                                , mkelem_qn21+                                  [ mkattr_qn16 [ mkText "35" ]+                                  ] []+                                ]+                              , mkelem_qn21+                                [ mkattr_qn16 [ mkText "36" ]+                                ] []+                              ]+                            , mkelem_qn21+                              [ mkattr_qn16 [ mkText "37" ]+                              ] []+                            ]+                          , mkelem_qn21+                            [ mkattr_qn16 [ mkText "38" ]+                            ] []+                          ]+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "39" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "42" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "43" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "44" ]+                    ] []+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "29" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "optional"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "15" ]+                    ] []+                  ]+                ]+              , mkelem_qn20 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn6 []+                          [ mkelem_qn6 []+                            [ mkelem_qn6 []+                              [ mkelem_qn6 []+                                [ mkelem_qn6 []+                                  [ mkelem_qn6 []+                                    [ mkelem_qn6 []+                                      [ mkelem_qn6 []+                                        [ mkelem_qn6 []+                                          [ mkelem_qn6 []+                                            [ mkelem_qn6 []+                                              [ mkelem_qn6 []+                                                [ mkelem_qn6 []+                                                  [ mkelem_qn6 []+                                                    [ mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "24" ]+                                                      ] []+                                                    , mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "25" ]+                                                      ] []+                                                    ]+                                                  , mkelem_qn21+                                                    [ mkattr_qn16 [ mkText "26" ]+                                                    ] []+                                                  ]+                                                , mkelem_qn21+                                                  [ mkattr_qn16 [ mkText "27" ]+                                                  ] []+                                                ]+                                              , mkelem_qn21+                                                [ mkattr_qn16 [ mkText "28" ]+                                                ] []+                                              ]+                                            , mkelem_qn21+                                              [ mkattr_qn16 [ mkText "29" ]+                                              ] []+                                            ]+                                          , mkelem_qn21+                                            [ mkattr_qn16 [ mkText "30" ]+                                            ] []+                                          ]+                                        , mkelem_qn21+                                          [ mkattr_qn16 [ mkText "31" ]+                                          ] []+                                        ]+                                      , mkelem_qn21+                                        [ mkattr_qn16 [ mkText "32" ]+                                        ] []+                                      ]+                                    , mkelem_qn21+                                      [ mkattr_qn16 [ mkText "33" ]+                                      ] []+                                    ]+                                  , mkelem_qn21+                                    [ mkattr_qn16 [ mkText "34" ]+                                    ] []+                                  ]+                                , mkelem_qn21+                                  [ mkattr_qn16 [ mkText "35" ]+                                  ] []+                                ]+                              , mkelem_qn21+                                [ mkattr_qn16 [ mkText "36" ]+                                ] []+                              ]+                            , mkelem_qn21+                              [ mkattr_qn16 [ mkText "37" ]+                              ] []+                            ]+                          , mkelem_qn21+                            [ mkattr_qn16 [ mkText "38" ]+                            ] []+                          ]+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "39" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "42" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "43" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "44" ]+                    ] []+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "28" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "choice"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "15" ]+                    ] []+                  ]+                ]+              , mkelem_qn20 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn6 []+                          [ mkelem_qn6 []+                            [ mkelem_qn6 []+                              [ mkelem_qn6 []+                                [ mkelem_qn6 []+                                  [ mkelem_qn6 []+                                    [ mkelem_qn6 []+                                      [ mkelem_qn6 []+                                        [ mkelem_qn6 []+                                          [ mkelem_qn6 []+                                            [ mkelem_qn6 []+                                              [ mkelem_qn6 []+                                                [ mkelem_qn6 []+                                                  [ mkelem_qn6 []+                                                    [ mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "24" ]+                                                      ] []+                                                    , mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "25" ]+                                                      ] []+                                                    ]+                                                  , mkelem_qn21+                                                    [ mkattr_qn16 [ mkText "26" ]+                                                    ] []+                                                  ]+                                                , mkelem_qn21+                                                  [ mkattr_qn16 [ mkText "27" ]+                                                  ] []+                                                ]+                                              , mkelem_qn21+                                                [ mkattr_qn16 [ mkText "28" ]+                                                ] []+                                              ]+                                            , mkelem_qn21+                                              [ mkattr_qn16 [ mkText "29" ]+                                              ] []+                                            ]+                                          , mkelem_qn21+                                            [ mkattr_qn16 [ mkText "30" ]+                                            ] []+                                          ]+                                        , mkelem_qn21+                                          [ mkattr_qn16 [ mkText "31" ]+                                          ] []+                                        ]+                                      , mkelem_qn21+                                        [ mkattr_qn16 [ mkText "32" ]+                                        ] []+                                      ]+                                    , mkelem_qn21+                                      [ mkattr_qn16 [ mkText "33" ]+                                      ] []+                                    ]+                                  , mkelem_qn21+                                    [ mkattr_qn16 [ mkText "34" ]+                                    ] []+                                  ]+                                , mkelem_qn21+                                  [ mkattr_qn16 [ mkText "35" ]+                                  ] []+                                ]+                              , mkelem_qn21+                                [ mkattr_qn16 [ mkText "36" ]+                                ] []+                              ]+                            , mkelem_qn21+                              [ mkattr_qn16 [ mkText "37" ]+                              ] []+                            ]+                          , mkelem_qn21+                            [ mkattr_qn16 [ mkText "38" ]+                            ] []+                          ]+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "39" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "42" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "43" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "44" ]+                    ] []+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "27" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "interleave"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "15" ]+                    ] []+                  ]+                ]+              , mkelem_qn20 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn6 []+                          [ mkelem_qn6 []+                            [ mkelem_qn6 []+                              [ mkelem_qn6 []+                                [ mkelem_qn6 []+                                  [ mkelem_qn6 []+                                    [ mkelem_qn6 []+                                      [ mkelem_qn6 []+                                        [ mkelem_qn6 []+                                          [ mkelem_qn6 []+                                            [ mkelem_qn6 []+                                              [ mkelem_qn6 []+                                                [ mkelem_qn6 []+                                                  [ mkelem_qn6 []+                                                    [ mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "24" ]+                                                      ] []+                                                    , mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "25" ]+                                                      ] []+                                                    ]+                                                  , mkelem_qn21+                                                    [ mkattr_qn16 [ mkText "26" ]+                                                    ] []+                                                  ]+                                                , mkelem_qn21+                                                  [ mkattr_qn16 [ mkText "27" ]+                                                  ] []+                                                ]+                                              , mkelem_qn21+                                                [ mkattr_qn16 [ mkText "28" ]+                                                ] []+                                              ]+                                            , mkelem_qn21+                                              [ mkattr_qn16 [ mkText "29" ]+                                              ] []+                                            ]+                                          , mkelem_qn21+                                            [ mkattr_qn16 [ mkText "30" ]+                                            ] []+                                          ]+                                        , mkelem_qn21+                                          [ mkattr_qn16 [ mkText "31" ]+                                          ] []+                                        ]+                                      , mkelem_qn21+                                        [ mkattr_qn16 [ mkText "32" ]+                                        ] []+                                      ]+                                    , mkelem_qn21+                                      [ mkattr_qn16 [ mkText "33" ]+                                      ] []+                                    ]+                                  , mkelem_qn21+                                    [ mkattr_qn16 [ mkText "34" ]+                                    ] []+                                  ]+                                , mkelem_qn21+                                  [ mkattr_qn16 [ mkText "35" ]+                                  ] []+                                ]+                              , mkelem_qn21+                                [ mkattr_qn16 [ mkText "36" ]+                                ] []+                              ]+                            , mkelem_qn21+                              [ mkattr_qn16 [ mkText "37" ]+                              ] []+                            ]+                          , mkelem_qn21+                            [ mkattr_qn16 [ mkText "38" ]+                            ] []+                          ]+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "39" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "42" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "43" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "44" ]+                    ] []+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "26" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "group"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "15" ]+                    ] []+                  ]+                ]+              , mkelem_qn20 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn6 []+                          [ mkelem_qn6 []+                            [ mkelem_qn6 []+                              [ mkelem_qn6 []+                                [ mkelem_qn6 []+                                  [ mkelem_qn6 []+                                    [ mkelem_qn6 []+                                      [ mkelem_qn6 []+                                        [ mkelem_qn6 []+                                          [ mkelem_qn6 []+                                            [ mkelem_qn6 []+                                              [ mkelem_qn6 []+                                                [ mkelem_qn6 []+                                                  [ mkelem_qn6 []+                                                    [ mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "24" ]+                                                      ] []+                                                    , mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "25" ]+                                                      ] []+                                                    ]+                                                  , mkelem_qn21+                                                    [ mkattr_qn16 [ mkText "26" ]+                                                    ] []+                                                  ]+                                                , mkelem_qn21+                                                  [ mkattr_qn16 [ mkText "27" ]+                                                  ] []+                                                ]+                                              , mkelem_qn21+                                                [ mkattr_qn16 [ mkText "28" ]+                                                ] []+                                              ]+                                            , mkelem_qn21+                                              [ mkattr_qn16 [ mkText "29" ]+                                              ] []+                                            ]+                                          , mkelem_qn21+                                            [ mkattr_qn16 [ mkText "30" ]+                                            ] []+                                          ]+                                        , mkelem_qn21+                                          [ mkattr_qn16 [ mkText "31" ]+                                          ] []+                                        ]+                                      , mkelem_qn21+                                        [ mkattr_qn16 [ mkText "32" ]+                                        ] []+                                      ]+                                    , mkelem_qn21+                                      [ mkattr_qn16 [ mkText "33" ]+                                      ] []+                                    ]+                                  , mkelem_qn21+                                    [ mkattr_qn16 [ mkText "34" ]+                                    ] []+                                  ]+                                , mkelem_qn21+                                  [ mkattr_qn16 [ mkText "35" ]+                                  ] []+                                ]+                              , mkelem_qn21+                                [ mkattr_qn16 [ mkText "36" ]+                                ] []+                              ]+                            , mkelem_qn21+                              [ mkattr_qn16 [ mkText "37" ]+                              ] []+                            ]+                          , mkelem_qn21+                            [ mkattr_qn16 [ mkText "38" ]+                            ] []+                          ]+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "39" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "42" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "43" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "44" ]+                    ] []+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "25" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "attribute"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn14 []+                  [ mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "ns"+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  , mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "datatypeLibrary"+                        ]+                      , mkelem_qn7+                        [ mkattr_qn24 [ mkText "anyURI" ]+                        , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                        ] []+                      ]+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn20 []+                    [ mkelem_qn5 []+                      [ mkelem_qn4 []+                        [ mkelem_qn12 []+                          [ mkelem_qn6 []+                            [ mkelem_qn19+                              [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                              ] []+                            , mkelem_qn19+                              [ mkattr_qn18 [ mkText "" ]+                              ] []+                            ]+                          ]+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn5 []+                  [ mkelem_qn17+                    [ mkattr_qn18 [ mkText "" ]+                    ]+                    [ mkText "name"+                    ]+                  , mkelem_qn7+                    [ mkattr_qn24 [ mkText "QName" ]+                    , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                    ] []+                  ]+                , mkelem_qn15 []+                  [ mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn20 []+                      [ mkelem_qn21+                        [ mkattr_qn16 [ mkText "15" ]+                        ] []+                      ]+                    ]+                  , mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn21+                          [ mkattr_qn16 [ mkText "17" ]+                          ] []+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "18" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "19" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "20" ]+                      ] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "15" ]+                    ] []+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn6 []+                          [ mkelem_qn6 []+                            [ mkelem_qn6 []+                              [ mkelem_qn6 []+                                [ mkelem_qn6 []+                                  [ mkelem_qn6 []+                                    [ mkelem_qn6 []+                                      [ mkelem_qn6 []+                                        [ mkelem_qn6 []+                                          [ mkelem_qn6 []+                                            [ mkelem_qn6 []+                                              [ mkelem_qn6 []+                                                [ mkelem_qn6 []+                                                  [ mkelem_qn6 []+                                                    [ mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "24" ]+                                                      ] []+                                                    , mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "25" ]+                                                      ] []+                                                    ]+                                                  , mkelem_qn21+                                                    [ mkattr_qn16 [ mkText "26" ]+                                                    ] []+                                                  ]+                                                , mkelem_qn21+                                                  [ mkattr_qn16 [ mkText "27" ]+                                                  ] []+                                                ]+                                              , mkelem_qn21+                                                [ mkattr_qn16 [ mkText "28" ]+                                                ] []+                                              ]+                                            , mkelem_qn21+                                              [ mkattr_qn16 [ mkText "29" ]+                                              ] []+                                            ]+                                          , mkelem_qn21+                                            [ mkattr_qn16 [ mkText "30" ]+                                            ] []+                                          ]+                                        , mkelem_qn21+                                          [ mkattr_qn16 [ mkText "31" ]+                                          ] []+                                        ]+                                      , mkelem_qn21+                                        [ mkattr_qn16 [ mkText "32" ]+                                        ] []+                                      ]+                                    , mkelem_qn21+                                      [ mkattr_qn16 [ mkText "33" ]+                                      ] []+                                    ]+                                  , mkelem_qn21+                                    [ mkattr_qn16 [ mkText "34" ]+                                    ] []+                                  ]+                                , mkelem_qn21+                                  [ mkattr_qn16 [ mkText "35" ]+                                  ] []+                                ]+                              , mkelem_qn21+                                [ mkattr_qn16 [ mkText "36" ]+                                ] []+                              ]+                            , mkelem_qn21+                              [ mkattr_qn16 [ mkText "37" ]+                              ] []+                            ]+                          , mkelem_qn21+                            [ mkattr_qn16 [ mkText "38" ]+                            ] []+                          ]+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "39" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "42" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "43" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "44" ]+                    ] []+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "24" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "element"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn6 []+                [ mkelem_qn5 []+                  [ mkelem_qn17+                    [ mkattr_qn18 [ mkText "" ]+                    ]+                    [ mkText "name"+                    ]+                  , mkelem_qn7+                    [ mkattr_qn24 [ mkText "QName" ]+                    , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                    ] []+                  ]+                , mkelem_qn15 []+                  [ mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn20 []+                      [ mkelem_qn21+                        [ mkattr_qn16 [ mkText "15" ]+                        ] []+                      ]+                    ]+                  , mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn21+                          [ mkattr_qn16 [ mkText "17" ]+                          ] []+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "18" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "19" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "20" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn14 []+                [ mkelem_qn14 []+                  [ mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "ns"+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  , mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "datatypeLibrary"+                        ]+                      , mkelem_qn7+                        [ mkattr_qn24 [ mkText "anyURI" ]+                        , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                        ] []+                      ]+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn20 []+                    [ mkelem_qn5 []+                      [ mkelem_qn4 []+                        [ mkelem_qn12 []+                          [ mkelem_qn6 []+                            [ mkelem_qn19+                              [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                              ] []+                            , mkelem_qn19+                              [ mkattr_qn18 [ mkText "" ]+                              ] []+                            ]+                          ]+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "15" ]+                    ] []+                  ]+                ]+              , mkelem_qn20 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn6 []+                          [ mkelem_qn6 []+                            [ mkelem_qn6 []+                              [ mkelem_qn6 []+                                [ mkelem_qn6 []+                                  [ mkelem_qn6 []+                                    [ mkelem_qn6 []+                                      [ mkelem_qn6 []+                                        [ mkelem_qn6 []+                                          [ mkelem_qn6 []+                                            [ mkelem_qn6 []+                                              [ mkelem_qn6 []+                                                [ mkelem_qn6 []+                                                  [ mkelem_qn6 []+                                                    [ mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "24" ]+                                                      ] []+                                                    , mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "25" ]+                                                      ] []+                                                    ]+                                                  , mkelem_qn21+                                                    [ mkattr_qn16 [ mkText "26" ]+                                                    ] []+                                                  ]+                                                , mkelem_qn21+                                                  [ mkattr_qn16 [ mkText "27" ]+                                                  ] []+                                                ]+                                              , mkelem_qn21+                                                [ mkattr_qn16 [ mkText "28" ]+                                                ] []+                                              ]+                                            , mkelem_qn21+                                              [ mkattr_qn16 [ mkText "29" ]+                                              ] []+                                            ]+                                          , mkelem_qn21+                                            [ mkattr_qn16 [ mkText "30" ]+                                            ] []+                                          ]+                                        , mkelem_qn21+                                          [ mkattr_qn16 [ mkText "31" ]+                                          ] []+                                        ]+                                      , mkelem_qn21+                                        [ mkattr_qn16 [ mkText "32" ]+                                        ] []+                                      ]+                                    , mkelem_qn21+                                      [ mkattr_qn16 [ mkText "33" ]+                                      ] []+                                    ]+                                  , mkelem_qn21+                                    [ mkattr_qn16 [ mkText "34" ]+                                    ] []+                                  ]+                                , mkelem_qn21+                                  [ mkattr_qn16 [ mkText "35" ]+                                  ] []+                                ]+                              , mkelem_qn21+                                [ mkattr_qn16 [ mkText "36" ]+                                ] []+                              ]+                            , mkelem_qn21+                              [ mkattr_qn16 [ mkText "37" ]+                              ] []+                            ]+                          , mkelem_qn21+                            [ mkattr_qn16 [ mkText "38" ]+                            ] []+                          ]+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "39" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "42" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "43" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "44" ]+                    ] []+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "23" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "include"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn5 []+                [ mkelem_qn17+                  [ mkattr_qn18 [ mkText "" ]+                  ]+                  [ mkText "href"+                  ]+                , mkelem_qn7+                  [ mkattr_qn24 [ mkText "anyURI" ]+                  , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                  ] []+                ]+              , mkelem_qn14 []+                [ mkelem_qn14 []+                  [ mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "ns"+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  , mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "datatypeLibrary"+                        ]+                      , mkelem_qn7+                        [ mkattr_qn24 [ mkText "anyURI" ]+                        , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                        ] []+                      ]+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn20 []+                    [ mkelem_qn5 []+                      [ mkelem_qn4 []+                        [ mkelem_qn12 []+                          [ mkelem_qn6 []+                            [ mkelem_qn19+                              [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                              ] []+                            , mkelem_qn19+                              [ mkattr_qn18 [ mkText "" ]+                              ] []+                            ]+                          ]+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "15" ]+                    ] []+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn21+                        [ mkattr_qn16 [ mkText "11" ]+                        ] []+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "10" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "21" ]+                      ] []+                    ]+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "22" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "div"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "15" ]+                    ] []+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn21+                          [ mkattr_qn16 [ mkText "11" ]+                          ] []+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "10" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "22" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "23" ]+                      ] []+                    ]+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "21" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "div"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "15" ]+                    ] []+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn21+                        [ mkattr_qn16 [ mkText "11" ]+                        ] []+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "10" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "21" ]+                      ] []+                    ]+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "20" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "choice"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "15" ]+                    ] []+                  ]+                ]+              , mkelem_qn20 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn21+                        [ mkattr_qn16 [ mkText "17" ]+                        ] []+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "18" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "19" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "20" ]+                    ] []+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "19" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "nsName"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "15" ]+                    ] []+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn21+                  [ mkattr_qn16 [ mkText "16" ]+                  ] []+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "18" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "anyName"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "15" ]+                    ] []+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn21+                  [ mkattr_qn16 [ mkText "16" ]+                  ] []+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "17" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "name"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn7+              [ mkattr_qn24 [ mkText "QName" ]+              , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+              ] []+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "16" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "except"+            ]+          , mkelem_qn15 []+            [ mkelem_qn6 []+              [ mkelem_qn11 [] []+              , mkelem_qn20 []+                [ mkelem_qn21+                  [ mkattr_qn16 [ mkText "15" ]+                  ] []+                ]+              ]+            , mkelem_qn20 []+              [ mkelem_qn6 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn21+                      [ mkattr_qn16 [ mkText "17" ]+                      ] []+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "18" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "19" ]+                    ] []+                  ]+                , mkelem_qn21+                  [ mkattr_qn16 [ mkText "20" ]+                  ] []+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "15" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn4 []+            [ mkelem_qn12 []+              [ mkelem_qn19+                [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                ] []+              ]+            ]+          , mkelem_qn6 []+            [ mkelem_qn11 [] []+            , mkelem_qn20 []+              [ mkelem_qn6 []+                [ mkelem_qn6 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 [] []+                    , mkelem_qn23 [] []+                    ]+                  , mkelem_qn23 [] []+                  ]+                , mkelem_qn21+                  [ mkattr_qn16 [ mkText "0" ]+                  ] []+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "0" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn4 [] []+          , mkelem_qn6 []+            [ mkelem_qn11 [] []+            , mkelem_qn20 []+              [ mkelem_qn6 []+                [ mkelem_qn6 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 [] []+                    , mkelem_qn23 [] []+                    ]+                  , mkelem_qn23 [] []+                  ]+                , mkelem_qn21+                  [ mkattr_qn16 [ mkText "0" ]+                  ] []+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "10" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "define"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn5 []+                  [ mkelem_qn17+                    [ mkattr_qn18 [ mkText "" ]+                    ]+                    [ mkText "name"+                    ]+                  , mkelem_qn7+                    [ mkattr_qn24 [ mkText "NCName" ]+                    , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                    ] []+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "combine"+                      ]+                    , mkelem_qn6 []+                      [ mkelem_qn25+                        [ mkattr_qn1 [ mkText "http://www.w3.org/XML/1998/namespace" ]+                        , mkattr_qn3 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                        , mkattr_qn2 [ mkText "file:///home/theo/haskell/hxt/hxt-relaxng/src/Text/XML/HXT/RelaxNG/schema2hs/Schema.rng" ]+                        , mkattr_qn8 [ mkText "" ]+                        , mkattr_qn24 [ mkText "token" ]+                        , mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                        ]+                        [ mkText "choice"+                        ]+                      , mkelem_qn25+                        [ mkattr_qn1 [ mkText "http://www.w3.org/XML/1998/namespace" ]+                        , mkattr_qn3 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                        , mkattr_qn2 [ mkText "file:///home/theo/haskell/hxt/hxt-relaxng/src/Text/XML/HXT/RelaxNG/schema2hs/Schema.rng" ]+                        , mkattr_qn8 [ mkText "" ]+                        , mkattr_qn24 [ mkText "token" ]+                        , mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                        ]+                        [ mkText "interleave"+                        ]+                      ]+                    ]+                  ]+                ]+              , mkelem_qn14 []+                [ mkelem_qn14 []+                  [ mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "ns"+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  , mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "datatypeLibrary"+                        ]+                      , mkelem_qn7+                        [ mkattr_qn24 [ mkText "anyURI" ]+                        , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                        ] []+                      ]+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn20 []+                    [ mkelem_qn5 []+                      [ mkelem_qn4 []+                        [ mkelem_qn12 []+                          [ mkelem_qn6 []+                            [ mkelem_qn19+                              [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                              ] []+                            , mkelem_qn19+                              [ mkattr_qn18 [ mkText "" ]+                              ] []+                            ]+                          ]+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "15" ]+                    ] []+                  ]+                ]+              , mkelem_qn20 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn6 []+                          [ mkelem_qn6 []+                            [ mkelem_qn6 []+                              [ mkelem_qn6 []+                                [ mkelem_qn6 []+                                  [ mkelem_qn6 []+                                    [ mkelem_qn6 []+                                      [ mkelem_qn6 []+                                        [ mkelem_qn6 []+                                          [ mkelem_qn6 []+                                            [ mkelem_qn6 []+                                              [ mkelem_qn6 []+                                                [ mkelem_qn6 []+                                                  [ mkelem_qn6 []+                                                    [ mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "24" ]+                                                      ] []+                                                    , mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "25" ]+                                                      ] []+                                                    ]+                                                  , mkelem_qn21+                                                    [ mkattr_qn16 [ mkText "26" ]+                                                    ] []+                                                  ]+                                                , mkelem_qn21+                                                  [ mkattr_qn16 [ mkText "27" ]+                                                  ] []+                                                ]+                                              , mkelem_qn21+                                                [ mkattr_qn16 [ mkText "28" ]+                                                ] []+                                              ]+                                            , mkelem_qn21+                                              [ mkattr_qn16 [ mkText "29" ]+                                              ] []+                                            ]+                                          , mkelem_qn21+                                            [ mkattr_qn16 [ mkText "30" ]+                                            ] []+                                          ]+                                        , mkelem_qn21+                                          [ mkattr_qn16 [ mkText "31" ]+                                          ] []+                                        ]+                                      , mkelem_qn21+                                        [ mkattr_qn16 [ mkText "32" ]+                                        ] []+                                      ]+                                    , mkelem_qn21+                                      [ mkattr_qn16 [ mkText "33" ]+                                      ] []+                                    ]+                                  , mkelem_qn21+                                    [ mkattr_qn16 [ mkText "34" ]+                                    ] []+                                  ]+                                , mkelem_qn21+                                  [ mkattr_qn16 [ mkText "35" ]+                                  ] []+                                ]+                              , mkelem_qn21+                                [ mkattr_qn16 [ mkText "36" ]+                                ] []+                              ]+                            , mkelem_qn21+                              [ mkattr_qn16 [ mkText "37" ]+                              ] []+                            ]+                          , mkelem_qn21+                            [ mkattr_qn16 [ mkText "38" ]+                            ] []+                          ]+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "39" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "42" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "43" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "44" ]+                    ] []+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "11" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "start"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn5 []+                  [ mkelem_qn17+                    [ mkattr_qn18 [ mkText "" ]+                    ]+                    [ mkText "combine"+                    ]+                  , mkelem_qn6 []+                    [ mkelem_qn25+                      [ mkattr_qn1 [ mkText "http://www.w3.org/XML/1998/namespace" ]+                      , mkattr_qn3 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                      , mkattr_qn2 [ mkText "file:///home/theo/haskell/hxt/hxt-relaxng/src/Text/XML/HXT/RelaxNG/schema2hs/Schema.rng" ]+                      , mkattr_qn8 [ mkText "" ]+                      , mkattr_qn24 [ mkText "token" ]+                      , mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                      ]+                      [ mkText "choice"+                      ]+                    , mkelem_qn25+                      [ mkattr_qn1 [ mkText "http://www.w3.org/XML/1998/namespace" ]+                      , mkattr_qn3 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                      , mkattr_qn2 [ mkText "file:///home/theo/haskell/hxt/hxt-relaxng/src/Text/XML/HXT/RelaxNG/schema2hs/Schema.rng" ]+                      , mkattr_qn8 [ mkText "" ]+                      , mkattr_qn24 [ mkText "token" ]+                      , mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                      ]+                      [ mkText "interleave"+                      ]+                    ]+                  ]+                ]+              , mkelem_qn14 []+                [ mkelem_qn14 []+                  [ mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "ns"+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  , mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "datatypeLibrary"+                        ]+                      , mkelem_qn7+                        [ mkattr_qn24 [ mkText "anyURI" ]+                        , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                        ] []+                      ]+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn20 []+                    [ mkelem_qn5 []+                      [ mkelem_qn4 []+                        [ mkelem_qn12 []+                          [ mkelem_qn6 []+                            [ mkelem_qn19+                              [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                              ] []+                            , mkelem_qn19+                              [ mkattr_qn18 [ mkText "" ]+                              ] []+                            ]+                          ]+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "15" ]+                    ] []+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn6 []+                          [ mkelem_qn6 []+                            [ mkelem_qn6 []+                              [ mkelem_qn6 []+                                [ mkelem_qn6 []+                                  [ mkelem_qn6 []+                                    [ mkelem_qn6 []+                                      [ mkelem_qn6 []+                                        [ mkelem_qn6 []+                                          [ mkelem_qn6 []+                                            [ mkelem_qn6 []+                                              [ mkelem_qn6 []+                                                [ mkelem_qn6 []+                                                  [ mkelem_qn21+                                                    [ mkattr_qn16 [ mkText "24" ]+                                                    ] []+                                                  , mkelem_qn21+                                                    [ mkattr_qn16 [ mkText "25" ]+                                                    ] []+                                                  ]+                                                , mkelem_qn21+                                                  [ mkattr_qn16 [ mkText "26" ]+                                                  ] []+                                                ]+                                              , mkelem_qn21+                                                [ mkattr_qn16 [ mkText "27" ]+                                                ] []+                                              ]+                                            , mkelem_qn21+                                              [ mkattr_qn16 [ mkText "28" ]+                                              ] []+                                            ]+                                          , mkelem_qn21+                                            [ mkattr_qn16 [ mkText "29" ]+                                            ] []+                                          ]+                                        , mkelem_qn21+                                          [ mkattr_qn16 [ mkText "30" ]+                                          ] []+                                        ]+                                      , mkelem_qn21+                                        [ mkattr_qn16 [ mkText "31" ]+                                        ] []+                                      ]+                                    , mkelem_qn21+                                      [ mkattr_qn16 [ mkText "32" ]+                                      ] []+                                    ]+                                  , mkelem_qn21+                                    [ mkattr_qn16 [ mkText "33" ]+                                    ] []+                                  ]+                                , mkelem_qn21+                                  [ mkattr_qn16 [ mkText "34" ]+                                  ] []+                                ]+                              , mkelem_qn21+                                [ mkattr_qn16 [ mkText "35" ]+                                ] []+                              ]+                            , mkelem_qn21+                              [ mkattr_qn16 [ mkText "36" ]+                              ] []+                            ]+                          , mkelem_qn21+                            [ mkattr_qn16 [ mkText "37" ]+                            ] []+                          ]+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "38" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "39" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "42" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "43" ]+                    ] []+                  ]+                , mkelem_qn21+                  [ mkattr_qn16 [ mkText "44" ]                   ] []                 ]               ]
src/Text/XML/HXT/RelaxNG/SchemaGrammar.hs view
@@ -1,3824 +1,3876 @@-{- |-   Module     : Text.HXT.RelaxNG.SchemaGrammar--   Don't edit this module, it's generated by RelaxSchemaToXmlTree---}--module Text.XML.HXT.RelaxNG.SchemaGrammar-    ( relaxSchemaTree, relaxSchemaArrow )-where--import Text.XML.HXT.DOM.TypeDefs-import Text.XML.HXT.DOM.XmlNode (mkRoot, mkElement, mkAttr, mkText)--import Control.Arrow.ListArrows--relaxSchemaArrow :: ArrowList a => a b XmlTree-relaxSchemaArrow = constA relaxSchemaTree--relaxSchemaTree :: XmlTree-relaxSchemaTree =-  let-  ns1   = "http://relaxng.org/ns/structure/1.0"-  qn1   = mkSNsName "RelaxContext:xml"-  qn2   = mkSNsName "RelaxContextBaseURI"-  qn3   = mkSNsName "RelaxContextDefault"-  qn4   = mkNsName "anyName" ns1-  qn5   = mkNsName "attribute" ns1-  qn6   = mkNsName "choice" ns1-  qn7   = mkNsName "data" ns1-  qn8   = mkSNsName "datatypeLibrary"-  qn9   = mkNsName "define" ns1-  qn10  = mkNsName "element" ns1-  qn11  = mkNsName "empty" ns1-  qn12  = mkNsName "except" ns1-  qn13  = mkNsName "grammar" ns1-  qn14  = mkNsName "group" ns1-  qn15  = mkNsName "interleave" ns1-  qn16  = mkSNsName "name"-  qn17  = mkNsName "name" ns1-  qn18  = mkSNsName "ns"-  qn19  = mkNsName "nsName" ns1-  qn20  = mkNsName "oneOrMore" ns1-  qn21  = mkNsName "ref" ns1-  qn22  = mkNsName "start" ns1-  qn23  = mkNsName "text" ns1-  qn24  = mkSNsName "type"-  qn25  = mkNsName "value" ns1-  in-  mkRoot []-    [ mkElement qn13 []-      [ mkElement qn22 []-        [ mkElement qn21-          [ mkAttr qn16 [ mkText "14" ]-          ] []-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "44" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "externalRef"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn5 []-                [ mkElement qn17-                  [ mkAttr qn18 [ mkText "" ]-                  ]-                  [ mkText "href"-                  ]-                , mkElement qn7-                  [ mkAttr qn24 [ mkText "anyURI" ]-                  , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                  ] []-                ]-              , mkElement qn14 []-                [ mkElement qn14 []-                  [ mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "ns"-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  , mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "datatypeLibrary"-                        ]-                      , mkElement qn7-                        [ mkAttr qn24 [ mkText "anyURI" ]-                        , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                        ] []-                      ]-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn20 []-                    [ mkElement qn5 []-                      [ mkElement qn4 []-                        [ mkElement qn12 []-                          [ mkElement qn6 []-                            [ mkElement qn19-                              [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                              ] []-                            , mkElement qn19-                              [ mkAttr qn18 [ mkText "" ]-                              ] []-                            ]-                          ]-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  ]-                ]-              ]-            , mkElement qn6 []-              [ mkElement qn11 [] []-              , mkElement qn20 []-                [ mkElement qn21-                  [ mkAttr qn16 [ mkText "16" ]-                  ] []-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "43" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "notAllowed"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn6 []-              [ mkElement qn11 [] []-              , mkElement qn20 []-                [ mkElement qn21-                  [ mkAttr qn16 [ mkText "16" ]-                  ] []-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "40" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "data"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn5 []-                [ mkElement qn17-                  [ mkAttr qn18 [ mkText "" ]-                  ]-                  [ mkText "type"-                  ]-                , mkElement qn7-                  [ mkAttr qn24 [ mkText "NCName" ]-                  , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                  ] []-                ]-              , mkElement qn14 []-                [ mkElement qn14 []-                  [ mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "ns"-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  , mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "datatypeLibrary"-                        ]-                      , mkElement qn7-                        [ mkAttr qn24 [ mkText "anyURI" ]-                        , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                        ] []-                      ]-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn20 []-                    [ mkElement qn5 []-                      [ mkElement qn4 []-                        [ mkElement qn12 []-                          [ mkElement qn6 []-                            [ mkElement qn19-                              [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                              ] []-                            , mkElement qn19-                              [ mkAttr qn18 [ mkText "" ]-                              ] []-                            ]-                          ]-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "16" ]-                    ] []-                  ]-                ]-              , mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn20 []-                    [ mkElement qn21-                      [ mkAttr qn16 [ mkText "41" ]-                      ] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "42" ]-                    ] []-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "42" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "except"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "16" ]-                    ] []-                  ]-                ]-              , mkElement qn20 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn6 []-                          [ mkElement qn6 []-                            [ mkElement qn6 []-                              [ mkElement qn6 []-                                [ mkElement qn6 []-                                  [ mkElement qn6 []-                                    [ mkElement qn6 []-                                      [ mkElement qn6 []-                                        [ mkElement qn6 []-                                          [ mkElement qn6 []-                                            [ mkElement qn6 []-                                              [ mkElement qn6 []-                                                [ mkElement qn6 []-                                                  [ mkElement qn6 []-                                                    [ mkElement qn21-                                                      [ mkAttr qn16 [ mkText "25" ]-                                                      ] []-                                                    , mkElement qn21-                                                      [ mkAttr qn16 [ mkText "26" ]-                                                      ] []-                                                    ]-                                                  , mkElement qn21-                                                    [ mkAttr qn16 [ mkText "27" ]-                                                    ] []-                                                  ]-                                                , mkElement qn21-                                                  [ mkAttr qn16 [ mkText "28" ]-                                                  ] []-                                                ]-                                              , mkElement qn21-                                                [ mkAttr qn16 [ mkText "29" ]-                                                ] []-                                              ]-                                            , mkElement qn21-                                              [ mkAttr qn16 [ mkText "30" ]-                                              ] []-                                            ]-                                          , mkElement qn21-                                            [ mkAttr qn16 [ mkText "31" ]-                                            ] []-                                          ]-                                        , mkElement qn21-                                          [ mkAttr qn16 [ mkText "32" ]-                                          ] []-                                        ]-                                      , mkElement qn21-                                        [ mkAttr qn16 [ mkText "33" ]-                                        ] []-                                      ]-                                    , mkElement qn21-                                      [ mkAttr qn16 [ mkText "34" ]-                                      ] []-                                    ]-                                  , mkElement qn21-                                    [ mkAttr qn16 [ mkText "35" ]-                                    ] []-                                  ]-                                , mkElement qn21-                                  [ mkAttr qn16 [ mkText "36" ]-                                  ] []-                                ]-                              , mkElement qn21-                                [ mkAttr qn16 [ mkText "37" ]-                                ] []-                              ]-                            , mkElement qn21-                              [ mkAttr qn16 [ mkText "38" ]-                              ] []-                            ]-                          , mkElement qn21-                            [ mkAttr qn16 [ mkText "39" ]-                            ] []-                          ]-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "40" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "43" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "44" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "14" ]-                    ] []-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "41" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "param"-            ]-          , mkElement qn14 []-            [ mkElement qn5 []-              [ mkElement qn17-                [ mkAttr qn18 [ mkText "" ]-                ]-                [ mkText "name"-                ]-              , mkElement qn7-                [ mkAttr qn24 [ mkText "NCName" ]-                , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                ] []-              ]-            , mkElement qn23 [] []-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "39" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "value"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn5 []-                  [ mkElement qn17-                    [ mkAttr qn18 [ mkText "" ]-                    ]-                    [ mkText "type"-                    ]-                  , mkElement qn7-                    [ mkAttr qn24 [ mkText "NCName" ]-                    , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                    ] []-                  ]-                ]-              , mkElement qn14 []-                [ mkElement qn14 []-                  [ mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "ns"-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  , mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "datatypeLibrary"-                        ]-                      , mkElement qn7-                        [ mkAttr qn24 [ mkText "anyURI" ]-                        , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                        ] []-                      ]-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn20 []-                    [ mkElement qn5 []-                      [ mkElement qn4 []-                        [ mkElement qn12 []-                          [ mkElement qn6 []-                            [ mkElement qn19-                              [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                              ] []-                            , mkElement qn19-                              [ mkAttr qn18 [ mkText "" ]-                              ] []-                            ]-                          ]-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  ]-                ]-              ]-            , mkElement qn23 [] []-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "38" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "text"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn6 []-              [ mkElement qn11 [] []-              , mkElement qn20 []-                [ mkElement qn21-                  [ mkAttr qn16 [ mkText "16" ]-                  ] []-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "37" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "empty"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn6 []-              [ mkElement qn11 [] []-              , mkElement qn20 []-                [ mkElement qn21-                  [ mkAttr qn16 [ mkText "16" ]-                  ] []-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "36" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "parentRef"-            ]-          , mkElement qn14 []-            [ mkElement qn5 []-              [ mkElement qn17-                [ mkAttr qn18 [ mkText "" ]-                ]-                [ mkText "name"-                ]-              , mkElement qn7-                [ mkAttr qn24 [ mkText "NCName" ]-                , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                ] []-              ]-            , mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "35" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "ref"-            ]-          , mkElement qn14 []-            [ mkElement qn5 []-              [ mkElement qn17-                [ mkAttr qn18 [ mkText "" ]-                ]-                [ mkText "name"-                ]-              , mkElement qn7-                [ mkAttr qn24 [ mkText "NCName" ]-                , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                ] []-              ]-            , mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "34" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "mixed"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "16" ]-                    ] []-                  ]-                ]-              , mkElement qn20 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn6 []-                          [ mkElement qn6 []-                            [ mkElement qn6 []-                              [ mkElement qn6 []-                                [ mkElement qn6 []-                                  [ mkElement qn6 []-                                    [ mkElement qn6 []-                                      [ mkElement qn6 []-                                        [ mkElement qn6 []-                                          [ mkElement qn6 []-                                            [ mkElement qn6 []-                                              [ mkElement qn6 []-                                                [ mkElement qn6 []-                                                  [ mkElement qn6 []-                                                    [ mkElement qn21-                                                      [ mkAttr qn16 [ mkText "25" ]-                                                      ] []-                                                    , mkElement qn21-                                                      [ mkAttr qn16 [ mkText "26" ]-                                                      ] []-                                                    ]-                                                  , mkElement qn21-                                                    [ mkAttr qn16 [ mkText "27" ]-                                                    ] []-                                                  ]-                                                , mkElement qn21-                                                  [ mkAttr qn16 [ mkText "28" ]-                                                  ] []-                                                ]-                                              , mkElement qn21-                                                [ mkAttr qn16 [ mkText "29" ]-                                                ] []-                                              ]-                                            , mkElement qn21-                                              [ mkAttr qn16 [ mkText "30" ]-                                              ] []-                                            ]-                                          , mkElement qn21-                                            [ mkAttr qn16 [ mkText "31" ]-                                            ] []-                                          ]-                                        , mkElement qn21-                                          [ mkAttr qn16 [ mkText "32" ]-                                          ] []-                                        ]-                                      , mkElement qn21-                                        [ mkAttr qn16 [ mkText "33" ]-                                        ] []-                                      ]-                                    , mkElement qn21-                                      [ mkAttr qn16 [ mkText "34" ]-                                      ] []-                                    ]-                                  , mkElement qn21-                                    [ mkAttr qn16 [ mkText "35" ]-                                    ] []-                                  ]-                                , mkElement qn21-                                  [ mkAttr qn16 [ mkText "36" ]-                                  ] []-                                ]-                              , mkElement qn21-                                [ mkAttr qn16 [ mkText "37" ]-                                ] []-                              ]-                            , mkElement qn21-                              [ mkAttr qn16 [ mkText "38" ]-                              ] []-                            ]-                          , mkElement qn21-                            [ mkAttr qn16 [ mkText "39" ]-                            ] []-                          ]-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "40" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "43" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "44" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "14" ]-                    ] []-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "33" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "list"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "16" ]-                    ] []-                  ]-                ]-              , mkElement qn20 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn6 []-                          [ mkElement qn6 []-                            [ mkElement qn6 []-                              [ mkElement qn6 []-                                [ mkElement qn6 []-                                  [ mkElement qn6 []-                                    [ mkElement qn6 []-                                      [ mkElement qn6 []-                                        [ mkElement qn6 []-                                          [ mkElement qn6 []-                                            [ mkElement qn6 []-                                              [ mkElement qn6 []-                                                [ mkElement qn6 []-                                                  [ mkElement qn6 []-                                                    [ mkElement qn21-                                                      [ mkAttr qn16 [ mkText "25" ]-                                                      ] []-                                                    , mkElement qn21-                                                      [ mkAttr qn16 [ mkText "26" ]-                                                      ] []-                                                    ]-                                                  , mkElement qn21-                                                    [ mkAttr qn16 [ mkText "27" ]-                                                    ] []-                                                  ]-                                                , mkElement qn21-                                                  [ mkAttr qn16 [ mkText "28" ]-                                                  ] []-                                                ]-                                              , mkElement qn21-                                                [ mkAttr qn16 [ mkText "29" ]-                                                ] []-                                              ]-                                            , mkElement qn21-                                              [ mkAttr qn16 [ mkText "30" ]-                                              ] []-                                            ]-                                          , mkElement qn21-                                            [ mkAttr qn16 [ mkText "31" ]-                                            ] []-                                          ]-                                        , mkElement qn21-                                          [ mkAttr qn16 [ mkText "32" ]-                                          ] []-                                        ]-                                      , mkElement qn21-                                        [ mkAttr qn16 [ mkText "33" ]-                                        ] []-                                      ]-                                    , mkElement qn21-                                      [ mkAttr qn16 [ mkText "34" ]-                                      ] []-                                    ]-                                  , mkElement qn21-                                    [ mkAttr qn16 [ mkText "35" ]-                                    ] []-                                  ]-                                , mkElement qn21-                                  [ mkAttr qn16 [ mkText "36" ]-                                  ] []-                                ]-                              , mkElement qn21-                                [ mkAttr qn16 [ mkText "37" ]-                                ] []-                              ]-                            , mkElement qn21-                              [ mkAttr qn16 [ mkText "38" ]-                              ] []-                            ]-                          , mkElement qn21-                            [ mkAttr qn16 [ mkText "39" ]-                            ] []-                          ]-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "40" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "43" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "44" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "14" ]-                    ] []-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "32" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "oneOrMore"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "16" ]-                    ] []-                  ]-                ]-              , mkElement qn20 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn6 []-                          [ mkElement qn6 []-                            [ mkElement qn6 []-                              [ mkElement qn6 []-                                [ mkElement qn6 []-                                  [ mkElement qn6 []-                                    [ mkElement qn6 []-                                      [ mkElement qn6 []-                                        [ mkElement qn6 []-                                          [ mkElement qn6 []-                                            [ mkElement qn6 []-                                              [ mkElement qn6 []-                                                [ mkElement qn6 []-                                                  [ mkElement qn6 []-                                                    [ mkElement qn21-                                                      [ mkAttr qn16 [ mkText "25" ]-                                                      ] []-                                                    , mkElement qn21-                                                      [ mkAttr qn16 [ mkText "26" ]-                                                      ] []-                                                    ]-                                                  , mkElement qn21-                                                    [ mkAttr qn16 [ mkText "27" ]-                                                    ] []-                                                  ]-                                                , mkElement qn21-                                                  [ mkAttr qn16 [ mkText "28" ]-                                                  ] []-                                                ]-                                              , mkElement qn21-                                                [ mkAttr qn16 [ mkText "29" ]-                                                ] []-                                              ]-                                            , mkElement qn21-                                              [ mkAttr qn16 [ mkText "30" ]-                                              ] []-                                            ]-                                          , mkElement qn21-                                            [ mkAttr qn16 [ mkText "31" ]-                                            ] []-                                          ]-                                        , mkElement qn21-                                          [ mkAttr qn16 [ mkText "32" ]-                                          ] []-                                        ]-                                      , mkElement qn21-                                        [ mkAttr qn16 [ mkText "33" ]-                                        ] []-                                      ]-                                    , mkElement qn21-                                      [ mkAttr qn16 [ mkText "34" ]-                                      ] []-                                    ]-                                  , mkElement qn21-                                    [ mkAttr qn16 [ mkText "35" ]-                                    ] []-                                  ]-                                , mkElement qn21-                                  [ mkAttr qn16 [ mkText "36" ]-                                  ] []-                                ]-                              , mkElement qn21-                                [ mkAttr qn16 [ mkText "37" ]-                                ] []-                              ]-                            , mkElement qn21-                              [ mkAttr qn16 [ mkText "38" ]-                              ] []-                            ]-                          , mkElement qn21-                            [ mkAttr qn16 [ mkText "39" ]-                            ] []-                          ]-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "40" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "43" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "44" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "14" ]-                    ] []-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "31" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "zeroOrMore"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "16" ]-                    ] []-                  ]-                ]-              , mkElement qn20 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn6 []-                          [ mkElement qn6 []-                            [ mkElement qn6 []-                              [ mkElement qn6 []-                                [ mkElement qn6 []-                                  [ mkElement qn6 []-                                    [ mkElement qn6 []-                                      [ mkElement qn6 []-                                        [ mkElement qn6 []-                                          [ mkElement qn6 []-                                            [ mkElement qn6 []-                                              [ mkElement qn6 []-                                                [ mkElement qn6 []-                                                  [ mkElement qn6 []-                                                    [ mkElement qn21-                                                      [ mkAttr qn16 [ mkText "25" ]-                                                      ] []-                                                    , mkElement qn21-                                                      [ mkAttr qn16 [ mkText "26" ]-                                                      ] []-                                                    ]-                                                  , mkElement qn21-                                                    [ mkAttr qn16 [ mkText "27" ]-                                                    ] []-                                                  ]-                                                , mkElement qn21-                                                  [ mkAttr qn16 [ mkText "28" ]-                                                  ] []-                                                ]-                                              , mkElement qn21-                                                [ mkAttr qn16 [ mkText "29" ]-                                                ] []-                                              ]-                                            , mkElement qn21-                                              [ mkAttr qn16 [ mkText "30" ]-                                              ] []-                                            ]-                                          , mkElement qn21-                                            [ mkAttr qn16 [ mkText "31" ]-                                            ] []-                                          ]-                                        , mkElement qn21-                                          [ mkAttr qn16 [ mkText "32" ]-                                          ] []-                                        ]-                                      , mkElement qn21-                                        [ mkAttr qn16 [ mkText "33" ]-                                        ] []-                                      ]-                                    , mkElement qn21-                                      [ mkAttr qn16 [ mkText "34" ]-                                      ] []-                                    ]-                                  , mkElement qn21-                                    [ mkAttr qn16 [ mkText "35" ]-                                    ] []-                                  ]-                                , mkElement qn21-                                  [ mkAttr qn16 [ mkText "36" ]-                                  ] []-                                ]-                              , mkElement qn21-                                [ mkAttr qn16 [ mkText "37" ]-                                ] []-                              ]-                            , mkElement qn21-                              [ mkAttr qn16 [ mkText "38" ]-                              ] []-                            ]-                          , mkElement qn21-                            [ mkAttr qn16 [ mkText "39" ]-                            ] []-                          ]-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "40" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "43" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "44" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "14" ]-                    ] []-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "30" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "optional"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "16" ]-                    ] []-                  ]-                ]-              , mkElement qn20 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn6 []-                          [ mkElement qn6 []-                            [ mkElement qn6 []-                              [ mkElement qn6 []-                                [ mkElement qn6 []-                                  [ mkElement qn6 []-                                    [ mkElement qn6 []-                                      [ mkElement qn6 []-                                        [ mkElement qn6 []-                                          [ mkElement qn6 []-                                            [ mkElement qn6 []-                                              [ mkElement qn6 []-                                                [ mkElement qn6 []-                                                  [ mkElement qn6 []-                                                    [ mkElement qn21-                                                      [ mkAttr qn16 [ mkText "25" ]-                                                      ] []-                                                    , mkElement qn21-                                                      [ mkAttr qn16 [ mkText "26" ]-                                                      ] []-                                                    ]-                                                  , mkElement qn21-                                                    [ mkAttr qn16 [ mkText "27" ]-                                                    ] []-                                                  ]-                                                , mkElement qn21-                                                  [ mkAttr qn16 [ mkText "28" ]-                                                  ] []-                                                ]-                                              , mkElement qn21-                                                [ mkAttr qn16 [ mkText "29" ]-                                                ] []-                                              ]-                                            , mkElement qn21-                                              [ mkAttr qn16 [ mkText "30" ]-                                              ] []-                                            ]-                                          , mkElement qn21-                                            [ mkAttr qn16 [ mkText "31" ]-                                            ] []-                                          ]-                                        , mkElement qn21-                                          [ mkAttr qn16 [ mkText "32" ]-                                          ] []-                                        ]-                                      , mkElement qn21-                                        [ mkAttr qn16 [ mkText "33" ]-                                        ] []-                                      ]-                                    , mkElement qn21-                                      [ mkAttr qn16 [ mkText "34" ]-                                      ] []-                                    ]-                                  , mkElement qn21-                                    [ mkAttr qn16 [ mkText "35" ]-                                    ] []-                                  ]-                                , mkElement qn21-                                  [ mkAttr qn16 [ mkText "36" ]-                                  ] []-                                ]-                              , mkElement qn21-                                [ mkAttr qn16 [ mkText "37" ]-                                ] []-                              ]-                            , mkElement qn21-                              [ mkAttr qn16 [ mkText "38" ]-                              ] []-                            ]-                          , mkElement qn21-                            [ mkAttr qn16 [ mkText "39" ]-                            ] []-                          ]-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "40" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "43" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "44" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "14" ]-                    ] []-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "29" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "choice"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "16" ]-                    ] []-                  ]-                ]-              , mkElement qn20 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn6 []-                          [ mkElement qn6 []-                            [ mkElement qn6 []-                              [ mkElement qn6 []-                                [ mkElement qn6 []-                                  [ mkElement qn6 []-                                    [ mkElement qn6 []-                                      [ mkElement qn6 []-                                        [ mkElement qn6 []-                                          [ mkElement qn6 []-                                            [ mkElement qn6 []-                                              [ mkElement qn6 []-                                                [ mkElement qn6 []-                                                  [ mkElement qn6 []-                                                    [ mkElement qn21-                                                      [ mkAttr qn16 [ mkText "25" ]-                                                      ] []-                                                    , mkElement qn21-                                                      [ mkAttr qn16 [ mkText "26" ]-                                                      ] []-                                                    ]-                                                  , mkElement qn21-                                                    [ mkAttr qn16 [ mkText "27" ]-                                                    ] []-                                                  ]-                                                , mkElement qn21-                                                  [ mkAttr qn16 [ mkText "28" ]-                                                  ] []-                                                ]-                                              , mkElement qn21-                                                [ mkAttr qn16 [ mkText "29" ]-                                                ] []-                                              ]-                                            , mkElement qn21-                                              [ mkAttr qn16 [ mkText "30" ]-                                              ] []-                                            ]-                                          , mkElement qn21-                                            [ mkAttr qn16 [ mkText "31" ]-                                            ] []-                                          ]-                                        , mkElement qn21-                                          [ mkAttr qn16 [ mkText "32" ]-                                          ] []-                                        ]-                                      , mkElement qn21-                                        [ mkAttr qn16 [ mkText "33" ]-                                        ] []-                                      ]-                                    , mkElement qn21-                                      [ mkAttr qn16 [ mkText "34" ]-                                      ] []-                                    ]-                                  , mkElement qn21-                                    [ mkAttr qn16 [ mkText "35" ]-                                    ] []-                                  ]-                                , mkElement qn21-                                  [ mkAttr qn16 [ mkText "36" ]-                                  ] []-                                ]-                              , mkElement qn21-                                [ mkAttr qn16 [ mkText "37" ]-                                ] []-                              ]-                            , mkElement qn21-                              [ mkAttr qn16 [ mkText "38" ]-                              ] []-                            ]-                          , mkElement qn21-                            [ mkAttr qn16 [ mkText "39" ]-                            ] []-                          ]-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "40" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "43" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "44" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "14" ]-                    ] []-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "28" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "interleave"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "16" ]-                    ] []-                  ]-                ]-              , mkElement qn20 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn6 []-                          [ mkElement qn6 []-                            [ mkElement qn6 []-                              [ mkElement qn6 []-                                [ mkElement qn6 []-                                  [ mkElement qn6 []-                                    [ mkElement qn6 []-                                      [ mkElement qn6 []-                                        [ mkElement qn6 []-                                          [ mkElement qn6 []-                                            [ mkElement qn6 []-                                              [ mkElement qn6 []-                                                [ mkElement qn6 []-                                                  [ mkElement qn6 []-                                                    [ mkElement qn21-                                                      [ mkAttr qn16 [ mkText "25" ]-                                                      ] []-                                                    , mkElement qn21-                                                      [ mkAttr qn16 [ mkText "26" ]-                                                      ] []-                                                    ]-                                                  , mkElement qn21-                                                    [ mkAttr qn16 [ mkText "27" ]-                                                    ] []-                                                  ]-                                                , mkElement qn21-                                                  [ mkAttr qn16 [ mkText "28" ]-                                                  ] []-                                                ]-                                              , mkElement qn21-                                                [ mkAttr qn16 [ mkText "29" ]-                                                ] []-                                              ]-                                            , mkElement qn21-                                              [ mkAttr qn16 [ mkText "30" ]-                                              ] []-                                            ]-                                          , mkElement qn21-                                            [ mkAttr qn16 [ mkText "31" ]-                                            ] []-                                          ]-                                        , mkElement qn21-                                          [ mkAttr qn16 [ mkText "32" ]-                                          ] []-                                        ]-                                      , mkElement qn21-                                        [ mkAttr qn16 [ mkText "33" ]-                                        ] []-                                      ]-                                    , mkElement qn21-                                      [ mkAttr qn16 [ mkText "34" ]-                                      ] []-                                    ]-                                  , mkElement qn21-                                    [ mkAttr qn16 [ mkText "35" ]-                                    ] []-                                  ]-                                , mkElement qn21-                                  [ mkAttr qn16 [ mkText "36" ]-                                  ] []-                                ]-                              , mkElement qn21-                                [ mkAttr qn16 [ mkText "37" ]-                                ] []-                              ]-                            , mkElement qn21-                              [ mkAttr qn16 [ mkText "38" ]-                              ] []-                            ]-                          , mkElement qn21-                            [ mkAttr qn16 [ mkText "39" ]-                            ] []-                          ]-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "40" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "43" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "44" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "14" ]-                    ] []-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "27" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "group"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "16" ]-                    ] []-                  ]-                ]-              , mkElement qn20 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn6 []-                          [ mkElement qn6 []-                            [ mkElement qn6 []-                              [ mkElement qn6 []-                                [ mkElement qn6 []-                                  [ mkElement qn6 []-                                    [ mkElement qn6 []-                                      [ mkElement qn6 []-                                        [ mkElement qn6 []-                                          [ mkElement qn6 []-                                            [ mkElement qn6 []-                                              [ mkElement qn6 []-                                                [ mkElement qn6 []-                                                  [ mkElement qn6 []-                                                    [ mkElement qn21-                                                      [ mkAttr qn16 [ mkText "25" ]-                                                      ] []-                                                    , mkElement qn21-                                                      [ mkAttr qn16 [ mkText "26" ]-                                                      ] []-                                                    ]-                                                  , mkElement qn21-                                                    [ mkAttr qn16 [ mkText "27" ]-                                                    ] []-                                                  ]-                                                , mkElement qn21-                                                  [ mkAttr qn16 [ mkText "28" ]-                                                  ] []-                                                ]-                                              , mkElement qn21-                                                [ mkAttr qn16 [ mkText "29" ]-                                                ] []-                                              ]-                                            , mkElement qn21-                                              [ mkAttr qn16 [ mkText "30" ]-                                              ] []-                                            ]-                                          , mkElement qn21-                                            [ mkAttr qn16 [ mkText "31" ]-                                            ] []-                                          ]-                                        , mkElement qn21-                                          [ mkAttr qn16 [ mkText "32" ]-                                          ] []-                                        ]-                                      , mkElement qn21-                                        [ mkAttr qn16 [ mkText "33" ]-                                        ] []-                                      ]-                                    , mkElement qn21-                                      [ mkAttr qn16 [ mkText "34" ]-                                      ] []-                                    ]-                                  , mkElement qn21-                                    [ mkAttr qn16 [ mkText "35" ]-                                    ] []-                                  ]-                                , mkElement qn21-                                  [ mkAttr qn16 [ mkText "36" ]-                                  ] []-                                ]-                              , mkElement qn21-                                [ mkAttr qn16 [ mkText "37" ]-                                ] []-                              ]-                            , mkElement qn21-                              [ mkAttr qn16 [ mkText "38" ]-                              ] []-                            ]-                          , mkElement qn21-                            [ mkAttr qn16 [ mkText "39" ]-                            ] []-                          ]-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "40" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "43" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "44" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "14" ]-                    ] []-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "26" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "attribute"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn14 []-                  [ mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "ns"-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  , mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "datatypeLibrary"-                        ]-                      , mkElement qn7-                        [ mkAttr qn24 [ mkText "anyURI" ]-                        , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                        ] []-                      ]-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn20 []-                    [ mkElement qn5 []-                      [ mkElement qn4 []-                        [ mkElement qn12 []-                          [ mkElement qn6 []-                            [ mkElement qn19-                              [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                              ] []-                            , mkElement qn19-                              [ mkAttr qn18 [ mkText "" ]-                              ] []-                            ]-                          ]-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn5 []-                  [ mkElement qn17-                    [ mkAttr qn18 [ mkText "" ]-                    ]-                    [ mkText "name"-                    ]-                  , mkElement qn7-                    [ mkAttr qn24 [ mkText "QName" ]-                    , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                    ] []-                  ]-                , mkElement qn15 []-                  [ mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn20 []-                      [ mkElement qn21-                        [ mkAttr qn16 [ mkText "16" ]-                        ] []-                      ]-                    ]-                  , mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn21-                          [ mkAttr qn16 [ mkText "18" ]-                          ] []-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "19" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "20" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "21" ]-                      ] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "16" ]-                    ] []-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn6 []-                          [ mkElement qn6 []-                            [ mkElement qn6 []-                              [ mkElement qn6 []-                                [ mkElement qn6 []-                                  [ mkElement qn6 []-                                    [ mkElement qn6 []-                                      [ mkElement qn6 []-                                        [ mkElement qn6 []-                                          [ mkElement qn6 []-                                            [ mkElement qn6 []-                                              [ mkElement qn6 []-                                                [ mkElement qn6 []-                                                  [ mkElement qn6 []-                                                    [ mkElement qn21-                                                      [ mkAttr qn16 [ mkText "25" ]-                                                      ] []-                                                    , mkElement qn21-                                                      [ mkAttr qn16 [ mkText "26" ]-                                                      ] []-                                                    ]-                                                  , mkElement qn21-                                                    [ mkAttr qn16 [ mkText "27" ]-                                                    ] []-                                                  ]-                                                , mkElement qn21-                                                  [ mkAttr qn16 [ mkText "28" ]-                                                  ] []-                                                ]-                                              , mkElement qn21-                                                [ mkAttr qn16 [ mkText "29" ]-                                                ] []-                                              ]-                                            , mkElement qn21-                                              [ mkAttr qn16 [ mkText "30" ]-                                              ] []-                                            ]-                                          , mkElement qn21-                                            [ mkAttr qn16 [ mkText "31" ]-                                            ] []-                                          ]-                                        , mkElement qn21-                                          [ mkAttr qn16 [ mkText "32" ]-                                          ] []-                                        ]-                                      , mkElement qn21-                                        [ mkAttr qn16 [ mkText "33" ]-                                        ] []-                                      ]-                                    , mkElement qn21-                                      [ mkAttr qn16 [ mkText "34" ]-                                      ] []-                                    ]-                                  , mkElement qn21-                                    [ mkAttr qn16 [ mkText "35" ]-                                    ] []-                                  ]-                                , mkElement qn21-                                  [ mkAttr qn16 [ mkText "36" ]-                                  ] []-                                ]-                              , mkElement qn21-                                [ mkAttr qn16 [ mkText "37" ]-                                ] []-                              ]-                            , mkElement qn21-                              [ mkAttr qn16 [ mkText "38" ]-                              ] []-                            ]-                          , mkElement qn21-                            [ mkAttr qn16 [ mkText "39" ]-                            ] []-                          ]-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "40" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "43" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "44" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "14" ]-                    ] []-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "25" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "element"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn6 []-                [ mkElement qn5 []-                  [ mkElement qn17-                    [ mkAttr qn18 [ mkText "" ]-                    ]-                    [ mkText "name"-                    ]-                  , mkElement qn7-                    [ mkAttr qn24 [ mkText "QName" ]-                    , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                    ] []-                  ]-                , mkElement qn15 []-                  [ mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn20 []-                      [ mkElement qn21-                        [ mkAttr qn16 [ mkText "16" ]-                        ] []-                      ]-                    ]-                  , mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn21-                          [ mkAttr qn16 [ mkText "18" ]-                          ] []-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "19" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "20" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "21" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn14 []-                [ mkElement qn14 []-                  [ mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "ns"-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  , mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "datatypeLibrary"-                        ]-                      , mkElement qn7-                        [ mkAttr qn24 [ mkText "anyURI" ]-                        , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                        ] []-                      ]-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn20 []-                    [ mkElement qn5 []-                      [ mkElement qn4 []-                        [ mkElement qn12 []-                          [ mkElement qn6 []-                            [ mkElement qn19-                              [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                              ] []-                            , mkElement qn19-                              [ mkAttr qn18 [ mkText "" ]-                              ] []-                            ]-                          ]-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "16" ]-                    ] []-                  ]-                ]-              , mkElement qn20 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn6 []-                          [ mkElement qn6 []-                            [ mkElement qn6 []-                              [ mkElement qn6 []-                                [ mkElement qn6 []-                                  [ mkElement qn6 []-                                    [ mkElement qn6 []-                                      [ mkElement qn6 []-                                        [ mkElement qn6 []-                                          [ mkElement qn6 []-                                            [ mkElement qn6 []-                                              [ mkElement qn6 []-                                                [ mkElement qn6 []-                                                  [ mkElement qn6 []-                                                    [ mkElement qn21-                                                      [ mkAttr qn16 [ mkText "25" ]-                                                      ] []-                                                    , mkElement qn21-                                                      [ mkAttr qn16 [ mkText "26" ]-                                                      ] []-                                                    ]-                                                  , mkElement qn21-                                                    [ mkAttr qn16 [ mkText "27" ]-                                                    ] []-                                                  ]-                                                , mkElement qn21-                                                  [ mkAttr qn16 [ mkText "28" ]-                                                  ] []-                                                ]-                                              , mkElement qn21-                                                [ mkAttr qn16 [ mkText "29" ]-                                                ] []-                                              ]-                                            , mkElement qn21-                                              [ mkAttr qn16 [ mkText "30" ]-                                              ] []-                                            ]-                                          , mkElement qn21-                                            [ mkAttr qn16 [ mkText "31" ]-                                            ] []-                                          ]-                                        , mkElement qn21-                                          [ mkAttr qn16 [ mkText "32" ]-                                          ] []-                                        ]-                                      , mkElement qn21-                                        [ mkAttr qn16 [ mkText "33" ]-                                        ] []-                                      ]-                                    , mkElement qn21-                                      [ mkAttr qn16 [ mkText "34" ]-                                      ] []-                                    ]-                                  , mkElement qn21-                                    [ mkAttr qn16 [ mkText "35" ]-                                    ] []-                                  ]-                                , mkElement qn21-                                  [ mkAttr qn16 [ mkText "36" ]-                                  ] []-                                ]-                              , mkElement qn21-                                [ mkAttr qn16 [ mkText "37" ]-                                ] []-                              ]-                            , mkElement qn21-                              [ mkAttr qn16 [ mkText "38" ]-                              ] []-                            ]-                          , mkElement qn21-                            [ mkAttr qn16 [ mkText "39" ]-                            ] []-                          ]-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "40" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "43" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "44" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "14" ]-                    ] []-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "24" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "include"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn5 []-                [ mkElement qn17-                  [ mkAttr qn18 [ mkText "" ]-                  ]-                  [ mkText "href"-                  ]-                , mkElement qn7-                  [ mkAttr qn24 [ mkText "anyURI" ]-                  , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                  ] []-                ]-              , mkElement qn14 []-                [ mkElement qn14 []-                  [ mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "ns"-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  , mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "datatypeLibrary"-                        ]-                      , mkElement qn7-                        [ mkAttr qn24 [ mkText "anyURI" ]-                        , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                        ] []-                      ]-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn20 []-                    [ mkElement qn5 []-                      [ mkElement qn4 []-                        [ mkElement qn12 []-                          [ mkElement qn6 []-                            [ mkElement qn19-                              [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                              ] []-                            , mkElement qn19-                              [ mkAttr qn18 [ mkText "" ]-                              ] []-                            ]-                          ]-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "16" ]-                    ] []-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn21-                        [ mkAttr qn16 [ mkText "11" ]-                        ] []-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "10" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "22" ]-                      ] []-                    ]-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "23" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "div"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "16" ]-                    ] []-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn21-                          [ mkAttr qn16 [ mkText "11" ]-                          ] []-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "10" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "23" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "24" ]-                      ] []-                    ]-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "22" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "div"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "16" ]-                    ] []-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn21-                        [ mkAttr qn16 [ mkText "11" ]-                        ] []-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "10" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "22" ]-                      ] []-                    ]-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "21" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "choice"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "16" ]-                    ] []-                  ]-                ]-              , mkElement qn20 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn21-                        [ mkAttr qn16 [ mkText "18" ]-                        ] []-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "19" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "20" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "21" ]-                    ] []-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "20" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "nsName"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "16" ]-                    ] []-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn21-                  [ mkAttr qn16 [ mkText "17" ]-                  ] []-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "19" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "anyName"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "16" ]-                    ] []-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn21-                  [ mkAttr qn16 [ mkText "17" ]-                  ] []-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "18" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "name"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn7-              [ mkAttr qn24 [ mkText "QName" ]-              , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-              ] []-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "17" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "except"-            ]-          , mkElement qn15 []-            [ mkElement qn6 []-              [ mkElement qn11 [] []-              , mkElement qn20 []-                [ mkElement qn21-                  [ mkAttr qn16 [ mkText "16" ]-                  ] []-                ]-              ]-            , mkElement qn20 []-              [ mkElement qn6 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn21-                      [ mkAttr qn16 [ mkText "18" ]-                      ] []-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "19" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "20" ]-                    ] []-                  ]-                , mkElement qn21-                  [ mkAttr qn16 [ mkText "21" ]-                  ] []-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "16" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn4 []-            [ mkElement qn12 []-              [ mkElement qn19-                [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                ] []-              ]-            ]-          , mkElement qn6 []-            [ mkElement qn11 [] []-            , mkElement qn20 []-              [ mkElement qn6 []-                [ mkElement qn6 []-                  [ mkElement qn5 []-                    [ mkElement qn4 [] []-                    , mkElement qn23 [] []-                    ]-                  , mkElement qn23 [] []-                  ]-                , mkElement qn21-                  [ mkAttr qn16 [ mkText "0" ]-                  ] []-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "0" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn4 [] []-          , mkElement qn6 []-            [ mkElement qn11 [] []-            , mkElement qn20 []-              [ mkElement qn6 []-                [ mkElement qn6 []-                  [ mkElement qn5 []-                    [ mkElement qn4 [] []-                    , mkElement qn23 [] []-                    ]-                  , mkElement qn23 [] []-                  ]-                , mkElement qn21-                  [ mkAttr qn16 [ mkText "0" ]-                  ] []-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "10" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "define"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn5 []-                  [ mkElement qn17-                    [ mkAttr qn18 [ mkText "" ]-                    ]-                    [ mkText "name"-                    ]-                  , mkElement qn7-                    [ mkAttr qn24 [ mkText "NCName" ]-                    , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                    ] []-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "combine"-                      ]-                    , mkElement qn6 []-                      [ mkElement qn25-                        [ mkAttr qn1 [ mkText "http://www.w3.org/XML/1998/namespace" ]-                        , mkAttr qn3 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                        , mkAttr qn2 [ mkText "file:///home/uwe/haskell/hxt/curr/src/Text/XML/HXT/RelaxNG/schema2hs/SchemaGrammar.rng" ]-                        , mkAttr qn8 [ mkText "" ]-                        , mkAttr qn24 [ mkText "token" ]-                        , mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                        ]-                        [ mkText "choice"-                        ]-                      , mkElement qn25-                        [ mkAttr qn1 [ mkText "http://www.w3.org/XML/1998/namespace" ]-                        , mkAttr qn3 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                        , mkAttr qn2 [ mkText "file:///home/uwe/haskell/hxt/curr/src/Text/XML/HXT/RelaxNG/schema2hs/SchemaGrammar.rng" ]-                        , mkAttr qn8 [ mkText "" ]-                        , mkAttr qn24 [ mkText "token" ]-                        , mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                        ]-                        [ mkText "interleave"-                        ]-                      ]-                    ]-                  ]-                ]-              , mkElement qn14 []-                [ mkElement qn14 []-                  [ mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "ns"-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  , mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "datatypeLibrary"-                        ]-                      , mkElement qn7-                        [ mkAttr qn24 [ mkText "anyURI" ]-                        , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                        ] []-                      ]-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn20 []-                    [ mkElement qn5 []-                      [ mkElement qn4 []-                        [ mkElement qn12 []-                          [ mkElement qn6 []-                            [ mkElement qn19-                              [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                              ] []-                            , mkElement qn19-                              [ mkAttr qn18 [ mkText "" ]-                              ] []-                            ]-                          ]-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "16" ]-                    ] []-                  ]-                ]-              , mkElement qn20 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn6 []-                          [ mkElement qn6 []-                            [ mkElement qn6 []-                              [ mkElement qn6 []-                                [ mkElement qn6 []-                                  [ mkElement qn6 []-                                    [ mkElement qn6 []-                                      [ mkElement qn6 []-                                        [ mkElement qn6 []-                                          [ mkElement qn6 []-                                            [ mkElement qn6 []-                                              [ mkElement qn6 []-                                                [ mkElement qn6 []-                                                  [ mkElement qn6 []-                                                    [ mkElement qn21-                                                      [ mkAttr qn16 [ mkText "25" ]-                                                      ] []-                                                    , mkElement qn21-                                                      [ mkAttr qn16 [ mkText "26" ]-                                                      ] []-                                                    ]-                                                  , mkElement qn21-                                                    [ mkAttr qn16 [ mkText "27" ]-                                                    ] []-                                                  ]-                                                , mkElement qn21-                                                  [ mkAttr qn16 [ mkText "28" ]-                                                  ] []-                                                ]-                                              , mkElement qn21-                                                [ mkAttr qn16 [ mkText "29" ]-                                                ] []-                                              ]-                                            , mkElement qn21-                                              [ mkAttr qn16 [ mkText "30" ]-                                              ] []-                                            ]-                                          , mkElement qn21-                                            [ mkAttr qn16 [ mkText "31" ]-                                            ] []-                                          ]-                                        , mkElement qn21-                                          [ mkAttr qn16 [ mkText "32" ]-                                          ] []-                                        ]-                                      , mkElement qn21-                                        [ mkAttr qn16 [ mkText "33" ]-                                        ] []-                                      ]-                                    , mkElement qn21-                                      [ mkAttr qn16 [ mkText "34" ]-                                      ] []-                                    ]-                                  , mkElement qn21-                                    [ mkAttr qn16 [ mkText "35" ]-                                    ] []-                                  ]-                                , mkElement qn21-                                  [ mkAttr qn16 [ mkText "36" ]-                                  ] []-                                ]-                              , mkElement qn21-                                [ mkAttr qn16 [ mkText "37" ]-                                ] []-                              ]-                            , mkElement qn21-                              [ mkAttr qn16 [ mkText "38" ]-                              ] []-                            ]-                          , mkElement qn21-                            [ mkAttr qn16 [ mkText "39" ]-                            ] []-                          ]-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "40" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "43" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "44" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "14" ]-                    ] []-                  ]-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "11" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "start"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn5 []-                  [ mkElement qn17-                    [ mkAttr qn18 [ mkText "" ]-                    ]-                    [ mkText "combine"-                    ]-                  , mkElement qn6 []-                    [ mkElement qn25-                      [ mkAttr qn1 [ mkText "http://www.w3.org/XML/1998/namespace" ]-                      , mkAttr qn3 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                      , mkAttr qn2 [ mkText "file:///home/uwe/haskell/hxt/curr/src/Text/XML/HXT/RelaxNG/schema2hs/SchemaGrammar.rng" ]-                      , mkAttr qn8 [ mkText "" ]-                      , mkAttr qn24 [ mkText "token" ]-                      , mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                      ]-                      [ mkText "choice"-                      ]-                    , mkElement qn25-                      [ mkAttr qn1 [ mkText "http://www.w3.org/XML/1998/namespace" ]-                      , mkAttr qn3 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                      , mkAttr qn2 [ mkText "file:///home/uwe/haskell/hxt/curr/src/Text/XML/HXT/RelaxNG/schema2hs/SchemaGrammar.rng" ]-                      , mkAttr qn8 [ mkText "" ]-                      , mkAttr qn24 [ mkText "token" ]-                      , mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                      ]-                      [ mkText "interleave"-                      ]-                    ]-                  ]-                ]-              , mkElement qn14 []-                [ mkElement qn14 []-                  [ mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "ns"-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  , mkElement qn6 []-                    [ mkElement qn11 [] []-                    , mkElement qn5 []-                      [ mkElement qn17-                        [ mkAttr qn18 [ mkText "" ]-                        ]-                        [ mkText "datatypeLibrary"-                        ]-                      , mkElement qn7-                        [ mkAttr qn24 [ mkText "anyURI" ]-                        , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                        ] []-                      ]-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn20 []-                    [ mkElement qn5 []-                      [ mkElement qn4 []-                        [ mkElement qn12 []-                          [ mkElement qn6 []-                            [ mkElement qn19-                              [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                              ] []-                            , mkElement qn19-                              [ mkAttr qn18 [ mkText "" ]-                              ] []-                            ]-                          ]-                        ]-                      , mkElement qn23 [] []-                      ]-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "16" ]-                    ] []-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn6 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn6 []-                          [ mkElement qn6 []-                            [ mkElement qn6 []-                              [ mkElement qn6 []-                                [ mkElement qn6 []-                                  [ mkElement qn6 []-                                    [ mkElement qn6 []-                                      [ mkElement qn6 []-                                        [ mkElement qn6 []-                                          [ mkElement qn6 []-                                            [ mkElement qn6 []-                                              [ mkElement qn6 []-                                                [ mkElement qn6 []-                                                  [ mkElement qn21-                                                    [ mkAttr qn16 [ mkText "25" ]-                                                    ] []-                                                  , mkElement qn21-                                                    [ mkAttr qn16 [ mkText "26" ]-                                                    ] []-                                                  ]-                                                , mkElement qn21-                                                  [ mkAttr qn16 [ mkText "27" ]-                                                  ] []-                                                ]-                                              , mkElement qn21-                                                [ mkAttr qn16 [ mkText "28" ]-                                                ] []-                                              ]-                                            , mkElement qn21-                                              [ mkAttr qn16 [ mkText "29" ]-                                              ] []-                                            ]-                                          , mkElement qn21-                                            [ mkAttr qn16 [ mkText "30" ]-                                            ] []-                                          ]-                                        , mkElement qn21-                                          [ mkAttr qn16 [ mkText "31" ]-                                          ] []-                                        ]-                                      , mkElement qn21-                                        [ mkAttr qn16 [ mkText "32" ]-                                        ] []-                                      ]-                                    , mkElement qn21-                                      [ mkAttr qn16 [ mkText "33" ]-                                      ] []-                                    ]-                                  , mkElement qn21-                                    [ mkAttr qn16 [ mkText "34" ]-                                    ] []-                                  ]-                                , mkElement qn21-                                  [ mkAttr qn16 [ mkText "35" ]-                                  ] []-                                ]-                              , mkElement qn21-                                [ mkAttr qn16 [ mkText "36" ]-                                ] []-                              ]-                            , mkElement qn21-                              [ mkAttr qn16 [ mkText "37" ]-                              ] []-                            ]-                          , mkElement qn21-                            [ mkAttr qn16 [ mkText "38" ]-                            ] []-                          ]-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "39" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "40" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "43" ]-                      ] []-                    ]-                  , mkElement qn21-                    [ mkAttr qn16 [ mkText "44" ]-                    ] []-                  ]-                , mkElement qn21-                  [ mkAttr qn16 [ mkText "14" ]-                  ] []-                ]-              ]-            ]-          ]-        ]-      , mkElement qn9-        [ mkAttr qn16 [ mkText "14" ]-        ]-        [ mkElement qn10 []-          [ mkElement qn17-            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-            ]-            [ mkText "grammar"-            ]-          , mkElement qn14 []-            [ mkElement qn14 []-              [ mkElement qn14 []-                [ mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "ns"-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                , mkElement qn6 []-                  [ mkElement qn11 [] []-                  , mkElement qn5 []-                    [ mkElement qn17-                      [ mkAttr qn18 [ mkText "" ]-                      ]-                      [ mkText "datatypeLibrary"-                      ]-                    , mkElement qn7-                      [ mkAttr qn24 [ mkText "anyURI" ]-                      , mkAttr qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]-                      ] []-                    ]-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn5 []-                    [ mkElement qn4 []-                      [ mkElement qn12 []-                        [ mkElement qn6 []-                          [ mkElement qn19-                            [ mkAttr qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]-                            ] []-                          , mkElement qn19-                            [ mkAttr qn18 [ mkText "" ]-                            ] []-                          ]-                        ]-                      ]-                    , mkElement qn23 [] []-                    ]-                  ]-                ]-              ]-            , mkElement qn15 []-              [ mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn21-                    [ mkAttr qn16 [ mkText "16" ]-                    ] []-                  ]-                ]-              , mkElement qn6 []-                [ mkElement qn11 [] []-                , mkElement qn20 []-                  [ mkElement qn6 []-                    [ mkElement qn6 []-                      [ mkElement qn6 []-                        [ mkElement qn21-                          [ mkAttr qn16 [ mkText "11" ]-                          ] []-                        , mkElement qn21-                          [ mkAttr qn16 [ mkText "10" ]-                          ] []-                        ]-                      , mkElement qn21-                        [ mkAttr qn16 [ mkText "23" ]-                        ] []-                      ]-                    , mkElement qn21-                      [ mkAttr qn16 [ mkText "24" ]+{-# OPTIONS_GHC -fno-warn-unused-binds #-}++{- |+   Module     : Text.HXT.RelaxNG.SchemaGrammar++   Don't edit this module, it's generated by RelaxSchemaToXmlTree++-}++module Text.XML.HXT.RelaxNG.SchemaGrammar+    ( relaxSchemaTree, relaxSchemaArrow )+where++import Text.XML.HXT.DOM.TypeDefs+import Text.XML.HXT.DOM.XmlNode (mkRoot, mkElement, mkAttr, mkText)++import Control.Arrow.ListArrows++relaxSchemaArrow :: ArrowList a => a b XmlTree+relaxSchemaArrow = constA relaxSchemaTree++relaxSchemaTree :: XmlTree+relaxSchemaTree =+  let+  ns1 = "http://relaxng.org/ns/structure/1.0"+  qn1        = mkName   "RelaxContext-xml"+  mkelem_qn1 = mkElement qn1+  mkattr_qn1 = mkAttr    qn1+  qn2        = mkName   "RelaxContextBaseURI"+  mkelem_qn2 = mkElement qn2+  mkattr_qn2 = mkAttr    qn2+  qn3        = mkName   "RelaxContextDefault"+  mkelem_qn3 = mkElement qn3+  mkattr_qn3 = mkAttr    qn3+  qn4        = mkNsName "anyName" ns1+  mkelem_qn4 = mkElement qn4+  mkattr_qn4 = mkAttr    qn4+  qn5        = mkNsName "attribute" ns1+  mkelem_qn5 = mkElement qn5+  mkattr_qn5 = mkAttr    qn5+  qn6        = mkNsName "choice" ns1+  mkelem_qn6 = mkElement qn6+  mkattr_qn6 = mkAttr    qn6+  qn7        = mkNsName "data" ns1+  mkelem_qn7 = mkElement qn7+  mkattr_qn7 = mkAttr    qn7+  qn8        = mkName   "datatypeLibrary"+  mkelem_qn8 = mkElement qn8+  mkattr_qn8 = mkAttr    qn8+  qn9        = mkNsName "define" ns1+  mkelem_qn9 = mkElement qn9+  mkattr_qn9 = mkAttr    qn9+  qn10        = mkNsName "element" ns1+  mkelem_qn10 = mkElement qn10+  mkattr_qn10 = mkAttr    qn10+  qn11        = mkNsName "empty" ns1+  mkelem_qn11 = mkElement qn11+  mkattr_qn11 = mkAttr    qn11+  qn12        = mkNsName "except" ns1+  mkelem_qn12 = mkElement qn12+  mkattr_qn12 = mkAttr    qn12+  qn13        = mkNsName "grammar" ns1+  mkelem_qn13 = mkElement qn13+  mkattr_qn13 = mkAttr    qn13+  qn14        = mkNsName "group" ns1+  mkelem_qn14 = mkElement qn14+  mkattr_qn14 = mkAttr    qn14+  qn15        = mkNsName "interleave" ns1+  mkelem_qn15 = mkElement qn15+  mkattr_qn15 = mkAttr    qn15+  qn16        = mkName   "name"+  mkelem_qn16 = mkElement qn16+  mkattr_qn16 = mkAttr    qn16+  qn17        = mkNsName "name" ns1+  mkelem_qn17 = mkElement qn17+  mkattr_qn17 = mkAttr    qn17+  qn18        = mkName   "ns"+  mkelem_qn18 = mkElement qn18+  mkattr_qn18 = mkAttr    qn18+  qn19        = mkNsName "nsName" ns1+  mkelem_qn19 = mkElement qn19+  mkattr_qn19 = mkAttr    qn19+  qn20        = mkNsName "oneOrMore" ns1+  mkelem_qn20 = mkElement qn20+  mkattr_qn20 = mkAttr    qn20+  qn21        = mkNsName "ref" ns1+  mkelem_qn21 = mkElement qn21+  mkattr_qn21 = mkAttr    qn21+  qn22        = mkNsName "start" ns1+  mkelem_qn22 = mkElement qn22+  mkattr_qn22 = mkAttr    qn22+  qn23        = mkNsName "text" ns1+  mkelem_qn23 = mkElement qn23+  mkattr_qn23 = mkAttr    qn23+  qn24        = mkName   "type"+  mkelem_qn24 = mkElement qn24+  mkattr_qn24 = mkAttr    qn24+  qn25        = mkNsName "value" ns1+  mkelem_qn25 = mkElement qn25+  mkattr_qn25 = mkAttr    qn25+  in+  mkRoot []+    [ mkelem_qn13 []+      [ mkelem_qn22 []+        [ mkelem_qn21+          [ mkattr_qn16 [ mkText "14" ]+          ] []+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "44" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "externalRef"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn5 []+                [ mkelem_qn17+                  [ mkattr_qn18 [ mkText "" ]+                  ]+                  [ mkText "href"+                  ]+                , mkelem_qn7+                  [ mkattr_qn24 [ mkText "anyURI" ]+                  , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                  ] []+                ]+              , mkelem_qn14 []+                [ mkelem_qn14 []+                  [ mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "ns"+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  , mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "datatypeLibrary"+                        ]+                      , mkelem_qn7+                        [ mkattr_qn24 [ mkText "anyURI" ]+                        , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                        ] []+                      ]+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn20 []+                    [ mkelem_qn5 []+                      [ mkelem_qn4 []+                        [ mkelem_qn12 []+                          [ mkelem_qn6 []+                            [ mkelem_qn19+                              [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                              ] []+                            , mkelem_qn19+                              [ mkattr_qn18 [ mkText "" ]+                              ] []+                            ]+                          ]+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  ]+                ]+              ]+            , mkelem_qn6 []+              [ mkelem_qn11 [] []+              , mkelem_qn20 []+                [ mkelem_qn21+                  [ mkattr_qn16 [ mkText "16" ]+                  ] []+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "43" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "notAllowed"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn6 []+              [ mkelem_qn11 [] []+              , mkelem_qn20 []+                [ mkelem_qn21+                  [ mkattr_qn16 [ mkText "16" ]+                  ] []+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "40" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "data"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn5 []+                [ mkelem_qn17+                  [ mkattr_qn18 [ mkText "" ]+                  ]+                  [ mkText "type"+                  ]+                , mkelem_qn7+                  [ mkattr_qn24 [ mkText "NCName" ]+                  , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                  ] []+                ]+              , mkelem_qn14 []+                [ mkelem_qn14 []+                  [ mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "ns"+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  , mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "datatypeLibrary"+                        ]+                      , mkelem_qn7+                        [ mkattr_qn24 [ mkText "anyURI" ]+                        , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                        ] []+                      ]+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn20 []+                    [ mkelem_qn5 []+                      [ mkelem_qn4 []+                        [ mkelem_qn12 []+                          [ mkelem_qn6 []+                            [ mkelem_qn19+                              [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                              ] []+                            , mkelem_qn19+                              [ mkattr_qn18 [ mkText "" ]+                              ] []+                            ]+                          ]+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "16" ]+                    ] []+                  ]+                ]+              , mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn20 []+                    [ mkelem_qn21+                      [ mkattr_qn16 [ mkText "41" ]+                      ] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "42" ]+                    ] []+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "42" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "except"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "16" ]+                    ] []+                  ]+                ]+              , mkelem_qn20 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn6 []+                          [ mkelem_qn6 []+                            [ mkelem_qn6 []+                              [ mkelem_qn6 []+                                [ mkelem_qn6 []+                                  [ mkelem_qn6 []+                                    [ mkelem_qn6 []+                                      [ mkelem_qn6 []+                                        [ mkelem_qn6 []+                                          [ mkelem_qn6 []+                                            [ mkelem_qn6 []+                                              [ mkelem_qn6 []+                                                [ mkelem_qn6 []+                                                  [ mkelem_qn6 []+                                                    [ mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "25" ]+                                                      ] []+                                                    , mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "26" ]+                                                      ] []+                                                    ]+                                                  , mkelem_qn21+                                                    [ mkattr_qn16 [ mkText "27" ]+                                                    ] []+                                                  ]+                                                , mkelem_qn21+                                                  [ mkattr_qn16 [ mkText "28" ]+                                                  ] []+                                                ]+                                              , mkelem_qn21+                                                [ mkattr_qn16 [ mkText "29" ]+                                                ] []+                                              ]+                                            , mkelem_qn21+                                              [ mkattr_qn16 [ mkText "30" ]+                                              ] []+                                            ]+                                          , mkelem_qn21+                                            [ mkattr_qn16 [ mkText "31" ]+                                            ] []+                                          ]+                                        , mkelem_qn21+                                          [ mkattr_qn16 [ mkText "32" ]+                                          ] []+                                        ]+                                      , mkelem_qn21+                                        [ mkattr_qn16 [ mkText "33" ]+                                        ] []+                                      ]+                                    , mkelem_qn21+                                      [ mkattr_qn16 [ mkText "34" ]+                                      ] []+                                    ]+                                  , mkelem_qn21+                                    [ mkattr_qn16 [ mkText "35" ]+                                    ] []+                                  ]+                                , mkelem_qn21+                                  [ mkattr_qn16 [ mkText "36" ]+                                  ] []+                                ]+                              , mkelem_qn21+                                [ mkattr_qn16 [ mkText "37" ]+                                ] []+                              ]+                            , mkelem_qn21+                              [ mkattr_qn16 [ mkText "38" ]+                              ] []+                            ]+                          , mkelem_qn21+                            [ mkattr_qn16 [ mkText "39" ]+                            ] []+                          ]+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "40" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "43" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "44" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "14" ]+                    ] []+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "41" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "param"+            ]+          , mkelem_qn14 []+            [ mkelem_qn5 []+              [ mkelem_qn17+                [ mkattr_qn18 [ mkText "" ]+                ]+                [ mkText "name"+                ]+              , mkelem_qn7+                [ mkattr_qn24 [ mkText "NCName" ]+                , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                ] []+              ]+            , mkelem_qn23 [] []+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "39" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "value"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn5 []+                  [ mkelem_qn17+                    [ mkattr_qn18 [ mkText "" ]+                    ]+                    [ mkText "type"+                    ]+                  , mkelem_qn7+                    [ mkattr_qn24 [ mkText "NCName" ]+                    , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                    ] []+                  ]+                ]+              , mkelem_qn14 []+                [ mkelem_qn14 []+                  [ mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "ns"+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  , mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "datatypeLibrary"+                        ]+                      , mkelem_qn7+                        [ mkattr_qn24 [ mkText "anyURI" ]+                        , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                        ] []+                      ]+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn20 []+                    [ mkelem_qn5 []+                      [ mkelem_qn4 []+                        [ mkelem_qn12 []+                          [ mkelem_qn6 []+                            [ mkelem_qn19+                              [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                              ] []+                            , mkelem_qn19+                              [ mkattr_qn18 [ mkText "" ]+                              ] []+                            ]+                          ]+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  ]+                ]+              ]+            , mkelem_qn23 [] []+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "38" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "text"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn6 []+              [ mkelem_qn11 [] []+              , mkelem_qn20 []+                [ mkelem_qn21+                  [ mkattr_qn16 [ mkText "16" ]+                  ] []+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "37" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "empty"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn6 []+              [ mkelem_qn11 [] []+              , mkelem_qn20 []+                [ mkelem_qn21+                  [ mkattr_qn16 [ mkText "16" ]+                  ] []+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "36" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "parentRef"+            ]+          , mkelem_qn14 []+            [ mkelem_qn5 []+              [ mkelem_qn17+                [ mkattr_qn18 [ mkText "" ]+                ]+                [ mkText "name"+                ]+              , mkelem_qn7+                [ mkattr_qn24 [ mkText "NCName" ]+                , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                ] []+              ]+            , mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "35" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "ref"+            ]+          , mkelem_qn14 []+            [ mkelem_qn5 []+              [ mkelem_qn17+                [ mkattr_qn18 [ mkText "" ]+                ]+                [ mkText "name"+                ]+              , mkelem_qn7+                [ mkattr_qn24 [ mkText "NCName" ]+                , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                ] []+              ]+            , mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "34" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "mixed"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "16" ]+                    ] []+                  ]+                ]+              , mkelem_qn20 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn6 []+                          [ mkelem_qn6 []+                            [ mkelem_qn6 []+                              [ mkelem_qn6 []+                                [ mkelem_qn6 []+                                  [ mkelem_qn6 []+                                    [ mkelem_qn6 []+                                      [ mkelem_qn6 []+                                        [ mkelem_qn6 []+                                          [ mkelem_qn6 []+                                            [ mkelem_qn6 []+                                              [ mkelem_qn6 []+                                                [ mkelem_qn6 []+                                                  [ mkelem_qn6 []+                                                    [ mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "25" ]+                                                      ] []+                                                    , mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "26" ]+                                                      ] []+                                                    ]+                                                  , mkelem_qn21+                                                    [ mkattr_qn16 [ mkText "27" ]+                                                    ] []+                                                  ]+                                                , mkelem_qn21+                                                  [ mkattr_qn16 [ mkText "28" ]+                                                  ] []+                                                ]+                                              , mkelem_qn21+                                                [ mkattr_qn16 [ mkText "29" ]+                                                ] []+                                              ]+                                            , mkelem_qn21+                                              [ mkattr_qn16 [ mkText "30" ]+                                              ] []+                                            ]+                                          , mkelem_qn21+                                            [ mkattr_qn16 [ mkText "31" ]+                                            ] []+                                          ]+                                        , mkelem_qn21+                                          [ mkattr_qn16 [ mkText "32" ]+                                          ] []+                                        ]+                                      , mkelem_qn21+                                        [ mkattr_qn16 [ mkText "33" ]+                                        ] []+                                      ]+                                    , mkelem_qn21+                                      [ mkattr_qn16 [ mkText "34" ]+                                      ] []+                                    ]+                                  , mkelem_qn21+                                    [ mkattr_qn16 [ mkText "35" ]+                                    ] []+                                  ]+                                , mkelem_qn21+                                  [ mkattr_qn16 [ mkText "36" ]+                                  ] []+                                ]+                              , mkelem_qn21+                                [ mkattr_qn16 [ mkText "37" ]+                                ] []+                              ]+                            , mkelem_qn21+                              [ mkattr_qn16 [ mkText "38" ]+                              ] []+                            ]+                          , mkelem_qn21+                            [ mkattr_qn16 [ mkText "39" ]+                            ] []+                          ]+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "40" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "43" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "44" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "14" ]+                    ] []+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "33" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "list"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "16" ]+                    ] []+                  ]+                ]+              , mkelem_qn20 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn6 []+                          [ mkelem_qn6 []+                            [ mkelem_qn6 []+                              [ mkelem_qn6 []+                                [ mkelem_qn6 []+                                  [ mkelem_qn6 []+                                    [ mkelem_qn6 []+                                      [ mkelem_qn6 []+                                        [ mkelem_qn6 []+                                          [ mkelem_qn6 []+                                            [ mkelem_qn6 []+                                              [ mkelem_qn6 []+                                                [ mkelem_qn6 []+                                                  [ mkelem_qn6 []+                                                    [ mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "25" ]+                                                      ] []+                                                    , mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "26" ]+                                                      ] []+                                                    ]+                                                  , mkelem_qn21+                                                    [ mkattr_qn16 [ mkText "27" ]+                                                    ] []+                                                  ]+                                                , mkelem_qn21+                                                  [ mkattr_qn16 [ mkText "28" ]+                                                  ] []+                                                ]+                                              , mkelem_qn21+                                                [ mkattr_qn16 [ mkText "29" ]+                                                ] []+                                              ]+                                            , mkelem_qn21+                                              [ mkattr_qn16 [ mkText "30" ]+                                              ] []+                                            ]+                                          , mkelem_qn21+                                            [ mkattr_qn16 [ mkText "31" ]+                                            ] []+                                          ]+                                        , mkelem_qn21+                                          [ mkattr_qn16 [ mkText "32" ]+                                          ] []+                                        ]+                                      , mkelem_qn21+                                        [ mkattr_qn16 [ mkText "33" ]+                                        ] []+                                      ]+                                    , mkelem_qn21+                                      [ mkattr_qn16 [ mkText "34" ]+                                      ] []+                                    ]+                                  , mkelem_qn21+                                    [ mkattr_qn16 [ mkText "35" ]+                                    ] []+                                  ]+                                , mkelem_qn21+                                  [ mkattr_qn16 [ mkText "36" ]+                                  ] []+                                ]+                              , mkelem_qn21+                                [ mkattr_qn16 [ mkText "37" ]+                                ] []+                              ]+                            , mkelem_qn21+                              [ mkattr_qn16 [ mkText "38" ]+                              ] []+                            ]+                          , mkelem_qn21+                            [ mkattr_qn16 [ mkText "39" ]+                            ] []+                          ]+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "40" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "43" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "44" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "14" ]+                    ] []+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "32" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "oneOrMore"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "16" ]+                    ] []+                  ]+                ]+              , mkelem_qn20 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn6 []+                          [ mkelem_qn6 []+                            [ mkelem_qn6 []+                              [ mkelem_qn6 []+                                [ mkelem_qn6 []+                                  [ mkelem_qn6 []+                                    [ mkelem_qn6 []+                                      [ mkelem_qn6 []+                                        [ mkelem_qn6 []+                                          [ mkelem_qn6 []+                                            [ mkelem_qn6 []+                                              [ mkelem_qn6 []+                                                [ mkelem_qn6 []+                                                  [ mkelem_qn6 []+                                                    [ mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "25" ]+                                                      ] []+                                                    , mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "26" ]+                                                      ] []+                                                    ]+                                                  , mkelem_qn21+                                                    [ mkattr_qn16 [ mkText "27" ]+                                                    ] []+                                                  ]+                                                , mkelem_qn21+                                                  [ mkattr_qn16 [ mkText "28" ]+                                                  ] []+                                                ]+                                              , mkelem_qn21+                                                [ mkattr_qn16 [ mkText "29" ]+                                                ] []+                                              ]+                                            , mkelem_qn21+                                              [ mkattr_qn16 [ mkText "30" ]+                                              ] []+                                            ]+                                          , mkelem_qn21+                                            [ mkattr_qn16 [ mkText "31" ]+                                            ] []+                                          ]+                                        , mkelem_qn21+                                          [ mkattr_qn16 [ mkText "32" ]+                                          ] []+                                        ]+                                      , mkelem_qn21+                                        [ mkattr_qn16 [ mkText "33" ]+                                        ] []+                                      ]+                                    , mkelem_qn21+                                      [ mkattr_qn16 [ mkText "34" ]+                                      ] []+                                    ]+                                  , mkelem_qn21+                                    [ mkattr_qn16 [ mkText "35" ]+                                    ] []+                                  ]+                                , mkelem_qn21+                                  [ mkattr_qn16 [ mkText "36" ]+                                  ] []+                                ]+                              , mkelem_qn21+                                [ mkattr_qn16 [ mkText "37" ]+                                ] []+                              ]+                            , mkelem_qn21+                              [ mkattr_qn16 [ mkText "38" ]+                              ] []+                            ]+                          , mkelem_qn21+                            [ mkattr_qn16 [ mkText "39" ]+                            ] []+                          ]+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "40" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "43" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "44" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "14" ]+                    ] []+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "31" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "zeroOrMore"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "16" ]+                    ] []+                  ]+                ]+              , mkelem_qn20 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn6 []+                          [ mkelem_qn6 []+                            [ mkelem_qn6 []+                              [ mkelem_qn6 []+                                [ mkelem_qn6 []+                                  [ mkelem_qn6 []+                                    [ mkelem_qn6 []+                                      [ mkelem_qn6 []+                                        [ mkelem_qn6 []+                                          [ mkelem_qn6 []+                                            [ mkelem_qn6 []+                                              [ mkelem_qn6 []+                                                [ mkelem_qn6 []+                                                  [ mkelem_qn6 []+                                                    [ mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "25" ]+                                                      ] []+                                                    , mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "26" ]+                                                      ] []+                                                    ]+                                                  , mkelem_qn21+                                                    [ mkattr_qn16 [ mkText "27" ]+                                                    ] []+                                                  ]+                                                , mkelem_qn21+                                                  [ mkattr_qn16 [ mkText "28" ]+                                                  ] []+                                                ]+                                              , mkelem_qn21+                                                [ mkattr_qn16 [ mkText "29" ]+                                                ] []+                                              ]+                                            , mkelem_qn21+                                              [ mkattr_qn16 [ mkText "30" ]+                                              ] []+                                            ]+                                          , mkelem_qn21+                                            [ mkattr_qn16 [ mkText "31" ]+                                            ] []+                                          ]+                                        , mkelem_qn21+                                          [ mkattr_qn16 [ mkText "32" ]+                                          ] []+                                        ]+                                      , mkelem_qn21+                                        [ mkattr_qn16 [ mkText "33" ]+                                        ] []+                                      ]+                                    , mkelem_qn21+                                      [ mkattr_qn16 [ mkText "34" ]+                                      ] []+                                    ]+                                  , mkelem_qn21+                                    [ mkattr_qn16 [ mkText "35" ]+                                    ] []+                                  ]+                                , mkelem_qn21+                                  [ mkattr_qn16 [ mkText "36" ]+                                  ] []+                                ]+                              , mkelem_qn21+                                [ mkattr_qn16 [ mkText "37" ]+                                ] []+                              ]+                            , mkelem_qn21+                              [ mkattr_qn16 [ mkText "38" ]+                              ] []+                            ]+                          , mkelem_qn21+                            [ mkattr_qn16 [ mkText "39" ]+                            ] []+                          ]+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "40" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "43" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "44" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "14" ]+                    ] []+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "30" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "optional"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "16" ]+                    ] []+                  ]+                ]+              , mkelem_qn20 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn6 []+                          [ mkelem_qn6 []+                            [ mkelem_qn6 []+                              [ mkelem_qn6 []+                                [ mkelem_qn6 []+                                  [ mkelem_qn6 []+                                    [ mkelem_qn6 []+                                      [ mkelem_qn6 []+                                        [ mkelem_qn6 []+                                          [ mkelem_qn6 []+                                            [ mkelem_qn6 []+                                              [ mkelem_qn6 []+                                                [ mkelem_qn6 []+                                                  [ mkelem_qn6 []+                                                    [ mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "25" ]+                                                      ] []+                                                    , mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "26" ]+                                                      ] []+                                                    ]+                                                  , mkelem_qn21+                                                    [ mkattr_qn16 [ mkText "27" ]+                                                    ] []+                                                  ]+                                                , mkelem_qn21+                                                  [ mkattr_qn16 [ mkText "28" ]+                                                  ] []+                                                ]+                                              , mkelem_qn21+                                                [ mkattr_qn16 [ mkText "29" ]+                                                ] []+                                              ]+                                            , mkelem_qn21+                                              [ mkattr_qn16 [ mkText "30" ]+                                              ] []+                                            ]+                                          , mkelem_qn21+                                            [ mkattr_qn16 [ mkText "31" ]+                                            ] []+                                          ]+                                        , mkelem_qn21+                                          [ mkattr_qn16 [ mkText "32" ]+                                          ] []+                                        ]+                                      , mkelem_qn21+                                        [ mkattr_qn16 [ mkText "33" ]+                                        ] []+                                      ]+                                    , mkelem_qn21+                                      [ mkattr_qn16 [ mkText "34" ]+                                      ] []+                                    ]+                                  , mkelem_qn21+                                    [ mkattr_qn16 [ mkText "35" ]+                                    ] []+                                  ]+                                , mkelem_qn21+                                  [ mkattr_qn16 [ mkText "36" ]+                                  ] []+                                ]+                              , mkelem_qn21+                                [ mkattr_qn16 [ mkText "37" ]+                                ] []+                              ]+                            , mkelem_qn21+                              [ mkattr_qn16 [ mkText "38" ]+                              ] []+                            ]+                          , mkelem_qn21+                            [ mkattr_qn16 [ mkText "39" ]+                            ] []+                          ]+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "40" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "43" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "44" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "14" ]+                    ] []+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "29" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "choice"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "16" ]+                    ] []+                  ]+                ]+              , mkelem_qn20 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn6 []+                          [ mkelem_qn6 []+                            [ mkelem_qn6 []+                              [ mkelem_qn6 []+                                [ mkelem_qn6 []+                                  [ mkelem_qn6 []+                                    [ mkelem_qn6 []+                                      [ mkelem_qn6 []+                                        [ mkelem_qn6 []+                                          [ mkelem_qn6 []+                                            [ mkelem_qn6 []+                                              [ mkelem_qn6 []+                                                [ mkelem_qn6 []+                                                  [ mkelem_qn6 []+                                                    [ mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "25" ]+                                                      ] []+                                                    , mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "26" ]+                                                      ] []+                                                    ]+                                                  , mkelem_qn21+                                                    [ mkattr_qn16 [ mkText "27" ]+                                                    ] []+                                                  ]+                                                , mkelem_qn21+                                                  [ mkattr_qn16 [ mkText "28" ]+                                                  ] []+                                                ]+                                              , mkelem_qn21+                                                [ mkattr_qn16 [ mkText "29" ]+                                                ] []+                                              ]+                                            , mkelem_qn21+                                              [ mkattr_qn16 [ mkText "30" ]+                                              ] []+                                            ]+                                          , mkelem_qn21+                                            [ mkattr_qn16 [ mkText "31" ]+                                            ] []+                                          ]+                                        , mkelem_qn21+                                          [ mkattr_qn16 [ mkText "32" ]+                                          ] []+                                        ]+                                      , mkelem_qn21+                                        [ mkattr_qn16 [ mkText "33" ]+                                        ] []+                                      ]+                                    , mkelem_qn21+                                      [ mkattr_qn16 [ mkText "34" ]+                                      ] []+                                    ]+                                  , mkelem_qn21+                                    [ mkattr_qn16 [ mkText "35" ]+                                    ] []+                                  ]+                                , mkelem_qn21+                                  [ mkattr_qn16 [ mkText "36" ]+                                  ] []+                                ]+                              , mkelem_qn21+                                [ mkattr_qn16 [ mkText "37" ]+                                ] []+                              ]+                            , mkelem_qn21+                              [ mkattr_qn16 [ mkText "38" ]+                              ] []+                            ]+                          , mkelem_qn21+                            [ mkattr_qn16 [ mkText "39" ]+                            ] []+                          ]+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "40" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "43" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "44" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "14" ]+                    ] []+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "28" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "interleave"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "16" ]+                    ] []+                  ]+                ]+              , mkelem_qn20 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn6 []+                          [ mkelem_qn6 []+                            [ mkelem_qn6 []+                              [ mkelem_qn6 []+                                [ mkelem_qn6 []+                                  [ mkelem_qn6 []+                                    [ mkelem_qn6 []+                                      [ mkelem_qn6 []+                                        [ mkelem_qn6 []+                                          [ mkelem_qn6 []+                                            [ mkelem_qn6 []+                                              [ mkelem_qn6 []+                                                [ mkelem_qn6 []+                                                  [ mkelem_qn6 []+                                                    [ mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "25" ]+                                                      ] []+                                                    , mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "26" ]+                                                      ] []+                                                    ]+                                                  , mkelem_qn21+                                                    [ mkattr_qn16 [ mkText "27" ]+                                                    ] []+                                                  ]+                                                , mkelem_qn21+                                                  [ mkattr_qn16 [ mkText "28" ]+                                                  ] []+                                                ]+                                              , mkelem_qn21+                                                [ mkattr_qn16 [ mkText "29" ]+                                                ] []+                                              ]+                                            , mkelem_qn21+                                              [ mkattr_qn16 [ mkText "30" ]+                                              ] []+                                            ]+                                          , mkelem_qn21+                                            [ mkattr_qn16 [ mkText "31" ]+                                            ] []+                                          ]+                                        , mkelem_qn21+                                          [ mkattr_qn16 [ mkText "32" ]+                                          ] []+                                        ]+                                      , mkelem_qn21+                                        [ mkattr_qn16 [ mkText "33" ]+                                        ] []+                                      ]+                                    , mkelem_qn21+                                      [ mkattr_qn16 [ mkText "34" ]+                                      ] []+                                    ]+                                  , mkelem_qn21+                                    [ mkattr_qn16 [ mkText "35" ]+                                    ] []+                                  ]+                                , mkelem_qn21+                                  [ mkattr_qn16 [ mkText "36" ]+                                  ] []+                                ]+                              , mkelem_qn21+                                [ mkattr_qn16 [ mkText "37" ]+                                ] []+                              ]+                            , mkelem_qn21+                              [ mkattr_qn16 [ mkText "38" ]+                              ] []+                            ]+                          , mkelem_qn21+                            [ mkattr_qn16 [ mkText "39" ]+                            ] []+                          ]+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "40" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "43" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "44" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "14" ]+                    ] []+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "27" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "group"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "16" ]+                    ] []+                  ]+                ]+              , mkelem_qn20 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn6 []+                          [ mkelem_qn6 []+                            [ mkelem_qn6 []+                              [ mkelem_qn6 []+                                [ mkelem_qn6 []+                                  [ mkelem_qn6 []+                                    [ mkelem_qn6 []+                                      [ mkelem_qn6 []+                                        [ mkelem_qn6 []+                                          [ mkelem_qn6 []+                                            [ mkelem_qn6 []+                                              [ mkelem_qn6 []+                                                [ mkelem_qn6 []+                                                  [ mkelem_qn6 []+                                                    [ mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "25" ]+                                                      ] []+                                                    , mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "26" ]+                                                      ] []+                                                    ]+                                                  , mkelem_qn21+                                                    [ mkattr_qn16 [ mkText "27" ]+                                                    ] []+                                                  ]+                                                , mkelem_qn21+                                                  [ mkattr_qn16 [ mkText "28" ]+                                                  ] []+                                                ]+                                              , mkelem_qn21+                                                [ mkattr_qn16 [ mkText "29" ]+                                                ] []+                                              ]+                                            , mkelem_qn21+                                              [ mkattr_qn16 [ mkText "30" ]+                                              ] []+                                            ]+                                          , mkelem_qn21+                                            [ mkattr_qn16 [ mkText "31" ]+                                            ] []+                                          ]+                                        , mkelem_qn21+                                          [ mkattr_qn16 [ mkText "32" ]+                                          ] []+                                        ]+                                      , mkelem_qn21+                                        [ mkattr_qn16 [ mkText "33" ]+                                        ] []+                                      ]+                                    , mkelem_qn21+                                      [ mkattr_qn16 [ mkText "34" ]+                                      ] []+                                    ]+                                  , mkelem_qn21+                                    [ mkattr_qn16 [ mkText "35" ]+                                    ] []+                                  ]+                                , mkelem_qn21+                                  [ mkattr_qn16 [ mkText "36" ]+                                  ] []+                                ]+                              , mkelem_qn21+                                [ mkattr_qn16 [ mkText "37" ]+                                ] []+                              ]+                            , mkelem_qn21+                              [ mkattr_qn16 [ mkText "38" ]+                              ] []+                            ]+                          , mkelem_qn21+                            [ mkattr_qn16 [ mkText "39" ]+                            ] []+                          ]+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "40" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "43" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "44" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "14" ]+                    ] []+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "26" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "attribute"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn14 []+                  [ mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "ns"+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  , mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "datatypeLibrary"+                        ]+                      , mkelem_qn7+                        [ mkattr_qn24 [ mkText "anyURI" ]+                        , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                        ] []+                      ]+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn20 []+                    [ mkelem_qn5 []+                      [ mkelem_qn4 []+                        [ mkelem_qn12 []+                          [ mkelem_qn6 []+                            [ mkelem_qn19+                              [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                              ] []+                            , mkelem_qn19+                              [ mkattr_qn18 [ mkText "" ]+                              ] []+                            ]+                          ]+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn5 []+                  [ mkelem_qn17+                    [ mkattr_qn18 [ mkText "" ]+                    ]+                    [ mkText "name"+                    ]+                  , mkelem_qn7+                    [ mkattr_qn24 [ mkText "QName" ]+                    , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                    ] []+                  ]+                , mkelem_qn15 []+                  [ mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn20 []+                      [ mkelem_qn21+                        [ mkattr_qn16 [ mkText "16" ]+                        ] []+                      ]+                    ]+                  , mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn21+                          [ mkattr_qn16 [ mkText "18" ]+                          ] []+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "19" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "20" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "21" ]+                      ] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "16" ]+                    ] []+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn6 []+                          [ mkelem_qn6 []+                            [ mkelem_qn6 []+                              [ mkelem_qn6 []+                                [ mkelem_qn6 []+                                  [ mkelem_qn6 []+                                    [ mkelem_qn6 []+                                      [ mkelem_qn6 []+                                        [ mkelem_qn6 []+                                          [ mkelem_qn6 []+                                            [ mkelem_qn6 []+                                              [ mkelem_qn6 []+                                                [ mkelem_qn6 []+                                                  [ mkelem_qn6 []+                                                    [ mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "25" ]+                                                      ] []+                                                    , mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "26" ]+                                                      ] []+                                                    ]+                                                  , mkelem_qn21+                                                    [ mkattr_qn16 [ mkText "27" ]+                                                    ] []+                                                  ]+                                                , mkelem_qn21+                                                  [ mkattr_qn16 [ mkText "28" ]+                                                  ] []+                                                ]+                                              , mkelem_qn21+                                                [ mkattr_qn16 [ mkText "29" ]+                                                ] []+                                              ]+                                            , mkelem_qn21+                                              [ mkattr_qn16 [ mkText "30" ]+                                              ] []+                                            ]+                                          , mkelem_qn21+                                            [ mkattr_qn16 [ mkText "31" ]+                                            ] []+                                          ]+                                        , mkelem_qn21+                                          [ mkattr_qn16 [ mkText "32" ]+                                          ] []+                                        ]+                                      , mkelem_qn21+                                        [ mkattr_qn16 [ mkText "33" ]+                                        ] []+                                      ]+                                    , mkelem_qn21+                                      [ mkattr_qn16 [ mkText "34" ]+                                      ] []+                                    ]+                                  , mkelem_qn21+                                    [ mkattr_qn16 [ mkText "35" ]+                                    ] []+                                  ]+                                , mkelem_qn21+                                  [ mkattr_qn16 [ mkText "36" ]+                                  ] []+                                ]+                              , mkelem_qn21+                                [ mkattr_qn16 [ mkText "37" ]+                                ] []+                              ]+                            , mkelem_qn21+                              [ mkattr_qn16 [ mkText "38" ]+                              ] []+                            ]+                          , mkelem_qn21+                            [ mkattr_qn16 [ mkText "39" ]+                            ] []+                          ]+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "40" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "43" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "44" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "14" ]+                    ] []+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "25" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "element"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn6 []+                [ mkelem_qn5 []+                  [ mkelem_qn17+                    [ mkattr_qn18 [ mkText "" ]+                    ]+                    [ mkText "name"+                    ]+                  , mkelem_qn7+                    [ mkattr_qn24 [ mkText "QName" ]+                    , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                    ] []+                  ]+                , mkelem_qn15 []+                  [ mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn20 []+                      [ mkelem_qn21+                        [ mkattr_qn16 [ mkText "16" ]+                        ] []+                      ]+                    ]+                  , mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn21+                          [ mkattr_qn16 [ mkText "18" ]+                          ] []+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "19" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "20" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "21" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn14 []+                [ mkelem_qn14 []+                  [ mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "ns"+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  , mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "datatypeLibrary"+                        ]+                      , mkelem_qn7+                        [ mkattr_qn24 [ mkText "anyURI" ]+                        , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                        ] []+                      ]+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn20 []+                    [ mkelem_qn5 []+                      [ mkelem_qn4 []+                        [ mkelem_qn12 []+                          [ mkelem_qn6 []+                            [ mkelem_qn19+                              [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                              ] []+                            , mkelem_qn19+                              [ mkattr_qn18 [ mkText "" ]+                              ] []+                            ]+                          ]+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "16" ]+                    ] []+                  ]+                ]+              , mkelem_qn20 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn6 []+                          [ mkelem_qn6 []+                            [ mkelem_qn6 []+                              [ mkelem_qn6 []+                                [ mkelem_qn6 []+                                  [ mkelem_qn6 []+                                    [ mkelem_qn6 []+                                      [ mkelem_qn6 []+                                        [ mkelem_qn6 []+                                          [ mkelem_qn6 []+                                            [ mkelem_qn6 []+                                              [ mkelem_qn6 []+                                                [ mkelem_qn6 []+                                                  [ mkelem_qn6 []+                                                    [ mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "25" ]+                                                      ] []+                                                    , mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "26" ]+                                                      ] []+                                                    ]+                                                  , mkelem_qn21+                                                    [ mkattr_qn16 [ mkText "27" ]+                                                    ] []+                                                  ]+                                                , mkelem_qn21+                                                  [ mkattr_qn16 [ mkText "28" ]+                                                  ] []+                                                ]+                                              , mkelem_qn21+                                                [ mkattr_qn16 [ mkText "29" ]+                                                ] []+                                              ]+                                            , mkelem_qn21+                                              [ mkattr_qn16 [ mkText "30" ]+                                              ] []+                                            ]+                                          , mkelem_qn21+                                            [ mkattr_qn16 [ mkText "31" ]+                                            ] []+                                          ]+                                        , mkelem_qn21+                                          [ mkattr_qn16 [ mkText "32" ]+                                          ] []+                                        ]+                                      , mkelem_qn21+                                        [ mkattr_qn16 [ mkText "33" ]+                                        ] []+                                      ]+                                    , mkelem_qn21+                                      [ mkattr_qn16 [ mkText "34" ]+                                      ] []+                                    ]+                                  , mkelem_qn21+                                    [ mkattr_qn16 [ mkText "35" ]+                                    ] []+                                  ]+                                , mkelem_qn21+                                  [ mkattr_qn16 [ mkText "36" ]+                                  ] []+                                ]+                              , mkelem_qn21+                                [ mkattr_qn16 [ mkText "37" ]+                                ] []+                              ]+                            , mkelem_qn21+                              [ mkattr_qn16 [ mkText "38" ]+                              ] []+                            ]+                          , mkelem_qn21+                            [ mkattr_qn16 [ mkText "39" ]+                            ] []+                          ]+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "40" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "43" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "44" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "14" ]+                    ] []+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "24" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "include"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn5 []+                [ mkelem_qn17+                  [ mkattr_qn18 [ mkText "" ]+                  ]+                  [ mkText "href"+                  ]+                , mkelem_qn7+                  [ mkattr_qn24 [ mkText "anyURI" ]+                  , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                  ] []+                ]+              , mkelem_qn14 []+                [ mkelem_qn14 []+                  [ mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "ns"+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  , mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "datatypeLibrary"+                        ]+                      , mkelem_qn7+                        [ mkattr_qn24 [ mkText "anyURI" ]+                        , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                        ] []+                      ]+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn20 []+                    [ mkelem_qn5 []+                      [ mkelem_qn4 []+                        [ mkelem_qn12 []+                          [ mkelem_qn6 []+                            [ mkelem_qn19+                              [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                              ] []+                            , mkelem_qn19+                              [ mkattr_qn18 [ mkText "" ]+                              ] []+                            ]+                          ]+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "16" ]+                    ] []+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn21+                        [ mkattr_qn16 [ mkText "11" ]+                        ] []+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "10" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "22" ]+                      ] []+                    ]+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "23" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "div"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "16" ]+                    ] []+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn21+                          [ mkattr_qn16 [ mkText "11" ]+                          ] []+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "10" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "23" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "24" ]+                      ] []+                    ]+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "22" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "div"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "16" ]+                    ] []+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn21+                        [ mkattr_qn16 [ mkText "11" ]+                        ] []+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "10" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "22" ]+                      ] []+                    ]+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "21" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "choice"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "16" ]+                    ] []+                  ]+                ]+              , mkelem_qn20 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn21+                        [ mkattr_qn16 [ mkText "18" ]+                        ] []+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "19" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "20" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "21" ]+                    ] []+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "20" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "nsName"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "16" ]+                    ] []+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn21+                  [ mkattr_qn16 [ mkText "17" ]+                  ] []+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "19" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "anyName"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "16" ]+                    ] []+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn21+                  [ mkattr_qn16 [ mkText "17" ]+                  ] []+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "18" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "name"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn7+              [ mkattr_qn24 [ mkText "QName" ]+              , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+              ] []+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "17" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "except"+            ]+          , mkelem_qn15 []+            [ mkelem_qn6 []+              [ mkelem_qn11 [] []+              , mkelem_qn20 []+                [ mkelem_qn21+                  [ mkattr_qn16 [ mkText "16" ]+                  ] []+                ]+              ]+            , mkelem_qn20 []+              [ mkelem_qn6 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn21+                      [ mkattr_qn16 [ mkText "18" ]+                      ] []+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "19" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "20" ]+                    ] []+                  ]+                , mkelem_qn21+                  [ mkattr_qn16 [ mkText "21" ]+                  ] []+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "16" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn4 []+            [ mkelem_qn12 []+              [ mkelem_qn19+                [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                ] []+              ]+            ]+          , mkelem_qn6 []+            [ mkelem_qn11 [] []+            , mkelem_qn20 []+              [ mkelem_qn6 []+                [ mkelem_qn6 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 [] []+                    , mkelem_qn23 [] []+                    ]+                  , mkelem_qn23 [] []+                  ]+                , mkelem_qn21+                  [ mkattr_qn16 [ mkText "0" ]+                  ] []+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "0" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn4 [] []+          , mkelem_qn6 []+            [ mkelem_qn11 [] []+            , mkelem_qn20 []+              [ mkelem_qn6 []+                [ mkelem_qn6 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 [] []+                    , mkelem_qn23 [] []+                    ]+                  , mkelem_qn23 [] []+                  ]+                , mkelem_qn21+                  [ mkattr_qn16 [ mkText "0" ]+                  ] []+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "10" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "define"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn5 []+                  [ mkelem_qn17+                    [ mkattr_qn18 [ mkText "" ]+                    ]+                    [ mkText "name"+                    ]+                  , mkelem_qn7+                    [ mkattr_qn24 [ mkText "NCName" ]+                    , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                    ] []+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "combine"+                      ]+                    , mkelem_qn6 []+                      [ mkelem_qn25+                        [ mkattr_qn1 [ mkText "http://www.w3.org/XML/1998/namespace" ]+                        , mkattr_qn3 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                        , mkattr_qn2 [ mkText "file:///home/theo/haskell/hxt/hxt-relaxng/src/Text/XML/HXT/RelaxNG/schema2hs/SchemaGrammar.rng" ]+                        , mkattr_qn8 [ mkText "" ]+                        , mkattr_qn24 [ mkText "token" ]+                        , mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                        ]+                        [ mkText "choice"+                        ]+                      , mkelem_qn25+                        [ mkattr_qn1 [ mkText "http://www.w3.org/XML/1998/namespace" ]+                        , mkattr_qn3 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                        , mkattr_qn2 [ mkText "file:///home/theo/haskell/hxt/hxt-relaxng/src/Text/XML/HXT/RelaxNG/schema2hs/SchemaGrammar.rng" ]+                        , mkattr_qn8 [ mkText "" ]+                        , mkattr_qn24 [ mkText "token" ]+                        , mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                        ]+                        [ mkText "interleave"+                        ]+                      ]+                    ]+                  ]+                ]+              , mkelem_qn14 []+                [ mkelem_qn14 []+                  [ mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "ns"+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  , mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "datatypeLibrary"+                        ]+                      , mkelem_qn7+                        [ mkattr_qn24 [ mkText "anyURI" ]+                        , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                        ] []+                      ]+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn20 []+                    [ mkelem_qn5 []+                      [ mkelem_qn4 []+                        [ mkelem_qn12 []+                          [ mkelem_qn6 []+                            [ mkelem_qn19+                              [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                              ] []+                            , mkelem_qn19+                              [ mkattr_qn18 [ mkText "" ]+                              ] []+                            ]+                          ]+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "16" ]+                    ] []+                  ]+                ]+              , mkelem_qn20 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn6 []+                          [ mkelem_qn6 []+                            [ mkelem_qn6 []+                              [ mkelem_qn6 []+                                [ mkelem_qn6 []+                                  [ mkelem_qn6 []+                                    [ mkelem_qn6 []+                                      [ mkelem_qn6 []+                                        [ mkelem_qn6 []+                                          [ mkelem_qn6 []+                                            [ mkelem_qn6 []+                                              [ mkelem_qn6 []+                                                [ mkelem_qn6 []+                                                  [ mkelem_qn6 []+                                                    [ mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "25" ]+                                                      ] []+                                                    , mkelem_qn21+                                                      [ mkattr_qn16 [ mkText "26" ]+                                                      ] []+                                                    ]+                                                  , mkelem_qn21+                                                    [ mkattr_qn16 [ mkText "27" ]+                                                    ] []+                                                  ]+                                                , mkelem_qn21+                                                  [ mkattr_qn16 [ mkText "28" ]+                                                  ] []+                                                ]+                                              , mkelem_qn21+                                                [ mkattr_qn16 [ mkText "29" ]+                                                ] []+                                              ]+                                            , mkelem_qn21+                                              [ mkattr_qn16 [ mkText "30" ]+                                              ] []+                                            ]+                                          , mkelem_qn21+                                            [ mkattr_qn16 [ mkText "31" ]+                                            ] []+                                          ]+                                        , mkelem_qn21+                                          [ mkattr_qn16 [ mkText "32" ]+                                          ] []+                                        ]+                                      , mkelem_qn21+                                        [ mkattr_qn16 [ mkText "33" ]+                                        ] []+                                      ]+                                    , mkelem_qn21+                                      [ mkattr_qn16 [ mkText "34" ]+                                      ] []+                                    ]+                                  , mkelem_qn21+                                    [ mkattr_qn16 [ mkText "35" ]+                                    ] []+                                  ]+                                , mkelem_qn21+                                  [ mkattr_qn16 [ mkText "36" ]+                                  ] []+                                ]+                              , mkelem_qn21+                                [ mkattr_qn16 [ mkText "37" ]+                                ] []+                              ]+                            , mkelem_qn21+                              [ mkattr_qn16 [ mkText "38" ]+                              ] []+                            ]+                          , mkelem_qn21+                            [ mkattr_qn16 [ mkText "39" ]+                            ] []+                          ]+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "40" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "43" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "44" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "14" ]+                    ] []+                  ]+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "11" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "start"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn5 []+                  [ mkelem_qn17+                    [ mkattr_qn18 [ mkText "" ]+                    ]+                    [ mkText "combine"+                    ]+                  , mkelem_qn6 []+                    [ mkelem_qn25+                      [ mkattr_qn1 [ mkText "http://www.w3.org/XML/1998/namespace" ]+                      , mkattr_qn3 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                      , mkattr_qn2 [ mkText "file:///home/theo/haskell/hxt/hxt-relaxng/src/Text/XML/HXT/RelaxNG/schema2hs/SchemaGrammar.rng" ]+                      , mkattr_qn8 [ mkText "" ]+                      , mkattr_qn24 [ mkText "token" ]+                      , mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                      ]+                      [ mkText "choice"+                      ]+                    , mkelem_qn25+                      [ mkattr_qn1 [ mkText "http://www.w3.org/XML/1998/namespace" ]+                      , mkattr_qn3 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                      , mkattr_qn2 [ mkText "file:///home/theo/haskell/hxt/hxt-relaxng/src/Text/XML/HXT/RelaxNG/schema2hs/SchemaGrammar.rng" ]+                      , mkattr_qn8 [ mkText "" ]+                      , mkattr_qn24 [ mkText "token" ]+                      , mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                      ]+                      [ mkText "interleave"+                      ]+                    ]+                  ]+                ]+              , mkelem_qn14 []+                [ mkelem_qn14 []+                  [ mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "ns"+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  , mkelem_qn6 []+                    [ mkelem_qn11 [] []+                    , mkelem_qn5 []+                      [ mkelem_qn17+                        [ mkattr_qn18 [ mkText "" ]+                        ]+                        [ mkText "datatypeLibrary"+                        ]+                      , mkelem_qn7+                        [ mkattr_qn24 [ mkText "anyURI" ]+                        , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                        ] []+                      ]+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn20 []+                    [ mkelem_qn5 []+                      [ mkelem_qn4 []+                        [ mkelem_qn12 []+                          [ mkelem_qn6 []+                            [ mkelem_qn19+                              [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                              ] []+                            , mkelem_qn19+                              [ mkattr_qn18 [ mkText "" ]+                              ] []+                            ]+                          ]+                        ]+                      , mkelem_qn23 [] []+                      ]+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "16" ]+                    ] []+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn6 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn6 []+                          [ mkelem_qn6 []+                            [ mkelem_qn6 []+                              [ mkelem_qn6 []+                                [ mkelem_qn6 []+                                  [ mkelem_qn6 []+                                    [ mkelem_qn6 []+                                      [ mkelem_qn6 []+                                        [ mkelem_qn6 []+                                          [ mkelem_qn6 []+                                            [ mkelem_qn6 []+                                              [ mkelem_qn6 []+                                                [ mkelem_qn6 []+                                                  [ mkelem_qn21+                                                    [ mkattr_qn16 [ mkText "25" ]+                                                    ] []+                                                  , mkelem_qn21+                                                    [ mkattr_qn16 [ mkText "26" ]+                                                    ] []+                                                  ]+                                                , mkelem_qn21+                                                  [ mkattr_qn16 [ mkText "27" ]+                                                  ] []+                                                ]+                                              , mkelem_qn21+                                                [ mkattr_qn16 [ mkText "28" ]+                                                ] []+                                              ]+                                            , mkelem_qn21+                                              [ mkattr_qn16 [ mkText "29" ]+                                              ] []+                                            ]+                                          , mkelem_qn21+                                            [ mkattr_qn16 [ mkText "30" ]+                                            ] []+                                          ]+                                        , mkelem_qn21+                                          [ mkattr_qn16 [ mkText "31" ]+                                          ] []+                                        ]+                                      , mkelem_qn21+                                        [ mkattr_qn16 [ mkText "32" ]+                                        ] []+                                      ]+                                    , mkelem_qn21+                                      [ mkattr_qn16 [ mkText "33" ]+                                      ] []+                                    ]+                                  , mkelem_qn21+                                    [ mkattr_qn16 [ mkText "34" ]+                                    ] []+                                  ]+                                , mkelem_qn21+                                  [ mkattr_qn16 [ mkText "35" ]+                                  ] []+                                ]+                              , mkelem_qn21+                                [ mkattr_qn16 [ mkText "36" ]+                                ] []+                              ]+                            , mkelem_qn21+                              [ mkattr_qn16 [ mkText "37" ]+                              ] []+                            ]+                          , mkelem_qn21+                            [ mkattr_qn16 [ mkText "38" ]+                            ] []+                          ]+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "39" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "40" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "43" ]+                      ] []+                    ]+                  , mkelem_qn21+                    [ mkattr_qn16 [ mkText "44" ]+                    ] []+                  ]+                , mkelem_qn21+                  [ mkattr_qn16 [ mkText "14" ]+                  ] []+                ]+              ]+            ]+          ]+        ]+      , mkelem_qn9+        [ mkattr_qn16 [ mkText "14" ]+        ]+        [ mkelem_qn10 []+          [ mkelem_qn17+            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+            ]+            [ mkText "grammar"+            ]+          , mkelem_qn14 []+            [ mkelem_qn14 []+              [ mkelem_qn14 []+                [ mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "ns"+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                , mkelem_qn6 []+                  [ mkelem_qn11 [] []+                  , mkelem_qn5 []+                    [ mkelem_qn17+                      [ mkattr_qn18 [ mkText "" ]+                      ]+                      [ mkText "datatypeLibrary"+                      ]+                    , mkelem_qn7+                      [ mkattr_qn24 [ mkText "anyURI" ]+                      , mkattr_qn8 [ mkText "http://www.w3.org/2001/XMLSchema-datatypes" ]+                      ] []+                    ]+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn5 []+                    [ mkelem_qn4 []+                      [ mkelem_qn12 []+                        [ mkelem_qn6 []+                          [ mkelem_qn19+                            [ mkattr_qn18 [ mkText "http://relaxng.org/ns/structure/1.0" ]+                            ] []+                          , mkelem_qn19+                            [ mkattr_qn18 [ mkText "" ]+                            ] []+                          ]+                        ]+                      ]+                    , mkelem_qn23 [] []+                    ]+                  ]+                ]+              ]+            , mkelem_qn15 []+              [ mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn21+                    [ mkattr_qn16 [ mkText "16" ]+                    ] []+                  ]+                ]+              , mkelem_qn6 []+                [ mkelem_qn11 [] []+                , mkelem_qn20 []+                  [ mkelem_qn6 []+                    [ mkelem_qn6 []+                      [ mkelem_qn6 []+                        [ mkelem_qn21+                          [ mkattr_qn16 [ mkText "11" ]+                          ] []+                        , mkelem_qn21+                          [ mkattr_qn16 [ mkText "10" ]+                          ] []+                        ]+                      , mkelem_qn21+                        [ mkattr_qn16 [ mkText "23" ]+                        ] []+                      ]+                    , mkelem_qn21+                      [ mkattr_qn16 [ mkText "24" ]                       ] []                     ]                   ]
src/Text/XML/HXT/RelaxNG/Simplification.hs view
@@ -19,6 +19,7 @@ module Text.XML.HXT.RelaxNG.Simplification   ( createSimpleForm   , getErrors+  , resetStates   )  where@@ -26,17 +27,12 @@  import Control.Arrow.ListArrows -import           Text.XML.HXT.DOM.Interface-import qualified Text.XML.HXT.DOM.XmlNode as XN-    ( mkAttr-    , mkText-    )+import Text.XML.HXT.DOM.Interface  import Text.XML.HXT.Arrow.XmlArrow import Text.XML.HXT.Arrow.Edit                  ( removeWhiteSpace                                                 ) import Text.XML.HXT.Arrow.Namespace             ( processWithNsEnv-                                                , propagateNamespaces                                                 ) import Text.XML.HXT.Arrow.XmlState import Text.XML.HXT.Arrow.XmlState.TypeDefs@@ -53,20 +49,16 @@ import Data.Maybe     ( fromJust     , fromMaybe-    , isNothing     ) import Data.List     ( elemIndices-    , isPrefixOf     , nub     , deleteBy     , find     , (\\)     ) -import System.Directory-  ( doesFileExist )-+infixr 1 !>>>  -- ------------------------------------------------------------ @@ -74,9 +66,9 @@ - 4.1. Annotations: Foreign attributes and elements are removed. - 4.2. Whitespace:     - For each element other than value and param, each child that is a string-      containing only whitespace characters is removed. -> fertig+      containing only whitespace characters is removed.     - Leading and trailing whitespace characters are removed from the value of each name,-      type and combine attribute and from the content of each name element. -> fertig+      type and combine attribute and from the content of each name element. - 4.3. datatypeLibrary attribute:     - The value of each datatypeLibary attribute is transformed by escaping disallowed characters     - For any data or value element that does not have a datatypeLibrary attribute,@@ -96,7 +88,7 @@         ( processHref $< getBaseURI )         >>>         -- 4.10 QNames-        processWithNsEnv processEnvNames (toNsEnv [("xml",xmlNamespace)])+        processWithNsEnv processEnvNames (toNsEnv [("xml", xmlNamespace)])         >>>         -- 4.4 For any data or value element that does not have a datatypeLibrary attribute,         -- a datatypeLibrary attribute is added.@@ -242,9 +234,7 @@               `when`               ( (isRngElement `orElse` isRngAttribute)                 >>>-                getRngAttrName-                >>>-                isA (elem ':')+                hasRngAttrName               )             )             >>>@@ -254,34 +244,48 @@             )           )         where+         createAttrL :: IOSArrow String XmlTree         createAttrL-            = setBaseUri &&& constA (map createAttr env) >>> arr2L (:)+            = setBaseUri+              <+>+              ( fromLA $ txt "" >>> catA (map createAttr env) )             where--            createAttr :: (XName, XName) -> XmlTree+{- old stuff+            createAttr :: (XName, XName) -> LA XmlTree XmlTree             createAttr (pre, uri)-                = XN.mkAttr (mkName nm) [XN.mkText (show uri)]+                = mkRngAttr nm (constA $ show uri)                 where-                nm  | isNullXName pre   = "RelaxContextDefault"+                nm  | isNullXName pre   = contextAttributesDefault                     | otherwise         = contextAttributes ++ show pre+-} +            createAttr :: (XName, XName) -> LA XmlTree XmlTree+            createAttr (pre, uri)+                = mkAttr qn (txt (unXN uri))+                where+                qn :: QName+                qn  | isNullXName pre   = mkName $ contextAttributesDefault+                    | otherwise         = mkName $ contextAttributes ++ unXN pre+             setBaseUri :: IOSArrow String XmlTree-            setBaseUri = mkAttr (mkName contextBaseAttr) (txt $< this)+            setBaseUri = mkRngAttrContextBase this          replaceQNames :: NsEnv -> String -> IOSArrow XmlTree XmlTree-        replaceQNames e name-            | isNothing uri-                = mkRelaxError "" ( "No Namespace-Mapping for the prefix " ++ show pre ++-                                    " in the Context of Element: " ++ show name+        replaceQNames env' name+            | null px                                   -- no prefix, nothing to do+                = this+            | null ns                                   -- prefix there, but no namespace+                = mkRelaxError "" ( "No namespace mapping for the prefix " ++ show px +++                                    " in the context of element: " ++ show name +++                                    ", namespace env is " ++ show (map (unXN *** unXN) env')                                   )-            | otherwise-                = addAttr "name" ( "{" ++ (show . fromJust $ uri) ++ "}" ++ local )+            | otherwise                                 -- build universal name+                = addAttr "name" (universalName qn)             where-            (pre, local') = span (/= ':') name-            local         = tail local'-            uri         :: Maybe XName-            uri           = lookup (newXName pre) e+            qn = setNamespace env' . mkName $ name+            px = namePrefix   qn+            ns = namespaceUri qn      -- The value of the added datatypeLibrary attribute is the value of the     -- datatypeLibrary attribute of the nearest ancestor element that@@ -291,22 +295,22 @@     processdatatypeLib lib         = processChildren $           choiceA-          [ ( isElem >>> hasRngAttrDatatypeLibrary-            -- set the new datatypeLibrary value-            )-            :->-            ( processdatatypeLib $< getRngAttrDatatypeLibrary )+          [ hasRngAttrDatatypeLibrary+            :-> ( processdatatypeLib $< getRngAttrDatatypeLibrary )             -- set the new datatypeLibrary value+           , ( (isRngData `orElse` isRngValue)               >>>               neg hasRngAttrDatatypeLibrary-              -- add a datatypeLibrary attribute             )-            :->-            ( addAttr "datatypeLibrary" lib >>> processdatatypeLib lib )+            :-> ( addAttr "datatypeLibrary" lib                                 -- add a datatypeLibrary attribute+                  >>>+                  processdatatypeLib lib+                )+           , this-            :->-            processdatatypeLib lib+            :-> processdatatypeLib lib           ]+          `when` isElem  -- ------------------------------------------------------------ @@ -364,95 +368,92 @@     )   ) `when` collectErrors   where-  importExternalRef :: String -> String -> IOSArrow XmlTree XmlTree+  -- returns the contents of the (validated) schema+  -- or a relax error+  importExternalRef     :: String -> String -> IOSArrow XmlTree XmlTree   importExternalRef ns href-    = ifA ( neg $ constA href-                  >>> getPathFromURI-                  >>> ( isA (not . ("illegal URI" `isPrefixOf`))-                        `guards`-                        isIOA doesFileExist-                      )-          )-        ( mkRelaxError ""-          ( show href ++-            ": can't read URI, referenced in externalRef-Pattern"-          )-        )-        ( ifP (const $ elem href extHRefs)-           -- if the referenced name already exists in the list of processed ref attributes-           -- we have found a loop-            ( mkRelaxError ""-              (  "loop in externalRef-Pattern, " ++-                 formatStringListArr (reverse $ href:extHRefs)-              )+      | href `elem` extHRefs+          = mkRelaxError ""+            (  "loop in externalRef-Pattern, " ++ formatStringListArr (reverse $ href:extHRefs) )+      | otherwise+          = readForRelax href+            >>>+            ( mkRelaxError "" (show href ++ ": can't read URI, referenced in externalRef-Pattern")+              `whenNot`+              documentStatusOk             )-            ( ifA ( if validateExternalRef                                      -- if validation parameters are set-                    then validateDocWithRelax S.relaxSchemaArrow [] href        -- the referenced schema is validated with respect to-                    else none                                                   -- the Relax NG specification-                  )-                ( mkRelaxError ""-                  ( "The content of the schema " ++ show href ++-                    ", referenced in externalRef does not " ++-                    "match the syntax for pattern"-                  )-                )-                ( readForRelax href-                  >>>-                  simplificationStep1                                           -- perform the transformations from previous steps-                  >>>-                  simplificationStep2 validateExternalRef validateInclude (href:extHRefs) includeHRefs-                  >>>-                  getChildren -- remove the root node-                  >>>-                  ( -- Any ns attribute on the externalRef element-                    -- is transferred to the referenced element-                    addAttr "ns" ns-                    `when`-                    (getRngAttrNs >>> isA (\a -> a == "" && ns /= ""))-                  )-                )+            !>>>+            ( if validateExternalRef                                            -- if validation parameters are set+              then ( mkRelaxError ""+                     ( "The content of the schema " ++ show href +++                       ", referenced in externalRef does not " +++                       "match the syntax for pattern"+                     )+                     `whenNot`+                     validateWithRelax S.relaxSchemaArrow                       -- the referenced schema is validated with respect to+                   )+                else this+              )+            !>>>+            ( simplificationStep1                                               -- perform the transformations from previous steps+              >>>+              simplificationStep2 validateExternalRef validateInclude (href:extHRefs) includeHRefs+              >>>+              getChildren                                                       -- remove the root node+              >>>+              isElem+              >>>+              ( -- Any ns attribute on the externalRef element+                -- is transferred to the referenced element+                addRngAttrNs ns+                `when`+                (getRngAttrNs >>> isA (\ a -> a == "" && ns /= ""))+              )             )-        )+            >>>+            traceDoc ("imported external ref: " ++ show href)    importInclude :: String -> IOSArrow XmlTree XmlTree   importInclude href-    = ifA ( -- test whether the referenced schema exists-            neg $ constA href >>> getPathFromURI >>> isIOA doesFileExist-          )-        ( mkRelaxError ""-          ( "Can't read " ++ show href ++-            ", referenced in include-Pattern"-          )-        )-        ( ifP (const $ elem href includeHRefs)-           -- if the referenced name still exists in the list of processed-           -- ref attributes we have found a loop-            ( mkRelaxError ""-              ( "loop in include-Pattern, " ++-                formatStringListArr (reverse $ href:includeHRefs)-              )+      | href `elem` includeHRefs+          = mkRelaxError ""+            ( "loop in include-Pattern, " ++ formatStringListArr (reverse $ href:includeHRefs) )+      | otherwise+          = processInclude' $< newDoc+      where+      processInclude' newDoc'+          | not . null . runLA isRngRelaxError $ newDoc'+              = constA newDoc'+          | otherwise+              = processInclude href newDoc'+      newDoc+          = readForRelax href+            >>>+            ( mkRelaxError "" (show href ++ ": can't read URI, referenced in include-Pattern")+              `whenNot`+              documentStatusOk             )-            ( ifA ( if validateInclude                                          -- if the parameter is set-                    then validateDocWithRelax SG.relaxSchemaArrow [] href       -- the referenced schema is validated with respect to-                    else none                                                   -- the Relax NG grammar element-                  )-                ( mkRelaxError ""-                  ( "The content of the schema " ++ show href ++-                    ", referenced in include does not match " ++-                    "the syntax for grammar"-                  )-                )-                ( processInclude href $< ( readForRelax href-                                           >>>-                                           simplificationStep1                          -- perform the transformations from previous steps-                                           >>>-                                           simplificationStep2 validateExternalRef validateInclude extHRefs (href:includeHRefs)-                                           >>>-                                           getChildren                                  -- remove the root node-                                         )-                )+            !>>>+            ( if validateInclude                                        -- if validation parameters are set+              then ( mkRelaxError ""+                     ( "The content of the schema " ++ show href +++                       ", referenced in include does not " +++                       "match the syntax for grammar"+                     )+                     `whenNot`+                     validateWithRelax SG.relaxSchemaArrow              -- the referenced schema is validated with respect to+                   )+              else this             )-        )+            !>>>+            ( simplificationStep1                                       -- perform the transformations from previous steps+              >>>+              simplificationStep2 validateExternalRef validateInclude extHRefs (href:includeHRefs)+              >>>+              getChildren                                               -- remove the root node+              >>>+              isElem+            )    processInclude :: String -> XmlTree -> IOSArrow XmlTree XmlTree   processInclude href newDoc@@ -594,7 +595,7 @@         >>>         ( -- 4.8 If an attribute element has a name attribute but no ns attribute,           --  then an ns="" attribute is added to the name child element-           (processChildren (addAttr "ns" "" `when` isRngName))+           (processChildren (addRngAttrNs "" `when` isRngName))            `when`            (isRngAttribute >>> hasRngAttrName >>> neg hasRngAttrNs)         )@@ -612,14 +613,17 @@     processTopDown (       ( -- 4.9 any ns attribute that is on an element other than name,         -- nsName or value is removed.-        (removeAttr "ns")+        rmRngAttrNs         `when`-        (isElem >>> neg (isRngName `orElse` isRngNsName `orElse` isRngValue))+        ( isElem+          >>>+          neg (isRngName `orElse` isRngNsName `orElse` isRngValue)+        )       )       >>>       ( -- 4.10 For any name element containing a prefix, the prefix is removed and an ns attribute         -- is added replacing any existing ns attribute.-        (replaceNameAttr $< (getChildren >>> isText >>> getText))+        ( replaceNameAttr $< (getChildren >>> isText >>> getText) )         `when`         isRngName       )@@ -628,9 +632,13 @@   where   replaceNameAttr :: (ArrowXml a) => String -> a XmlTree XmlTree   replaceNameAttr name-    = (addAttr "ns" pre >>> processChildren (changeText $ const local))-      `whenP`-      (const $ elem '}' name)+      | '}' `elem` name+          = ( addRngAttrNs pre+              >>>+              processChildren (changeText $ const local)+            )+      | otherwise+          = this     where     (pre', local') = span (/= '}') name     pre            = tail pre'@@ -639,18 +647,21 @@   processnsAttribute :: String -> IOSArrow XmlTree XmlTree   processnsAttribute name     = processChildren $-        choiceA [-          -- set the new ns attribute value-          (isElem >>> hasRngAttrNs)-               :-> (processnsAttribute $< getRngAttrNs),-          -- For any name, nsName or value element that does not have-          -- an ns attribute, an ns attribute is added.-          ( isNameNsNameValue >>> neg hasRngAttrNs)-               :-> (addAttr "ns" name >>> processnsAttribute name),-          this :-> (processnsAttribute name)+        choiceA+        [ (isElem >>> hasRngAttrNs)                     -- set the new ns attribute value+          :-> (processnsAttribute $< getRngAttrNs)+        , ( isNameNsNameValue+            >>>+            neg hasRngAttrNs+          )                                             -- For any name, nsName or value element that does not have+          :-> ( addRngAttrNs name                       -- an ns attribute, an ns attribute is added.+                >>>+                processnsAttribute name+              )+        , this+          :-> processnsAttribute name         ] - -- ------------------------------------------------------------  @@ -987,9 +998,10 @@         ( renameDefines $<<           ( getPatternNamesInGrammar "define"             >>>-            (createUniqueNames $< incrSysVar theRelaxDefineId)-            &&&-            constA []+            ( createUniqueNames+              &&&+              constA []+            )           )         )         >>>@@ -1027,34 +1039,21 @@         = processChildren           ( processTopDown ( none `when` isRngGrammar ) )           >>>-          listA ( (multi (isElem >>> hasRngName pattern))+          listA ( (multi (hasRngElemName pattern))                   >>>                   getRngAttrName                 ) -    createUniqueNames :: Int -> IOSArrow [String] RefList-    createUniqueNames num-        = arr (\ l -> unique l num)-          >>>-          perform (setSysAttrInt "define_id" $< arr (max num . getNextValue))-        where-        unique :: [String] -> Int -> RefList-        unique []     _    = []-        unique (x:xs) num' = (x, (show num')):(unique xs (num'+1))-        getNextValue :: RefList -> Int-        getNextValue [] = 0-        getNextValue rl = maximum (map (read . snd) rl) + 1-     renameDefines :: RefList -> RefList -> IOSArrow XmlTree XmlTree     renameDefines ref parentRef         = processChildren           ( choiceA             [ isRngDefine-              :-> ( -- the original name is needed for error messages+              :-> (                                     -- the original name is needed for error messages                     addAttr defineOrigName $< getRngAttrName                     >>>-                    -- rename the define-pattern-                    -- the new name is looked up in the ref table+                                                        -- rename the define-pattern+                                                        -- the new name is looked up in the ref table                     addAttr "name" $< ( getRngAttrName                                         >>>                                         arr (\n -> fromJust $ lookup n ref)@@ -1063,33 +1062,34 @@                     renameDefines ref parentRef                   )             , isRngGrammar-              :-> ( renameDefines $<< ( ( -- compute all define names in the grammar-                                          getPatternNamesInGrammar "define"-                                          >>>-                                          -- create a new (unique) name for all define names-                                          (createUniqueNames $< (getSysAttrInt 0 "define_id"))-                                        )-                                        &&&-                                        -- set the old ref list to be the new parentRef list-                                        constA ref-                                      )+              :-> ( renameDefines $<<+                    ( (                                 -- compute all define names in the grammar+                        getPatternNamesInGrammar "define"+                        >>>+                                                        -- create a new (unique) name for all define names+                        createUniqueNames+                      )+                      &&&+                                                        -- set the old ref list to be the new parentRef list+                      constA ref+                    )                   )             , isRngRef               :-> ( ifA ( getRngAttrName                           >>>                           isA (\name -> (elem name (map fst ref)))                         )-                    ( -- the original name is needed for error messages+                    (                                   -- the original name is needed for error messages                       addAttr defineOrigName $< getRngAttrName                       >>>-                      -- rename the ref-pattern-                      -- the new name is looked up in the ref table+                                                        -- rename the ref-pattern+                                                        -- the new name is looked up in the ref table                       addAttr "name" $< ( getRngAttrName                                           >>>                                           arr (\n -> fromJust $ lookup n ref)                                         )                     )-                    ( -- the referenced pattern does not exist in the schema+                    (                                   -- the referenced pattern does not exist in the schema                       mkRelaxError "" $< ( getRngAttrName                                            >>>                                            arr (\ n -> ( "Define-Pattern with name " ++ show n ++@@ -1100,7 +1100,7 @@                                          )                     )                   )-            , isRngParentRef -- same as ref, but the parentRef list is used+            , isRngParentRef                            -- same as ref, but the parentRef list is used               :-> ( ifA ( getRngAttrName                           >>>                           isA (\name -> (elem name (map fst parentRef)))@@ -1183,7 +1183,7 @@      createPatternElem :: (ArrowXml a) => String -> String -> String -> XmlTrees -> a n XmlTree     createPatternElem pattern name combine trees-        = mkRngElement pattern (mkAttr (mkName "name") (txt name))+        = mkRngElement pattern (mkRngAttrName name)           ( ( mkRngElement combine none               (arrL (const trees) >>> getChildren)             )@@ -1221,9 +1221,7 @@      isElemWithNameValue :: (ArrowXml a) => String -> String -> a XmlTree XmlTree     isElemWithNameValue ename nvalue-        = ( isElem-            >>>-            hasRngName ename+        = ( hasRngElemName ename             >>>             getRngAttrName             >>>@@ -1339,10 +1337,11 @@         [ isRngElement           :-> ( ifP (const parentIsDefine)                 (processElements False)-                ( processElements' $<< ( (incrSysVar theRelaxDefineId >>^ show)-                                         &&&-                                         getDefineName-                                       )+                ( processElements' $<+                  ( listA getDefineName                 -- create a new define id+                    >>>+                    createUniqueNames+                  )                 )               )         , isRngDefine@@ -1359,11 +1358,13 @@           >>>           arr show -    processElements' :: NewName -> OldName -> IOSArrow XmlTree XmlTree-    processElements' name oldname+    processElements' :: RefList -> IOSArrow XmlTree XmlTree+    processElements' [(oldname, name)]       = storeElement name oldname         >>>         mkRngRef (createAttr name oldname) none+    processElements' l+        = error $ "processElements' called with illegal arg: " ++ show l      storeElement :: NewName -> OldName -> IOSArrow XmlTree XmlTree     storeElement name oldname@@ -1380,9 +1381,9 @@      createAttr :: NewName -> OldName -> IOSArrow XmlTree XmlTree     createAttr name oldname-      = mkAttr (mkName "name") (txt name)+      = mkRngAttrName name         <+>-        mkAttr (mkName defineOrigName) (txt $ "created for element " ++ oldname)+        mkRngAttrDefineOrigName ("created for element " ++ oldname)    getExpandableDefines :: (ArrowXml a) => a XmlTree Env   getExpandableDefines@@ -1873,7 +1874,7 @@ occur :: String -> IOSArrow XmlTree XmlTree -> IOSArrow XmlTree XmlTree occur name fct     = choiceA-      [ ( isElem >>> hasRngName name )+      [ hasRngElemName name         :->         fct       , isChoiceGroupInterleaveOneOrMore@@ -2091,6 +2092,26 @@       ( getRngAttrName &&& this )  +createUniqueNames :: IOSArrow [String] RefList+createUniqueNames+    = createUnique $< incrSysVar theRelaxDefineId+    where+    createUnique num+        = arr (unique num)                              -- assign numbers to names+          >>>+          ( this+            ***+            perform (setSysVar theRelaxDefineId)        -- store next unused number+          )+          >>>+          arr fst+        where+        unique :: Int -> [String] -> (RefList, Int)+        unique n0 l+            = ( zipWith (\ x n -> (x, show n)) l [n0 ..]+              , n0 + length l+              )+ -- | Return all reachable defines from the start pattern  getRefsFromStartPattern :: IOSArrow XmlTree [String]@@ -2178,17 +2199,25 @@       :-> this     ] +(!>>>)          :: IOSArrow XmlTree XmlTree -> IOSArrow XmlTree XmlTree -> IOSArrow XmlTree XmlTree+f !>>> g+    = f+      >>>+      ifA (getSysVar theRelaxNoOfErrors >>> isA (> 0))+          this+          g+ mkRelaxError :: String -> String -> IOSArrow n XmlTree mkRelaxError changesStr errStr   = perform (constA 1 >>> chgSysVar theRelaxNoOfErrors (+))     >>>-    mkRngRelaxError none none+    mkRngRelaxError     >>>-    addAttr "desc" errStr+    addRngAttrDescr errStr     >>>-    ( addAttr "changes" changesStr-      `whenP`-      (const $ changesStr /= "")+    ( if null changesStr+      then this+      else addRngAttrChanges changesStr     )  collectErrors :: IOSArrow XmlTree XmlTree@@ -2197,24 +2226,31 @@     `when`     ( (getSysVar theRelaxCollectErrors >>> isA not)       >>>-      (getSysVar theRelaxNoOfErrors    >>> isA (>0))+      errorsFound     ) +-- | errors found?+errorsFound :: IOSArrow a a+errorsFound+    = ( getSysVar theRelaxNoOfErrors >>> isA (> 0) )+      `guards`+      this+ -- | Returns the list of simplification errors or 'none' getErrors :: IOSArrow XmlTree XmlTree-getErrors = (getSysVar theRelaxNoOfErrors >>> isA (>0))+getErrors = errorsFound             `guards`-            (root [] [multi isRngRelaxError])+            multi isRngRelaxError  setChangesAttr :: String -> IOSArrow XmlTree XmlTree setChangesAttr str-  = ifA (hasAttr a_relaxSimplificationChanges)+  = ifA (hasRngAttrRelaxSimplificationChanges)       ( processAttrl $           changeAttrValue (++ (", " ++ str))           `when`-          (hasRngName a_relaxSimplificationChanges)+          isRngAttrRelaxSimplificationChanges       )-      (mkAttr (mkName a_relaxSimplificationChanges) (txt str))+      (mkRngAttrRelaxSimplificationChanges str)   getChangesAttr :: IOSArrow XmlTree String@@ -2230,7 +2266,8 @@ -- -------------------------------------------------------------------------------------------------------  -- | Creates the simple form of a Relax NG schema--- (see also: 'relaxOptions')+-- +-- The schema document has to be parsed with namespace propagation  createSimpleForm :: Bool -> Bool -> Bool -> IOSArrow XmlTree XmlTree createSimpleForm checkRestrictions validateExternalRef validateInclude@@ -2244,28 +2281,31 @@      createSimpleWithRest :: IOSArrow XmlTree XmlTree     createSimpleWithRest-        = seqA $ concat [ simplificationPart1-                        , return $ traceDoc "relax NG: simplificationPart1 done"-                        , restrictionsPart1-                        , return $ traceDoc "relax NG: restrictionsPart1 done"-                        , simplificationPart2-                        , return $ traceDoc "relax NG simplificationPart2 done"-                        , restrictionsPart2-                        , return $ traceDoc "relax NG: restrictionsPart2 done"-                        , finalCleanUp-                        , return $ traceDoc "relax NG: finalCleanUp done"-                        ]+        = foldr (!>>>) this $+          concat [ return $ traceDoc "relax NG: simplificationPart1 starts"+                 , simplificationPart1+                 , return $ traceDoc "relax NG: simplificationPart1 done"+                 , restrictionsPart1+                 , return $ traceDoc "relax NG: restrictionsPart1 done"+                 , simplificationPart2+                 , return $ traceDoc "relax NG simplificationPart2 done"+                 , restrictionsPart2+                 , return $ traceDoc "relax NG: restrictionsPart2 done"+                 , finalCleanUp+                 , return $ traceDoc "relax NG: finalCleanUp done"+                 ]      createSimpleWithoutRest :: IOSArrow XmlTree XmlTree     createSimpleWithoutRest-        = seqA $ concat [ simplificationPart1-                        , simplificationPart2-                        , finalCleanUp-                        ]+        = foldr (!>>>) this $+          concat [ simplificationPart1+                 , simplificationPart2+                 , finalCleanUp+                 ]+     simplificationPart1 :: [IOSArrow XmlTree XmlTree]     simplificationPart1-        = [ propagateNamespaces-          , simplificationStep1+        = [ simplificationStep1           , simplificationStep2 validateExternalRef validateInclude [] []           , simplificationStep3           , simplificationStep4@@ -2293,7 +2333,6 @@     finalCleanUp :: [IOSArrow XmlTree XmlTree]     finalCleanUp         = [ cleanUp-          , resetStates           ]      cleanUp :: IOSArrow XmlTree XmlTree
src/Text/XML/HXT/RelaxNG/SystemConfig.hs view
@@ -33,9 +33,9 @@  withRelaxNG                     :: String -> SysConfig withRelaxNG s                   = setS (theRelaxValidate-					.&&&. theRelaxSchema-					.&&&. theRelaxValidator-				       ) (True, (s, validateDocumentWithRelaxSchema [] s))+                                        .&&&. theRelaxSchema+                                        .&&&. theRelaxValidator+                                       ) (True, (s, validateDocumentWithRelaxSchema [] s))  withRelaxCheckRestr             ::  Bool -> SysConfig withRelaxCheckRestr             = setS theRelaxCheckRestr
src/Text/XML/HXT/RelaxNG/Utils.hs view
@@ -33,6 +33,11 @@  import Text.ParserCombinators.Parsec +import Text.XML.HXT.Parser.XmlCharParser+    ( SimpleXParser+    , withNormNewline+    )+ import Text.XML.HXT.Parser.XmlTokenParser     ( skipS0     , nmtoken@@ -89,9 +94,11 @@                     else uri                   ) -checkByParsing  :: Parser String -> String -> Bool+checkByParsing  :: SimpleXParser String -> String -> Bool checkByParsing p s-    = either (const False) (const True) (parse p' "" s)+    = either (const False)+             (const True)+             (runParser p' (withNormNewline ()) "" s)       where       p' = do            r <- p@@ -103,7 +110,7 @@ isNumber     = checkByParsing parseNumber'     where-    parseNumber' :: Parser String+    parseNumber' :: SimpleXParser String     parseNumber'         = do           skipS0
src/Text/XML/HXT/RelaxNG/Validation.hs view
@@ -18,7 +18,7 @@ -- ------------------------------------------------------------  module Text.XML.HXT.RelaxNG.Validation-    ( validateWithRelaxAndHandleErrors+    ( validateWithRelax     , validateDocWithRelax     , validateRelax     , readForRelax@@ -61,43 +61,13 @@  -- ------------------------------------------------------------ -validateWithRelaxAndHandleErrors        :: IOSArrow XmlTree XmlTree -> IOSArrow XmlTree XmlTree-validateWithRelaxAndHandleErrors theSchema-    = validateWithRelax theSchema-      >>>-      handleErrors- validateWithRelax       :: IOSArrow XmlTree XmlTree -> IOSArrow XmlTree XmlTree validateWithRelax theSchema     = traceMsg 2 "validate with Relax NG schema"       >>>-      ( ( normalizeForRelaxValidation           -- prepare the document for validation-          >>>-          getChildren-          >>>-          isElem                                -- and select the root element-        )-        &&&-        theSchema-      )-      >>>-      arr2A validateRelax                       -- compute vaidation errors as a document--handleErrors    :: IOSArrow XmlTree XmlTree-handleErrors-    = traceDoc "error found when validating with Relax NG schema"-      >>>-      ( getChildren                             -- prepare error format-        >>>-        getText-        >>>-        arr ("Relax NG validation: " ++)-        >>>-        mkError c_err-      )+      normalizeForRelaxValidation             -- prepare the document for validation       >>>-      filterErrorMsg                            -- issue errors and set system status-+      ( validateRelax $< theSchema )          -- compute and issue validation errors  {- |    normalize a document for validation with Relax NG: remove all namespace declaration attributes,@@ -140,41 +110,53 @@ validateDocWithRelax :: IOSArrow XmlTree XmlTree -> SysConfigList -> String -> IOSArrow XmlTree XmlTree validateDocWithRelax theSchema config doc     = localSysEnv-      $-      configSysVars config-      >>>-      ( if null doc-        then root [] []-        else readForRelax doc+      ( configSysVars config+        >>>+        readForRelax doc+        >>>+        validateWithRelax theSchema       )-      >>>-      validateWithRelax theSchema-      >>>-      perform handleErrors - {- | Validates a xml document with respect to a Relax NG schema -   * 1.parameter  :  XML document+   * 1.parameter  :  Relax NG schema -   - arrow-input  :  Relax NG schema+   - arrow-input  :  XML document -   - arrow-output :  list of errors or 'none'+   - arrow-output :  the document or in case of errors none -}  validateRelax :: XmlTree -> IOSArrow XmlTree XmlTree-validateRelax xmlDoc-  = fromLA-    ( createPatternFromXmlTree-      >>>-      arr (\p -> childDeriv ("",[]) p xmlDoc)-      >>>-      ( (not . nullable)-        `guardsP`-        root [] [ (take 1024 . show) ^>> mkText ]       -- pattern may be recursive, so the string representation-                                                        -- is truncated to 1024 chars to assure termination+validateRelax rngSchema+    = ( fromLA+        ( ( ( constA rngSchema+              >>>+              createPatternFromXmlTree+            )+            &&&+            ( getChildren                       -- remove the root node+              >>>+              isElem                            -- and select the root element+            )+          )+          >>>+          arr2 (\ pattern xmlDoc -> childDeriv ("", []) pattern xmlDoc)+          >>>+          isA (not . nullable)+          >>>+          arr ( take 1024                      -- pattern may be recursive, so the string representation+                                               -- is truncated to 1024 chars to assure termination+                . ("when validating with Relax NG schema: " ++)+                . show+              )+          >>>+          mkError c_err+        )+        `orElse`+        this       )-    )+      >>>+      filterErrorMsg  -- ------------------------------------------------------------ 
src/Text/XML/HXT/RelaxNG/Validator.hs view
@@ -5,12 +5,9 @@ module Text.XML.HXT.RelaxNG.Validator   ( validateDocumentWithRelaxSchema   , validateDocumentWithRelax--  , validate-  , validateSchema   , validateWithSpezification   , validateSchemaWithSpezification-  , validateWithoutSpezification+   , module Text.XML.HXT.RelaxNG.Validation   , module Text.XML.HXT.RelaxNG.Simplification   )@@ -24,6 +21,7 @@ import Text.XML.HXT.Arrow.XmlState import Text.XML.HXT.Arrow.XmlState.TypeDefs +import Text.XML.HXT.RelaxNG.BasicArrows import Text.XML.HXT.RelaxNG.Validation import Text.XML.HXT.RelaxNG.Simplification import Text.XML.HXT.RelaxNG.Schema        as S@@ -64,53 +62,71 @@         $         configSysVars config         >>>-        ( ( validate' $< validSchema )    -- try to validate, only possible if schema is o.k.+        traceMsg 1 ( "start validating document with Relax NG schema: " ++ show relaxSchema )+        >>>+        ( ( ( validate' $< validateSchema relaxSchema)    -- try to validate, only possible if schema is o.k.+            >>>+            traceMsg 1 ( "validating document with Relax NG schema done" )+          )           `orElse`-          this+          ( setDocumentStatusFromSystemState "validating Relax NG schema"+            >>>+            traceMsg 1 ( "no validation done, Relax NG schema is not correct" )+          )         )       )       `when`-      documentStatusOk                  -- only do something when document status is ok+      documentStatusOk                                 -- only do something when document status is ok     where     validate' schema         = setDocumentStatusFromSystemState "read and build Relax NG schema"           >>>           validateDocumentWithRelax schema -    validSchema-        = traceMsg 2 ( "read Relax NG schema document: " ++ show relaxSchema )-          >>>-          readForRelax relaxSchema-          >>>-          perform ( let checkSchema = True in           -- test option in al-                    if checkSchema-                    then validateWithRelaxAndHandleErrors S.relaxSchemaArrow-                    else none-                  )-          >>>-          traceMsg 2 "create simplified schema"-          >>>-          ( (\ (b1, (b2, b3)) -> createSimpleForm b1 b2 b3)-            $<-            getSysVar (theRelaxCheckRestr     .&&&.-                       theRelaxValidateExtRef .&&&.-                       theRelaxValidateInclude-                      )-          )-          >>>-          traceDoc "simplified schema"-          >>>-          perform ( getErrors-                    >>>-                    handleSimplificationErrors+validateSchema                  :: String -> IOSArrow XmlTree XmlTree+validateSchema relaxSchema+    = traceMsg 2 ( "read and check Relax NG schema document: " ++ show relaxSchema )+      >>>+      readForRelax relaxSchema+      >>>+      ( let checkSchema = True in           -- test option in al+            if checkSchema+            then validateWithRelax S.relaxSchemaArrow `guards` this+            else this+      )+      >>>+      traceMsg 2 "create simplified schema"+      >>>+      ( (\ (b1, (b2, b3)) -> createSimpleForm b1 b2 b3)+        $<+        getSysVar (theRelaxCheckRestr     .&&&.+                   theRelaxValidateExtRef .&&&.+                   theRelaxValidateInclude                   )+      )+      >>>+      traceDoc "simplified schema"+      >>>+      traceMsg 2 "collect and issue schema errors"+      >>>+      perform handleSimplificationErrors+      >>>+      resetStates+      >>>+      setDocumentStatusFromSystemState "validating Relax NG schema"+      >>>+      documentStatusOk+      >>>+      traceMsg 2 "Relax NG schema is o.k."  handleSimplificationErrors      :: IOSArrow XmlTree XmlTree handleSimplificationErrors     = traceDoc "simplification errors"       >>>-      getChildren >>> getAttrValue "desc"+      getErrors       >>>+      getRngAttrDescr+      >>>       arr ("Relax NG validation: " ++)       >>>       mkError c_err@@ -131,7 +147,7 @@ validateDocumentWithRelax schema     = ( traceMsg 1 "validate document with Relax NG schema"         >>>-        perform ( validateWithRelaxAndHandleErrors (constA schema) )+        perform ( validateWithRelax (constA schema) )         >>>         setDocumentStatusFromSystemState "validate document with Relax NG schema"       )@@ -186,13 +202,13 @@  > validate [(a_do_not_check_restrictions, "1")] "test.xml" "testSchema.rng" --}+-} {- validate :: String -> String -> IOSArrow n XmlTree validate xmlDocument relaxSchema   = S.relaxSchemaArrow     >>>     validateWithSpezification xmlDocument relaxSchema-+-}   @@ -202,50 +218,13 @@     * 1.parameter :  Relax NG schema file --}+-} {- validateSchema :: String -> IOSArrow n XmlTree validateSchema relaxSchema   = validate "" relaxSchema----{- | Document validation--Validates a xml document with respect to a Relax NG schema. Similar to 'validate', but the Relax NG Specification is not created. Can be used, to check a list of documents more efficiently.--   * 1.parameter :  XML document--   - 2.parameter :  Relax NG schema file--   - arrow-input  :  Relax NG Specification in simple form--example:--> Text.XML.HXT.RelaxNG.Schema.relaxSchemaArrow-> >>>-> ( validateWithSpezification "foo.xml" "foo.rng"->   &&&->   validateWithSpezification "bar.xml" "bar.rng"-> )-- -}-validateWithSpezification :: String -> String -> IOSArrow XmlTree XmlTree-validateWithSpezification xmlDocument relaxSchema-  = -- validation of the schema with respect to the specification-    -- returns a list of errors or none if the schema is correct -    ( validateRelax $< ( readForRelax relaxSchema-                         >>>-                         getChildren-                       )-    )-    `orElse`--    -- validation of the xml document with respect to the schema-    -- returns a list of errors or none if the xml document is correct--    validateWithoutSpezification xmlDocument relaxSchema+-- ------------------------------------------------------------  {- | Relax NG schema validation @@ -258,13 +237,12 @@  validateSchemaWithSpezification :: String -> IOSArrow XmlTree XmlTree validateSchemaWithSpezification relaxSchema-  = validateWithSpezification "" relaxSchema-+    = validateWithSpezification "" relaxSchema   {- | Document validation -Validates a xml document with respect to a Relax NG schema, but the schema is @not@ validated with respect to a specification first. Should be used only for valid Relax NG schemes.+Validates a xml document with respect to a Relax NG schema     * 1.parameter :  XML document @@ -273,21 +251,24 @@ -}  -validateWithoutSpezification :: String -> String -> IOSArrow n XmlTree-validateWithoutSpezification xmlDocument relaxSchema-  = readForRelax relaxSchema-    >>>-    createSimpleForm True True True-    >>>-    ( ( getErrors >>> perform handleSimplificationErrors )              -- issue errors in schema simplification-      `orElse`-      ( if null xmlDocument                                             -- no errors: validate document-        then none-        else validateRelax $< ( readForRelax xmlDocument-                                >>>-                                normalizeForRelaxValidation-                                >>>-                                getChildren-                              )-      )-    )+validateWithSpezification :: String -> String -> IOSArrow XmlTree XmlTree+validateWithSpezification xmlDocument relaxSchema+    = validDoc $< listA (validateSchema relaxSchema)+    where+    validDoc [theSchema]+        | null xmlDocument+            = none+        | otherwise+            = ifA ( readForRelax xmlDocument+                    >>>+                    normalizeForRelaxValidation+                    >>>+                    validateRelax theSchema+                  )+              none+              ( err "Document is not valid with respect to Relax NG Schema" )+    validDoc _+        = err "Relax NG Schema not correct"++-- ------------------------------------------------------------+