packages feed

hxt-filter 8.2.0 → 8.3.0

raw patch · 50 files changed

+14076/−5889 lines, 50 filesdep ~HTTPdep ~hxtPVP ok

version bump matches the API change (PVP)

Dependency ranges changed: HTTP, hxt

API changes (from Hackage documentation)

+ Data.Tree.NTree.Filter: ($$) :: (a -> [b]) -> [a] -> [b]
+ Data.Tree.NTree.Filter: ($$<) :: (Monad m) => (a -> m [b]) -> [a] -> m [b]
+ Data.Tree.NTree.Filter: (+++) :: (a -> [b]) -> (a -> [b]) -> (a -> [b])
+ Data.Tree.NTree.Filter: (+++>>) :: (Monad m) => (a -> m [b]) -> (a -> m [b]) -> (a -> m [b])
+ Data.Tree.NTree.Filter: (..>) :: (a -> [b]) -> (a -> b -> [d]) -> (a -> [d])
+ Data.Tree.NTree.Filter: (.>) :: (a -> [b]) -> (b -> [c]) -> (a -> [c])
+ Data.Tree.NTree.Filter: (.>>) :: (Monad m) => (a -> m [b]) -> (b -> m [c]) -> (a -> m [c])
+ Data.Tree.NTree.Filter: (/>) :: TFilter node -> TFilter node -> TFilter node
+ Data.Tree.NTree.Filter: (:->) :: a -> b -> IfThen a b
+ Data.Tree.NTree.Filter: (</) :: TFilter node -> TFilter node -> TFilter node
+ Data.Tree.NTree.Filter: cat :: [a -> [b]] -> (a -> [b])
+ Data.Tree.NTree.Filter: catM :: (Monad m) => [a -> m [b]] -> (a -> m [b])
+ Data.Tree.NTree.Filter: choice :: [IfThen (a -> [c]) (a -> [b])] -> (a -> [b])
+ Data.Tree.NTree.Filter: choiceM :: (Monad m) => [IfThen (a -> [c]) (a -> m [b])] -> (a -> m [b])
+ Data.Tree.NTree.Filter: containing :: (a -> [b]) -> (b -> [c]) -> a -> [b]
+ Data.Tree.NTree.Filter: containingM :: (Monad m) => (a -> m [b]) -> (b -> [c]) -> a -> m [b]
+ Data.Tree.NTree.Filter: data IfThen a b
+ Data.Tree.NTree.Filter: deep :: TFilter node -> TFilter node
+ Data.Tree.NTree.Filter: deepest :: TFilter node -> TFilter node
+ Data.Tree.NTree.Filter: guards :: (a -> [b]) -> (a -> [b]) -> (a -> [b])
+ Data.Tree.NTree.Filter: guardsM :: (Monad m) => (a -> [b]) -> (a -> m [c]) -> (a -> m [c])
+ Data.Tree.NTree.Filter: ifM :: (Monad m) => (a -> [b]) -> (a -> m [c]) -> (a -> m [c]) -> (a -> m [c])
+ Data.Tree.NTree.Filter: iff :: (a -> [c]) -> (a -> [b]) -> (a -> [b]) -> (a -> [b])
+ Data.Tree.NTree.Filter: insertChildrenAfter :: TFilter node -> TFilter node -> TFilter node
+ Data.Tree.NTree.Filter: insertChildrenAt :: Int -> TFilter node -> TFilter node
+ Data.Tree.NTree.Filter: isOf :: (a -> Bool) -> (a -> [a])
+ Data.Tree.NTree.Filter: isOfNode :: (node -> Bool) -> TFilter node
+ Data.Tree.NTree.Filter: liftMf :: (Monad m) => (a -> [b]) -> a -> m [b]
+ Data.Tree.NTree.Filter: mkNTree :: NTree node -> TFilter node
+ Data.Tree.NTree.Filter: modifyChildren :: TSFilter node -> TFilter node
+ Data.Tree.NTree.Filter: modifyNode :: (node -> Maybe node) -> TFilter node
+ Data.Tree.NTree.Filter: modifyNode0 :: (node -> node) -> TFilter node
+ Data.Tree.NTree.Filter: multi :: TFilter node -> TFilter node
+ Data.Tree.NTree.Filter: neg :: (a -> [c]) -> a -> [a]
+ Data.Tree.NTree.Filter: none :: a -> [b]
+ Data.Tree.NTree.Filter: noneM :: (Monad m) => (a -> m [b])
+ Data.Tree.NTree.Filter: notContaining :: (a -> [b]) -> (b -> [c]) -> a -> [b]
+ Data.Tree.NTree.Filter: o :: (a -> [b]) -> (c -> [a]) -> (c -> [b])
+ Data.Tree.NTree.Filter: orElse :: (a -> [b]) -> (a -> [b]) -> (a -> [b])
+ Data.Tree.NTree.Filter: performAction :: (Monad m) => (a -> m b) -> a -> m [a]
+ Data.Tree.NTree.Filter: processBottomUp :: TFilter node -> TFilter node
+ Data.Tree.NTree.Filter: processBottomUpIfNot :: TFilter node -> TFilter node -> TFilter node
+ Data.Tree.NTree.Filter: processBottomUpM :: (Monad m) => (NTree node -> m [NTree node]) -> (NTree node -> m [NTree node])
+ Data.Tree.NTree.Filter: processChildren :: TFilter node -> TFilter node
+ Data.Tree.NTree.Filter: processChildrenM :: (Monad m) => (NTree node -> m [NTree node]) -> (NTree node -> m [NTree node])
+ Data.Tree.NTree.Filter: processTopDown :: TFilter node -> TFilter node
+ Data.Tree.NTree.Filter: processTopDownM :: (Monad m) => (NTree node -> m [NTree node]) -> (NTree node -> m [NTree node])
+ Data.Tree.NTree.Filter: processTopDownUntil :: TFilter node -> TFilter node
+ Data.Tree.NTree.Filter: replaceChildren :: NTrees node -> TFilter node
+ Data.Tree.NTree.Filter: replaceNode :: node -> TFilter node
+ Data.Tree.NTree.Filter: satisfies :: (a -> [b]) -> a -> Bool
+ Data.Tree.NTree.Filter: seqF :: [a -> [a]] -> (a -> [a])
+ Data.Tree.NTree.Filter: seqM :: (Monad m) => [a -> m [a]] -> (a -> m [a])
+ Data.Tree.NTree.Filter: substChildren :: TFilter node -> TFilter node
+ Data.Tree.NTree.Filter: this :: a -> [a]
+ Data.Tree.NTree.Filter: thisM :: (Monad m) => (a -> m [a])
+ Data.Tree.NTree.Filter: type TFilter node = NTree node -> NTrees node
+ Data.Tree.NTree.Filter: type TSFilter node = NTrees node -> NTrees node
+ Data.Tree.NTree.Filter: when :: (a -> [a]) -> (a -> [a]) -> (a -> [a])
+ Data.Tree.NTree.Filter: whenM :: (Monad m) => (a -> m [a]) -> (a -> [b]) -> (a -> m [a])
+ Data.Tree.NTree.Filter: whenNot :: (a -> [a]) -> (a -> [a]) -> (a -> [a])
+ Data.Tree.NTree.Filter: whenNotM :: (Monad m) => (a -> m [a]) -> (a -> [b]) -> (a -> m [a])
+ Text.XML.HXT.DOM.XmlTreeTypes: aName :: QName -> String
+ Text.XML.HXT.DOM.XmlTreeTypes: cardNTree :: NTree a -> Int
+ Text.XML.HXT.DOM.XmlTreeTypes: depthNTree :: NTree a -> Int
+ Text.XML.HXT.DOM.XmlTreeTypes: foldNTree :: (a -> [b] -> b) -> NTree a -> b
+ Text.XML.HXT.DOM.XmlTreeTypes: formatNTree :: (node -> String) -> NTree node -> String
+ Text.XML.HXT.DOM.XmlTreeTypes: mapNTree :: (a -> b) -> NTree a -> NTree b
+ Text.XML.HXT.DOM.XmlTreeTypes: mkNode :: node -> NTrees node -> NTree node
+ Text.XML.HXT.DOM.XmlTreeTypes: nTreeToList :: NTree a -> [a]
+ Text.XML.HXT.DOM.XmlTreeTypes: tName :: QName -> String
+ Text.XML.HXT.DOM.XmlTreeTypes: type AttrName = QName
+ Text.XML.HXT.DOM.XmlTreeTypes: type TagName = QName
+ Text.XML.HXT.DOM.XmlTreeTypes: type XmlFilter = TFilter XNode
+ Text.XML.HXT.DOM.XmlTreeTypes: type XmlSFilter = TSFilter XNode
- Control.Monad.MonadStateIO: STIO :: state -> IO (res, state) -> StateIO state res
+ Control.Monad.MonadStateIO: STIO :: (state -> IO (res, state)) -> StateIO state res
- Text.XML.HXT.Validator.RE: RE_ALT :: RE a -> RE a -> RE a
+ Text.XML.HXT.Validator.RE: RE_ALT :: (RE a) -> (RE a) -> RE a
- Text.XML.HXT.Validator.RE: RE_OPT :: RE a -> RE a
+ Text.XML.HXT.Validator.RE: RE_OPT :: (RE a) -> RE a
- Text.XML.HXT.Validator.RE: RE_PLUS :: RE a -> RE a
+ Text.XML.HXT.Validator.RE: RE_PLUS :: (RE a) -> RE a
- Text.XML.HXT.Validator.RE: RE_REP :: RE a -> RE a
+ Text.XML.HXT.Validator.RE: RE_REP :: (RE a) -> RE a
- Text.XML.HXT.Validator.RE: RE_SEQ :: RE a -> RE a -> RE a
+ Text.XML.HXT.Validator.RE: RE_SEQ :: (RE a) -> (RE a) -> RE a

Files

README view
@@ -1,10 +1,9 @@-$Id: README,v 1.25 2006/11/15 18:29:08 hxml Exp $- The Haskell XML Toolbox is a collection of tools for processing XML with Haskell.  The Haskell XML Toolbox is available from:     http://www.fh-wedel.de/~si/HXmlToolbox/+or from hackage.haskell.org  Detailed information about the features, changes, requirements, installation and documentation is available from that web page.@@ -14,6 +13,8 @@ It requires the "hxt" package to be installed. For new projects we strongly recomend the library based on arrows (package "hxt").++Installation can be done with cabal in the usual way.  Good luck, 
Version.mk view
@@ -2,6 +2,6 @@ # Version numbering for HXT filter package  SOFTWARE	= hxt-filter-VERSION		= 8.2.0-LASTVERSION	= 8.1.0+VERSION		= 8.3.0+LASTVERSION	= 8.2.0 DIST_NAME	= $(SOFTWARE)-$(VERSION)
doc/hxt-filter/Control-Monad-MonadStateIO.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Control-Monad-MonadStateIO.html" >Source code</A
+ doc/hxt-filter/Data-Tree-NTree-Filter.html view
@@ -0,0 +1,3754 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>Data.Tree.NTree.Filter</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+><SCRIPT SRC="haddock-util.js" TYPE="text/javascript"+></SCRIPT+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+><TD CLASS="topbut"+><A HREF="src/Data-Tree-NTree-Filter.html"+>Source code</A+></TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="modulebar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><FONT SIZE="6"+>Data.Tree.NTree.Filter</FONT+></TD+><TD ALIGN="right"+><TABLE CLASS="narrow" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="infohead"+>Portability</TD+><TD CLASS="infoval"+>portable</TD+></TR+><TR+><TD CLASS="infohead"+>Stability</TD+><TD CLASS="infoval"+>stable</TD+></TR+><TR+><TD CLASS="infohead"+>Maintainer</TD+><TD CLASS="infoval"+>Uwe Schmidt (uwe\@fh-wedel.de)</TD+></TR+></TABLE+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="section4"+><B+>Contents</B+></TD+></TR+><TR+><TD+><DL+><DT+><A HREF="#1"+>Filter+</A+></DT+><DT+><A HREF="#2"+>Monadic Filter+</A+></DT+></DL+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+>Description</TD+></TR+><TR+><TD CLASS="doc"+><P+>Filter for n-ary tree structure with filter combinators+   copied and modified from HaXml (<A HREF="http://www.cs.york.ac.uk/fp/HaXml/"+>http://www.cs.york.ac.uk/fp/HaXml/</A+>)+</P+><P+>Similar but more flexible functions for tree processing are defined in the+   arrow classes <A HREF="Control-Arrow-ArrowList.html"+>Control.Arrow.ArrowList</A+>, <A HREF="Control-Arrow-ArrowIf.html"+>Control.Arrow.ArrowIf</A+>, <A HREF="Control-Arrow-ArrowTree.html"+>Control.Arrow.ArrowTree</A+> and <A HREF="Control-Arrow-ArrowState.html"+>Control.Arrow.ArrowState</A+>.+   For new applications, especially for XML processing, it's recommended to use the arrow interface+   <A HREF="Text-XML-HXT-Arrow.html"+>Text.XML.HXT.Arrow</A+> instead of this filter approach as part of the api <A HREF="Text-XML-HXT-Parser.html"+>Text.XML.HXT.Parser</A+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+>Synopsis</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="decl"+><SPAN CLASS="keyword"+>type</SPAN+> <A HREF="#t%3ATFilter"+>TFilter</A+> node = <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTrees"+>NTrees</A+> node</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><SPAN CLASS="keyword"+>type</SPAN+> <A HREF="#t%3ATSFilter"+>TSFilter</A+> node = <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTrees"+>NTrees</A+> node -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTrees"+>NTrees</A+> node</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Asatisfies"+>satisfies</A+> ::  (a -&gt; [b]) -&gt; a -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+>Bool</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Anone"+>none</A+> ::  a -&gt; [b]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Athis"+>this</A+> ::  a -&gt; [a]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisOf"+>isOf</A+> ::  (a -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+>Bool</A+>) -&gt; a -&gt; [a]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisOfNode"+>isOfNode</A+> ::  (node -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+>Bool</A+>) -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AmkNTree"+>mkNTree</A+> ::  <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AreplaceNode"+>replaceNode</A+> ::  node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AreplaceChildren"+>replaceChildren</A+> ::  <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTrees"+>NTrees</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AmodifyNode"+>modifyNode</A+> ::  (node -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Maybe.html#t%3AMaybe"+>Maybe</A+> node) -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AmodifyNode0"+>modifyNode0</A+> ::  (node -&gt; node) -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AmodifyChildren"+>modifyChildren</A+> ::  <A HREF="Data-Tree-NTree-Filter.html#t%3ATSFilter"+>TSFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AsubstChildren"+>substChildren</A+> ::  <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AprocessChildren"+>processChildren</A+> ::  <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Ao"+>o</A+> ::  (a -&gt; [b]) -&gt; (c -&gt; [a]) -&gt; c -&gt; [b]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3A.%3E"+>(.&gt;)</A+> ::  (a -&gt; [b]) -&gt; (b -&gt; [c]) -&gt; a -&gt; [c]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AseqF"+>seqF</A+> ::  [a -&gt; [a]] -&gt; a -&gt; [a]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3A..%3E"+>(..&gt;)</A+> ::  (a -&gt; [b]) -&gt; (a -&gt; b -&gt; [d]) -&gt; a -&gt; [d]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3A%2B%2B%2B"+>(+++)</A+> ::  (a -&gt; [b]) -&gt; (a -&gt; [b]) -&gt; a -&gt; [b]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Acat"+>cat</A+> ::  [a -&gt; [b]] -&gt; a -&gt; [b]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AorElse"+>orElse</A+> ::  (a -&gt; [b]) -&gt; (a -&gt; [b]) -&gt; a -&gt; [b]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Aiff"+>iff</A+> ::  (a -&gt; [c]) -&gt; (a -&gt; [b]) -&gt; (a -&gt; [b]) -&gt; a -&gt; [b]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Achoice"+>choice</A+> ::  [<A HREF="Data-Tree-NTree-Filter.html#t%3AIfThen"+>IfThen</A+> (a -&gt; [c]) (a -&gt; [b])] -&gt; a -&gt; [b]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><SPAN CLASS="keyword"+>data</SPAN+>  <A HREF="#t%3AIfThen"+>IfThen</A+> a b = a <A HREF="#v%3A%3A-%3E"+>:-&gt;</A+> b</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Awhen"+>when</A+> ::  (a -&gt; [a]) -&gt; (a -&gt; [a]) -&gt; a -&gt; [a]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AwhenNot"+>whenNot</A+> ::  (a -&gt; [a]) -&gt; (a -&gt; [a]) -&gt; a -&gt; [a]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Aguards"+>guards</A+> ::  (a -&gt; [b]) -&gt; (a -&gt; [b]) -&gt; a -&gt; [b]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Aneg"+>neg</A+> ::  (a -&gt; [c]) -&gt; a -&gt; [a]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Acontaining"+>containing</A+> ::  (a -&gt; [b]) -&gt; (b -&gt; [c]) -&gt; a -&gt; [b]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AnotContaining"+>notContaining</A+> ::  (a -&gt; [b]) -&gt; (b -&gt; [c]) -&gt; a -&gt; [b]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3A%2F%3E"+>(/&gt;)</A+> ::  <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3A%3C%2F"+>(&lt;/)</A+> ::  <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Adeep"+>deep</A+> ::  <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Adeepest"+>deepest</A+> ::  <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Amulti"+>multi</A+> ::  <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AprocessBottomUp"+>processBottomUp</A+> ::  <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AprocessBottomUpIfNot"+>processBottomUpIfNot</A+> ::  <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AprocessTopDown"+>processTopDown</A+> ::  <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AprocessTopDownUntil"+>processTopDownUntil</A+> ::  <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AinsertChildrenAt"+>insertChildrenAt</A+> ::  <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt"+>Int</A+> -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AinsertChildrenAfter"+>insertChildrenAfter</A+> ::  <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AthisM"+>thisM</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; a -&gt; m [a]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AnoneM"+>noneM</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; a -&gt; m [b]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3A.%3E%3E"+>(.&gt;&gt;)</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; (a -&gt; m [b]) -&gt; (b -&gt; m [c]) -&gt; a -&gt; m [c]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AseqM"+>seqM</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; [a -&gt; m [a]] -&gt; a -&gt; m [a]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3A%2B%2B%2B%3E%3E"+>(+++&gt;&gt;)</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; (a -&gt; m [b]) -&gt; (a -&gt; m [b]) -&gt; a -&gt; m [b]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AcatM"+>catM</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; [a -&gt; m [b]] -&gt; a -&gt; m [b]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AifM"+>ifM</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; (a -&gt; [b]) -&gt; (a -&gt; m [c]) -&gt; (a -&gt; m [c]) -&gt; a -&gt; m [c]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AchoiceM"+>choiceM</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; [<A HREF="Data-Tree-NTree-Filter.html#t%3AIfThen"+>IfThen</A+> (a -&gt; [c]) (a -&gt; m [b])] -&gt; a -&gt; m [b]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AwhenM"+>whenM</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; (a -&gt; m [a]) -&gt; (a -&gt; [b]) -&gt; a -&gt; m [a]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AwhenNotM"+>whenNotM</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; (a -&gt; m [a]) -&gt; (a -&gt; [b]) -&gt; a -&gt; m [a]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AguardsM"+>guardsM</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; (a -&gt; [b]) -&gt; (a -&gt; m [c]) -&gt; a -&gt; m [c]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AcontainingM"+>containingM</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; (a -&gt; m [b]) -&gt; (b -&gt; [c]) -&gt; a -&gt; m [b]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AprocessChildrenM"+>processChildrenM</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; (<A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node -&gt; m [<A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node]) -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node -&gt; m [<A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AprocessTopDownM"+>processTopDownM</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; (<A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node -&gt; m [<A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node]) -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node -&gt; m [<A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AprocessBottomUpM"+>processBottomUpM</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; (<A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node -&gt; m [<A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node]) -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node -&gt; m [<A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AliftMf"+>liftMf</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; (a -&gt; [b]) -&gt; a -&gt; m [b]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3A%24%24"+>($$)</A+> ::  (a -&gt; [b]) -&gt; [a] -&gt; [b]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3A%24%24%3C"+>($$&lt;)</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; (a -&gt; m [b]) -&gt; [a] -&gt; m [b]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AperformAction"+>performAction</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; (a -&gt; m b) -&gt; a -&gt; m [a]</TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+>Documentation</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><SPAN CLASS="keyword"+>type</SPAN+> <A NAME="t%3ATFilter"+></A+><B+>TFilter</B+> node = <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTrees"+>NTrees</A+> node</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#TFilter"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>tree filter type: a function mapping a tree onto a list of trees+</P+><P+>filter can be used in various ways, as predicates, selectors, transformers, ...+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><SPAN CLASS="keyword"+>type</SPAN+> <A NAME="t%3ATSFilter"+></A+><B+>TSFilter</B+> node = <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTrees"+>NTrees</A+> node -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTrees"+>NTrees</A+> node</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#TSFilter"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>a filter for sequences+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Asatisfies"+></A+><B+>satisfies</B+> ::  (a -&gt; [b]) -&gt; a -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+>Bool</A+></TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#satisfies"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>satisfies converts a result of a predicate filter into a boolean+</P+><P+>is a shortcut for not . null+</P+><P+>typical use in guards or ifs: <TT+>if (satisfies f) t then ... else ... </TT+>+</P+><UL+><LI+> 1.parameter f :  the predicate filter+</LI+><LI+> 2.parameter t :  the tree to be tested+</LI+><LI+> returns : <TT+>b = not (null (f t))</TT+>+</LI+></UL+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+><A NAME="1"+>Filter+</A+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Anone"+></A+><B+>none</B+> ::  a -&gt; [b]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#none"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>the null filter, returns the empty list+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Athis"+></A+><B+>this</B+> ::  a -&gt; [a]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#this"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>the unit filter, returns the single element list containing the argument+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisOf"+></A+><B+>isOf</B+> ::  (a -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+>Bool</A+>) -&gt; a -&gt; [a]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#isOf"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>conversion from predicate function to filter+</P+><UL+><LI+> 1.parameter p :  the predicate for testing the tree+</LI+><LI+> returns : <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Athis"+>this</A+></TT+> or <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Anone"+>none</A+></TT+> depending on the predicate+</LI+></UL+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisOfNode"+></A+><B+>isOfNode</B+> ::  (node -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+>Bool</A+>) -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#isOfNode"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>select filter, selects trees with node values with a specific property+</P+><UL+><LI+> 1.parameter p :  the predicate for testing the node value+</LI+><LI+> returns : <TT+>[]</TT+> or <TT+>[t]</TT+> depending on <TT+>p t</TT+>+</LI+></UL+><P+>a special case of <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AisOf"+>isOf</A+></TT+> filter+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AmkNTree"+></A+><B+>mkNTree</B+> ::  <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#mkNTree"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>filter for substituting an arbitray tree by a constant+</P+><UL+><LI+> 1.parameter t :  the result tree, the input tree is ignored+</LI+><LI+> returns : the filter+</LI+></UL+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AreplaceNode"+></A+><B+>replaceNode</B+> ::  node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#replaceNode"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>filter for replacing the node+</P+><UL+><LI+> 1.parameter n :  the new node+</LI+><LI+> returns : the editing filter+</LI+></UL+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AreplaceChildren"+></A+><B+>replaceChildren</B+> ::  <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTrees"+>NTrees</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#replaceChildren"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>filter for replacing the children+</P+><UL+><LI+> 1.parameter cs :  cs the list of children+</LI+><LI+> returns : the filter+</LI+></UL+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AmodifyNode"+></A+><B+>modifyNode</B+> ::  (node -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Maybe.html#t%3AMaybe"+>Maybe</A+> node) -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#modifyNode"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AmodifyNode0"+></A+><B+>modifyNode0</B+> ::  (node -&gt; node) -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#modifyNode0"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>filter for editing the node+</P+><UL+><LI+> 1.parameter nf :  the XNode editing funtion+</LI+><LI+> returns : the filter+</LI+></UL+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AmodifyChildren"+></A+><B+>modifyChildren</B+> ::  <A HREF="Data-Tree-NTree-Filter.html#t%3ATSFilter"+>TSFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#modifyChildren"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>filter for editing the children+</P+><P+>all children are processed with a filter mapping lists to lists,+ this enables not only elementwise editing by lifting a normal+ filter to a list filter with <TT+>(f $$)</TT+> (see '($$)') but also manipulation+ of the order of the elements, e.g. <A HREF="reverse.html"+>reverse</A+> is an appropriate childen+ editing function.+</P+><UL+><LI+> 1.parameter csf :  the children editing function+</LI+><LI+> returns : the filter+</LI+></UL+><P+>see also : <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AprocessChildren"+>processChildren</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AsubstChildren"+></A+><B+>substChildren</B+> ::  <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#substChildren"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>filter for substituting the children of a tree by+ a new list of childen computed by applying a filter to the input tree.+ <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AmodifyChildren"+>modifyChildren</A+></TT+> can be expressed by <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AsubstChildren"+>substChildren</A+></TT+>:+ <TT+>modifyChildren f t</TT+> is equal to <TT+>substChildren (f . getChildren)</TT+>+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AprocessChildren"+></A+><B+>processChildren</B+> ::  <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#processChildren"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>Filter for editing the children of a tree element wise+</P+><UL+><LI+> 1.parameter cf :  the filter applied to the children+</LI+><LI+> returns : the editing filter+</LI+></UL+><P+>see also : <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AmodifyChildren"+>modifyChildren</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Ao"+></A+><B+>o</B+> ::  (a -&gt; [b]) -&gt; (c -&gt; [a]) -&gt; c -&gt; [b]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#o"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>sequential composition of filters, usually written in infix notation f2 <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Ao"+>o</A+></TT+> f1.+</P+><P+>for predicate filter the logical AND+</P+><UL+><LI+> 1.parameter f2 :  the 2. filter+</LI+><LI+> 2.parameter f1 :  the 1. filter+</LI+><LI+> returns : the fiter applying first f1 to n and then f2 to the result (like function composition)+</LI+></UL+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3A.%3E"+></A+><B+>(.&gt;)</B+> ::  (a -&gt; [b]) -&gt; (b -&gt; [c]) -&gt; a -&gt; [c]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#.%3E"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>pronounced &quot;followed by&quot;, defined as: <TT+>f .&gt; g = g `o` f</TT+>.+</P+><P+>allows filter composition in a more readable way from left to right+</P+><UL+><LI+> 1.parameter f1 :  the 1. filter+</LI+><LI+> 2.parameter f2 :  the 2. filter+</LI+><LI+> returns : the composition of f1 and f2+</LI+></UL+><P+>see also : <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Ao"+>o</A+></TT+>, '(..&gt;)'+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AseqF"+></A+><B+>seqF</B+> ::  [a -&gt; [a]] -&gt; a -&gt; [a]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#seqF"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>apply a list of filters sequentially with '(.&gt;)', for predicate filters the generalized AND+</P+><P+>see also : '(.&gt;)'+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3A..%3E"+></A+><B+>(..&gt;)</B+> ::  (a -&gt; [b]) -&gt; (a -&gt; b -&gt; [d]) -&gt; a -&gt; [d]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#..%3E"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>special sequential composition.+</P+><P+>filter f is applied to an argument t.+ then filter g is applied to all elements of the result list,+ but the argument t is also passed as extra parameter to g.+</P+><P+>This allows for step by step transformations of a tree+ with access to the original tree in every+ transformation step.+</P+><P+>see also : '(.&gt;)', <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Ao"+>o</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3A%2B%2B%2B"+></A+><B+>(+++)</B+> ::  (a -&gt; [b]) -&gt; (a -&gt; [b]) -&gt; a -&gt; [b]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#%2B%2B%2B"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>binary parallel composition, the logical OR for predicate filter+</P+><UL+><LI+> 1.parameter f1 :  the 1. filter+</LI+><LI+> 2.parameter f2 :  the 2. filter+</LI+><LI+> returns : the filter for applying f1 and f2 both to an argument tree and concatenating the results+</LI+></UL+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Acat"+></A+><B+>cat</B+> ::  [a -&gt; [b]] -&gt; a -&gt; [b]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#cat"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>apply a list of filters, a &quot;union&quot; for lists, for predicate filters the generalized OR+</P+><UL+><LI+> 1.parameter fs :  the list of filters+</LI+><LI+> returns : the composing filter+</LI+></UL+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AorElse"+></A+><B+>orElse</B+> ::  (a -&gt; [b]) -&gt; (a -&gt; [b]) -&gt; a -&gt; [b]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#orElse"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>directional choice, usually written in infix notation as f <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AorElse"+>orElse</A+></TT+> g+</P+><UL+><LI+> 1.parameter f :  the 1. filter+</LI+><LI+> 2.parameter g :  the 2. filter+</LI+><LI+> 3.parameter t :  the tree+</LI+><LI+> returns : the filter, that applies f to t, if the result is not the empty list, the result is found, else g t is the result+</LI+></UL+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Aiff"+></A+><B+>iff</B+> ::  (a -&gt; [c]) -&gt; (a -&gt; [b]) -&gt; (a -&gt; [b]) -&gt; a -&gt; [b]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#iff"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>if then else lifted to filters+</P+><UL+><LI+> 1.parameter p :  the predicate filter+</LI+><LI+> 2.parameter t :  the &quot;then&quot; filter+</LI+><LI+> 3.parameter e :  the &quot;else&quot; filter+</LI+><LI+> returns : the resulting conditional filter+</LI+></UL+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Achoice"+></A+><B+>choice</B+> ::  [<A HREF="Data-Tree-NTree-Filter.html#t%3AIfThen"+>IfThen</A+> (a -&gt; [c]) (a -&gt; [b])] -&gt; a -&gt; [b]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#choice"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>multiway branch. The list of cases <TT+>f :-&gt; g</TT+> is processed sequentially,+ in the first case for that f holds g is applied, if no case matches, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Anone"+>none</A+></TT+> is+ applied.+ This filter can be used like a case expression: <TT+>choice [ p1 :-&gt; f1, p2 :-&gt; f2, ... , this :-&gt; defaultFilter]</TT+>+</P+><P+>see also : <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Aiff"+>iff</A+></TT+>, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AchoiceM"+>choiceM</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><SPAN CLASS="keyword"+>data</SPAN+>  <A NAME="t%3AIfThen"+></A+><B+>IfThen</B+> a b </TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#IfThen"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="ndoc"+>auxiliary datatype for cases within choice filter+</TD+></TR+><TR+><TD CLASS="section4"+>Constructors</TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="1" CELLPADDING="0"+><TR+><TD CLASS="arg"+>a <A NAME="v%3A%3A-%3E"+></A+><B+>:-&gt;</B+> b</TD+><TD CLASS="rdoc"+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Awhen"+></A+><B+>when</B+> ::  (a -&gt; [a]) -&gt; (a -&gt; [a]) -&gt; a -&gt; [a]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#when"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>when the predicate p holds, f is applied, else the identity filter this+</P+><UL+><LI+> 1.parameter f :  the conditinally applied filter+</LI+><LI+> 2.parameter p :  the predicate+</LI+><LI+> returns : the conditional filter+</LI+></UL+><P+>see also : <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Aiff"+>iff</A+></TT+>, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AwhenNot"+>whenNot</A+></TT+>, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Aguards"+>guards</A+></TT+>, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AwhenM"+>whenM</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AwhenNot"+></A+><B+>whenNot</B+> ::  (a -&gt; [a]) -&gt; (a -&gt; [a]) -&gt; a -&gt; [a]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#whenNot"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>the complementary filter of when+</P+><P+>shortcut for f <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Awhen"+>when</A+></TT+> neg g+</P+><P+>see also : <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Aiff"+>iff</A+></TT+>, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Awhen"+>when</A+></TT+>, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AwhenNotM"+>whenNotM</A+></TT+>, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Aneg"+>neg</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Aguards"+></A+><B+>guards</B+> ::  (a -&gt; [b]) -&gt; (a -&gt; [b]) -&gt; a -&gt; [b]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#guards"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>when the predicate p holds, f is applied, else the null filter none+</P+><UL+><LI+> 1.parameter p :  the predicate filter+</LI+><LI+> 2.parameter f :  the conditionally applied filter+</LI+><LI+> returns : the conditional filter+</LI+></UL+><P+>see also : <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Aiff"+>iff</A+></TT+>, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Awhen"+>when</A+></TT+>, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AguardsM"+>guardsM</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Aneg"+></A+><B+>neg</B+> ::  (a -&gt; [c]) -&gt; a -&gt; [a]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#neg"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>negation lifted to filters+</P+><UL+><LI+> 1.parameter f :  the predicate filter+</LI+><LI+> returns : the filter, that succeeds, when f failed+</LI+></UL+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Acontaining"+></A+><B+>containing</B+> ::  (a -&gt; [b]) -&gt; (b -&gt; [c]) -&gt; a -&gt; [b]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#containing"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>pruning: keep only those results from f for which g holds, usually written in infix notation as f <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Acontaining"+>containing</A+></TT+> g+</P+><UL+><LI+> 1.parameter f :  the processing filter+</LI+><LI+> 2.parameter g :  the predicate filter+</LI+><LI+> 3.parameter t :  the tree+</LI+><LI+> returns : all trees r from f t, for which g r holds (is not the empty list)+</LI+></UL+><P+>see also : <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AnotContaining"+>notContaining</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AnotContaining"+></A+><B+>notContaining</B+> ::  (a -&gt; [b]) -&gt; (b -&gt; [c]) -&gt; a -&gt; [b]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#notContaining"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>pruning: keep only those results from f for which g does not hold+</P+><P+>see also : <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Acontaining"+>containing</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3A%2F%3E"+></A+><B+>(/&gt;)</B+> ::  <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#%2F%3E"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>pronounced &quot;slash&quot;, meaning g inside f+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3A%3C%2F"+></A+><B+>(&lt;/)</B+> ::  <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#%3C%2F"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>pronounced &quot;outside&quot; meaning f containing g+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Adeep"+></A+><B+>deep</B+> ::  <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#deep"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>top down search.+</P+><P+>search terminates, when filter f succeeds+ can e.g. be used for finding all outermost tag node of a specific kind+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Adeepest"+></A+><B+>deepest</B+> ::  <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#deepest"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>bottom up search.+</P+><P+>first the children are processed,+ if this does not succeed, the node itself is processed+ can e.g. be used for finding all innermost tag nodes of a specific kind+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Amulti"+></A+><B+>multi</B+> ::  <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#multi"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>process all nodes of the whole tree.+</P+><P+>can e.g. be used for finding all nodes of a specific kind+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AprocessBottomUp"+></A+><B+>processBottomUp</B+> ::  <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#processBottomUp"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>bottom up transformation+</P+><UL+><LI+> 1.parameter f :  the <EM+>simple</EM+> transforming filter+</LI+><LI+> returns : the filter that applies f to all subtrees and the tree itself in a deepth first left to right manner+</LI+></UL+><P+>see also : <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AprocessTopDown"+>processTopDown</A+></TT+>, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AprocessBottomUpIfNot"+>processBottomUpIfNot</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AprocessBottomUpIfNot"+></A+><B+>processBottomUpIfNot</B+> ::  <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#processBottomUpIfNot"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>guarded bottom up transformation, stops at subtrees for which a predicate p holds+</P+><UL+><LI+> 1.parameter f :  the transforming filter+</LI+><LI+> 2.parameter p :  the predicate filter for the guard+</LI+><LI+> returns : the filter for processing all (sub-)trees+</LI+></UL+><P+>see also : <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AprocessBottomUp"+>processBottomUp</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AprocessTopDown"+></A+><B+>processTopDown</B+> ::  <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#processTopDown"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>top down transformation+</P+><UL+><LI+> 1.parameter f :  the <EM+>simple</EM+> transforming filter+</LI+><LI+> returns : the filter that applies f first to the tree and then recursively to all subtrees of the result+</LI+></UL+><P+>see also : <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AprocessBottomUp"+>processBottomUp</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AprocessTopDownUntil"+></A+><B+>processTopDownUntil</B+> ::  <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#processTopDownUntil"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>top down transformation until a node to be transformed is found+</P+><UL+><LI+> 1.parameter f :  the <EM+>simple</EM+> transforming filter+</LI+><LI+> returns : the filter that applies f first to the tree and, if the filter does not succeed,+		  recursively to all children of the input tree.+</LI+></UL+><P+>Example:+</P+><PRE+>processTopDownUntil none</PRE+><P+>is the identity filter (maybe a bit more inefficient).+</P+><P+>Example:+</P+><PRE+>processTopDownUntil (add1Attr &quot;border&quot; &quot;2&quot; `containing` isTag &quot;table&quot;)</PRE+><P+>is a filter for adding an attribute border=&quot;2&quot; in all top level table tags.+		  The content of table tags will remain unchanged.+</P+><P+>see also : <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AprocessTopDown"+>processTopDown</A+></TT+>, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AprocessBottomUp"+>processBottomUp</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AinsertChildrenAt"+></A+><B+>insertChildrenAt</B+> ::  <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt"+>Int</A+> -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#insertChildrenAt"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>insertion of trees into the list of children at a given position+</P+><P+>useful for inserting something into the list of children at a given position+ the list of children is split with the <TT+>splitAt</TT+> function+ the nodes are inserted between these two sublists.+</P+><P+>examples: <TT+>insertChildrenAt 0 ins t</TT+> inserts all elements computed with <TT+>ins t</TT+> in front+ of the childen of <TT+>t</TT+>, <TT+>insertChildrenAt 1 ins t</TT+> behind the first child+</P+><P+>see also: <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AinsertChildrenAfter"+>insertChildrenAfter</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AinsertChildrenAfter"+></A+><B+>insertChildrenAfter</B+> ::  <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node -&gt; <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> node</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#insertChildrenAfter"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>insertion of trees into the list of children after specific elements+</P+><P+>useful for inserting something into the list of children of a node+ the list of children is split with the <TT+>span</TT+> function and the filter p as predicate+ the nodes are inserted between these two sublists+</P+><P+>examples: <TT+>insertChildrenAfter none ins t</TT+> inserts all elements computed with <TT+>ins t</TT+> in front+ of the childen of <TT+>t</TT+>, <TT+>insertChildrenAfter this ins t</TT+> appends the elements to the children+</P+><P+>see also: <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AinsertChildrenAt"+>insertChildrenAt</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+><A NAME="2"+>Monadic Filter+</A+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AthisM"+></A+><B+>thisM</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; a -&gt; m [a]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#thisM"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>the monadic version of the identity filter this.+</P+><P+>see also : <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Athis"+>this</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AnoneM"+></A+><B+>noneM</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; a -&gt; m [b]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#noneM"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>the monadic version of the null filter none.+</P+><P+>see also : <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Anone"+>none</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3A.%3E%3E"+></A+><B+>(.&gt;&gt;)</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; (a -&gt; m [b]) -&gt; (b -&gt; m [c]) -&gt; a -&gt; m [c]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#.%3E%3E"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>sequential composition of monadic filters, monadic version of &quot;.&gt;&quot;.+</P+><UL+><LI+> 1.parameter f1 :  the 1. monadic filter+</LI+><LI+> 2.parameter f2 :  the 2. monadic filter+</LI+><LI+> returns : the monadic fiter applying first f1 to n and then f2 to the result (like function composition)+</LI+></UL+><P+>see also : '(.&gt;)'+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AseqM"+></A+><B+>seqM</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; [a -&gt; m [a]] -&gt; a -&gt; m [a]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#seqM"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>generalized sequential composition of monadic filters+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3A%2B%2B%2B%3E%3E"+></A+><B+>(+++&gt;&gt;)</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; (a -&gt; m [b]) -&gt; (a -&gt; m [b]) -&gt; a -&gt; m [b]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#%2B%2B%2B%3E%3E"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>binary parallel composition, the logical OR for predicate filter+</P+><UL+><LI+> 1.parameter f1 :  the 1. filter+</LI+><LI+> 2.parameter f2 :  the 2. filter+</LI+><LI+> returns : the filter for applying f1 and f2 both to an argument tree and concatenating the results+ see also: <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Acat"+>cat</A+></TT+>, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3A%2B%2B%2B"+>+++</A+></TT+>, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AcatM"+>catM</A+></TT+>+</LI+></UL+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AcatM"+></A+><B+>catM</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; [a -&gt; m [b]] -&gt; a -&gt; m [b]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#catM"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>apply a list of monadic filters+</P+><UL+><LI+> 1.parameter fs :  the list of filters+</LI+><LI+> returns : the composing filter+ see also: <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Acat"+>cat</A+></TT+>, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3A%2B%2B%2B"+>+++</A+></TT+>, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3A%2B%2B%2B%3E%3E"+>+++&gt;&gt;</A+></TT+>+</LI+></UL+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AifM"+></A+><B+>ifM</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; (a -&gt; [b]) -&gt; (a -&gt; m [c]) -&gt; (a -&gt; m [c]) -&gt; a -&gt; m [c]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#ifM"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>monadic if-then-else.+</P+><UL+><LI+> 1.parameter p :  the predicate+</LI+><LI+> 2.parameter thenP :  the then part: the monadic filter, that is applied if p holds for the input tree+</LI+><LI+> 3.parameter elseP :  the else part+</LI+><LI+> returns : the monadic filter for the conditional+</LI+></UL+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AchoiceM"+></A+><B+>choiceM</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; [<A HREF="Data-Tree-NTree-Filter.html#t%3AIfThen"+>IfThen</A+> (a -&gt; [c]) (a -&gt; m [b])] -&gt; a -&gt; m [b]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#choiceM"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>monadic version of multiway branch. The list of cases <TT+>f :-&gt; g</TT+> is processed sequentially,+ in the first case for that f holds g is applied, if no case matches, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AnoneM"+>noneM</A+></TT+> is+ applied.+ This filter can be used like a case expression: <TT+>choiceM [ p1 :-&gt; f1, p2 :-&gt; f2, ... , thisM :-&gt; defaultFilter]</TT+>+</P+><P+>see also : <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Achoice"+>choice</A+></TT+>, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AifM"+>ifM</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AwhenM"+></A+><B+>whenM</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; (a -&gt; m [a]) -&gt; (a -&gt; [b]) -&gt; a -&gt; m [a]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#whenM"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>when the predicate p holds, the monadic filter f is applied, else the identity filter.+</P+><UL+><LI+> 1.parameter f :  the conditinally applied monadic filter+</LI+><LI+> 2.parameter p :  the simple predicate+</LI+><LI+> returns : the conditional filter+</LI+></UL+><P+>see also : <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AifM"+>ifM</A+></TT+>, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Awhen"+>when</A+></TT+>, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AguardsM"+>guardsM</A+></TT+>, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AwhenNotM"+>whenNotM</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AwhenNotM"+></A+><B+>whenNotM</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; (a -&gt; m [a]) -&gt; (a -&gt; [b]) -&gt; a -&gt; m [a]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#whenNotM"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>the complementary filter of whenM.+</P+><P+>see also : <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AifM"+>ifM</A+></TT+>, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AwhenM"+>whenM</A+></TT+>, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AwhenNot"+>whenNot</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AguardsM"+></A+><B+>guardsM</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; (a -&gt; [b]) -&gt; (a -&gt; m [c]) -&gt; a -&gt; m [c]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#guardsM"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>when the predicate p holds, the monadic filter f is applied, else the null filter.+</P+><UL+><LI+> 1.parameter p :  the simple predicate filter+</LI+><LI+> 2.parameter f :  the conditionally applied monadic filter+</LI+><LI+> returns : the conditional filter+</LI+></UL+><P+>see also : <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AifM"+>ifM</A+></TT+>, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Aguards"+>guards</A+></TT+>, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AwhenM"+>whenM</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AcontainingM"+></A+><B+>containingM</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; (a -&gt; m [b]) -&gt; (b -&gt; [c]) -&gt; a -&gt; m [b]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#containingM"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>pruning: monadic version of containing, usually written in infix notation as f <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AcontainingM"+>containingM</A+></TT+> g+</P+><UL+><LI+> 1.parameter f :  the monadic processing filter+</LI+><LI+> 2.parameter g :  the predicate filter+</LI+><LI+> 3.parameter t :  the tree+</LI+><LI+> returns : all trees r from f t, for which g r holds (is not the empty list)+</LI+></UL+><P+>see also : <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AnotContaining"+>notContaining</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AprocessChildrenM"+></A+><B+>processChildrenM</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; (<A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node -&gt; m [<A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node]) -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node -&gt; m [<A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#processChildrenM"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>Filter for editing the children of a tree with a monadic filter+</P+><UL+><LI+> 1.parameter cf :  the monadic filter applied to the children+</LI+><LI+> returns : the monadic editing filter+</LI+></UL+><P+>see also : <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AprocessChildren"+>processChildren</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AprocessTopDownM"+></A+><B+>processTopDownM</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; (<A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node -&gt; m [<A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node]) -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node -&gt; m [<A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#processTopDownM"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>monadic variant of <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AprocessTopDown"+>processTopDown</A+></TT+>+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AprocessBottomUpM"+></A+><B+>processBottomUpM</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; (<A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node -&gt; m [<A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node]) -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node -&gt; m [<A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#processBottomUpM"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>monadic variant of <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AprocessBottomUp"+>processBottomUp</A+></TT+>+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AliftMf"+></A+><B+>liftMf</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; (a -&gt; [b]) -&gt; a -&gt; m [b]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#liftMf"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>lift a filter to a monadic filter+</P+><UL+><LI+> 1.parameter f :  the <EM+>simple</EM+> filter+</LI+><LI+> returns : the lifted monadic version+</LI+></UL+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3A%24%24"+></A+><B+>($$)</B+> ::  (a -&gt; [b]) -&gt; [a] -&gt; [b]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#%24%24"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>infix operator for applying a filter to a list of trees+</P+><UL+><LI+> 1.parameter f :  the filter+</LI+><LI+> 2.parameter ts :  the list of trees+</LI+><LI+> returns : the concatenated list of results+</LI+></UL+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3A%24%24%3C"+></A+><B+>($$&lt;)</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; (a -&gt; m [b]) -&gt; [a] -&gt; m [b]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#%24%24%3C"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>infix operator for applying a monadic filter to a list of trees,+ typically used in do-notation for processing of intermediate results.+</P+><UL+><LI+> 1.parameter f :  the monadic filter+</LI+><LI+> 2.parameter ts :  the list of trees+</LI+><LI+> returns : the concatenated list of results+</LI+></UL+><P+>see also : '($$)'+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AperformAction"+></A+><B+>performAction</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Control-Monad.html#t%3AMonad"+>Monad</A+> m =&gt; (a -&gt; m b) -&gt; a -&gt; m [a]</TD+><TD CLASS="declbut"+><A HREF="src/Data-Tree-NTree-Filter.html#performAction"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>run an arbitray command on a tree t and return the tree,+ used for inserting arbitray commands in a filter pipeline+</P+><UL+><LI+> 1.parameter cmd :  the command+</LI+><LI+> 2.parameter t :  the argument tree+</LI+><LI+> returns : the unchanged tree as a single element list+</LI+></UL+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="botbar"+>Produced by <A HREF="http://www.haskell.org/haddock/"+>Haddock</A+> version 2.3.0</TD+></TR+></TABLE+></BODY+></HTML+>
doc/hxt-filter/System-PipeOpen.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/System-PipeOpen.html" >Source code</A
doc/hxt-filter/Text-XML-HXT-DOM-EditFilters.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-DOM-EditFilters.html" >Source code</A@@ -80,7 +80,11 @@ ><TD CLASS="decl" ><A HREF="#v%3AcanonicalizeTree" >canonicalizeTree</A-> :: XmlFilter -&gt; XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -90,7 +94,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AcanonicalizeAllNodes" >canonicalizeAllNodes</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -100,7 +106,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AcanonicalizeForXPath" >canonicalizeForXPath</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -110,7 +118,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AcollapseXText" >collapseXText</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -120,7 +130,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AcollapseAllXText" >collapseAllXText</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -130,7 +142,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AindentDoc" >indentDoc</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -140,7 +154,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AremoveWhiteSpace" >removeWhiteSpace</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -150,7 +166,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AremoveAllWhiteSpace" >removeAllWhiteSpace</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -160,7 +178,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AremoveDocWhiteSpace" >removeDocWhiteSpace</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -170,7 +190,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AremoveComment" >removeComment</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -180,7 +202,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AremoveAllComment" >removeAllComment</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -190,7 +214,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AtransfCdata" >transfCdata</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -200,7 +226,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AtransfAllCdata" >transfAllCdata</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -210,7 +238,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AtransfCdataEscaped" >transfCdataEscaped</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -220,7 +250,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AtransfAllCdataEscaped" >transfAllCdataEscaped</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -230,7 +262,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AtransfCharRef" >transfCharRef</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -240,7 +274,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AtransfAllCharRef" >transfAllCharRef</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -250,7 +286,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AescapeXmlDoc" >escapeXmlDoc</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -260,7 +298,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AescapeXmlText" >escapeXmlText</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -270,7 +310,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AescapeXmlAttrValue" >escapeXmlAttrValue</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -280,7 +322,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AunparseXmlDoc" >unparseXmlDoc</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -290,7 +334,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AnumberLinesInXmlDoc" >numberLinesInXmlDoc</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -314,7 +360,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AtreeRepOfXmlDoc" >treeRepOfXmlDoc</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -324,7 +372,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AhaskellRepOfXmlDoc" >haskellRepOfXmlDoc</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -334,7 +384,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AaddHeadlineToXmlDoc" >addHeadlineToXmlDoc</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -344,7 +396,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AaddXmlPiToDoc" >addXmlPiToDoc</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ></TABLE ></TD@@ -370,7 +424,11 @@ ></A ><B >canonicalizeTree</B-> :: XmlFilter -&gt; XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-EditFilters.html#canonicalizeTree" >Source</A@@ -436,7 +494,9 @@ ></A ><B >canonicalizeAllNodes</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-EditFilters.html#canonicalizeAllNodes" >Source</A@@ -472,7 +532,9 @@ ></A ><B >canonicalizeForXPath</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-EditFilters.html#canonicalizeForXPath" >Source</A@@ -509,7 +571,9 @@ ></A ><B >collapseXText</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-EditFilters.html#collapseXText" >Source</A@@ -536,7 +600,9 @@ ></A ><B >collapseAllXText</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-EditFilters.html#collapseAllXText" >Source</A@@ -572,7 +638,9 @@ ></A ><B >indentDoc</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-EditFilters.html#indentDoc" >Source</A@@ -631,7 +699,9 @@ ></A ><B >removeWhiteSpace</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-EditFilters.html#removeWhiteSpace" >Source</A@@ -674,7 +744,9 @@ ></A ><B >removeAllWhiteSpace</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-EditFilters.html#removeAllWhiteSpace" >Source</A@@ -717,7 +789,9 @@ ></A ><B >removeDocWhiteSpace</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-EditFilters.html#removeDocWhiteSpace" >Source</A@@ -775,7 +849,9 @@ ></A ><B >removeComment</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-EditFilters.html#removeComment" >Source</A@@ -802,7 +878,9 @@ ></A ><B >removeAllComment</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-EditFilters.html#removeAllComment" >Source</A@@ -829,7 +907,9 @@ ></A ><B >transfCdata</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-EditFilters.html#transfCdata" >Source</A@@ -856,7 +936,9 @@ ></A ><B >transfAllCdata</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-EditFilters.html#transfAllCdata" >Source</A@@ -883,7 +965,9 @@ ></A ><B >transfCdataEscaped</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-EditFilters.html#transfCdataEscaped" >Source</A@@ -910,7 +994,9 @@ ></A ><B >transfAllCdataEscaped</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-EditFilters.html#transfAllCdataEscaped" >Source</A@@ -937,7 +1023,9 @@ ></A ><B >transfCharRef</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-EditFilters.html#transfCharRef" >Source</A@@ -964,7 +1052,9 @@ ></A ><B >transfAllCharRef</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-EditFilters.html#transfAllCharRef" >Source</A@@ -991,7 +1081,9 @@ ></A ><B >escapeXmlDoc</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-EditFilters.html#escapeXmlDoc" >Source</A@@ -1036,7 +1128,9 @@ ></A ><B >escapeXmlText</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-EditFilters.html#escapeXmlText" >Source</A@@ -1073,7 +1167,9 @@ ></A ><B >escapeXmlAttrValue</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-EditFilters.html#escapeXmlAttrValue" >Source</A@@ -1114,7 +1210,9 @@ ></A ><B >unparseXmlDoc</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-EditFilters.html#unparseXmlDoc" >Source</A@@ -1158,7 +1256,9 @@ ></A ><B >numberLinesInXmlDoc</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-EditFilters.html#numberLinesInXmlDoc" >Source</A@@ -1226,7 +1326,9 @@ ></A ><B >treeRepOfXmlDoc</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-EditFilters.html#treeRepOfXmlDoc" >Source</A@@ -1267,7 +1369,9 @@ ></A ><B >haskellRepOfXmlDoc</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-EditFilters.html#haskellRepOfXmlDoc" >Source</A@@ -1308,7 +1412,9 @@ ></A ><B >addHeadlineToXmlDoc</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-EditFilters.html#addHeadlineToXmlDoc" >Source</A@@ -1330,7 +1436,9 @@ ></A ><B >addXmlPiToDoc</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-EditFilters.html#addXmlPiToDoc" >Source</A
doc/hxt-filter/Text-XML-HXT-DOM-Namespace.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-DOM-Namespace.html" >Source code</A
doc/hxt-filter/Text-XML-HXT-DOM-NamespaceFilter.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-DOM-NamespaceFilter.html" >Source code</A@@ -124,7 +124,9 @@ >type</SPAN > <A HREF="#t%3ANamespaceTable" >NamespaceTable</A-> = NsEnv</TD+> = <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#t%3ANsEnv"+>NsEnv</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -134,7 +136,9 @@ ><TD CLASS="decl" ><A HREF="#v%3ApropagateNamespaces" >propagateNamespaces</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -146,7 +150,9 @@ >propagateNamespaceEnv</A > :: <A HREF="Text-XML-HXT-DOM-NamespaceFilter.html#t%3ANamespaceTable" >NamespaceTable</A-> -&gt; XmlFilter</TD+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -156,7 +162,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AvalidateNamespaces" >validateNamespaces</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -166,7 +174,9 @@ ><TD CLASS="decl" ><A HREF="#v%3Avalidate1Namespaces" >validate1Namespaces</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -176,7 +186,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AisNamespaceDecl" >isNamespaceDecl</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ></TABLE ></TD@@ -204,7 +216,9 @@ ></A ><B >NamespaceTable</B-> = NsEnv</TD+> = <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#t%3ANsEnv"+>NsEnv</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-NamespaceFilter.html#NamespaceTable" >Source</A@@ -217,7 +231,9 @@ ><TD CLASS="doc" >Type for the namespace association list, used when propagating namespaces by  modifying the <TT->QName</TT+><A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#t%3AQName"+>QName</A+></TT > values in a tree </TD ></TR@@ -234,7 +250,9 @@ ></A ><B >propagateNamespaces</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-NamespaceFilter.html#propagateNamespaces" >Source</A@@ -277,7 +295,9 @@ >propagateNamespaceEnv</B > :: <A HREF="Text-XML-HXT-DOM-NamespaceFilter.html#t%3ANamespaceTable" >NamespaceTable</A-> -&gt; XmlFilter</TD+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-NamespaceFilter.html#propagateNamespaceEnv" >Source</A@@ -305,7 +325,9 @@ ></A ><B >validateNamespaces</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-NamespaceFilter.html#validateNamespaces" >Source</A@@ -324,14 +346,22 @@ ></TT > to all nodes.  Predicates <TT->isWellformedQName</TT+><A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#v%3AisWellformedQName"+>isWellformedQName</A+></TT >, <TT->isWellformedQualifiedName</TT+><A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#v%3AisWellformedQualifiedName"+>isWellformedQualifiedName</A+></TT >, <TT->isDeclaredNamespace</TT+><A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#v%3AisDeclaredNamespace"+>isDeclaredNamespace</A+></TT >  and <TT->isWellformedNSDecl</TT+><A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#v%3AisWellformedNSDecl"+>isWellformedNSDecl</A+></TT > are applied to the appropriate tags and attributes. </TD ></TR@@ -348,7 +378,9 @@ ></A ><B >validate1Namespaces</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-NamespaceFilter.html#validate1Namespaces" >Source</A@@ -375,7 +407,9 @@ ></A ><B >isNamespaceDecl</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-NamespaceFilter.html#isNamespaceDecl" >Source</A
doc/hxt-filter/Text-XML-HXT-DOM-XmlState.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-DOM-XmlState.html" >Source code</A@@ -130,9 +130,13 @@ >type</SPAN > <A HREF="#t%3ASysStateAttrs" >SysStateAttrs</A-> = AssocList <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> = <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-AssocList.html#t%3AAssocList"+>AssocList</A+> <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> XmlTrees</TD+> <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -190,9 +194,13 @@ >type</SPAN > <A HREF="#t%3AXmlStateFilter" >XmlStateFilter</A-> state = XmlTree -&gt; <A HREF="Text-XML-HXT-DOM-XmlState.html#t%3AXState"+> state = <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlState.html#t%3AXState" >XState</A-> state XmlTrees</TD+> state <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -346,7 +354,9 @@ >setSysParamTree</A > ::  <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTrees -&gt; <A HREF="Text-XML-HXT-DOM-XmlState.html#t%3AXState"+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlState.html#t%3AXState" >XState</A > state ()</TD ></TR@@ -406,7 +416,9 @@ >String</A > -&gt; <A HREF="Text-XML-HXT-DOM-XmlState.html#t%3AXState" >XState</A-> state XmlTrees</TD+> state <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -542,7 +554,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AliftF" >liftF</A-> ::  XmlFilter -&gt; <A HREF="Text-XML-HXT-DOM-XmlState.html#t%3AXmlStateFilter"+> ::  <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlState.html#t%3AXmlStateFilter" >XmlStateFilter</A > state</TD ></TR@@ -826,7 +840,9 @@ >Int</A > -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlFilter</TD+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -836,7 +852,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AstatusOk" >statusOk</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -984,9 +1002,13 @@ ></A ><B >SysStateAttrs</B-> = AssocList <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> = <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-AssocList.html#t%3AAssocList"+>AssocList</A+> <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> XmlTrees</TD+> <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlState.html#SysStateAttrs" >Source</A@@ -1132,9 +1154,13 @@ ></A ><B >XmlStateFilter</B-> state = XmlTree -&gt; <A HREF="Text-XML-HXT-DOM-XmlState.html#t%3AXState"+> state = <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlState.html#t%3AXState" >XState</A-> state XmlTrees</TD+> state <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlState.html#XmlStateFilter" >Source</A@@ -1536,7 +1562,9 @@ >setSysParamTree</B > ::  <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTrees -&gt; <A HREF="Text-XML-HXT-DOM-XmlState.html#t%3AXState"+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlState.html#t%3AXState" >XState</A > state ()</TD ><TD CLASS="declbut"@@ -1718,7 +1746,9 @@ >String</A > -&gt; <A HREF="Text-XML-HXT-DOM-XmlState.html#t%3AXState" >XState</A-> state XmlTrees</TD+> state <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlState.html#getSysParamTree" >Source</A@@ -2102,7 +2132,9 @@ ></A ><B >liftF</B-> ::  XmlFilter -&gt; <A HREF="Text-XML-HXT-DOM-XmlState.html#t%3AXmlStateFilter"+> ::  <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlState.html#t%3AXmlStateFilter" >XmlStateFilter</A > state</TD ><TD CLASS="declbut"@@ -2702,13 +2734,19 @@ ><TD CLASS="doc" >error level translation  <TT->c_warn</TT+><A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#v%3Ac_warn"+>c_warn</A+></TT > (1) : warning,  <TT->c_err</TT+><A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#v%3Ac_err"+>c_err</A+></TT > (2): error (e.g. parse error, validation error, ...),  <TT->c_fatal</TT+><A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#v%3Ac_fatal"+>c_fatal</A+></TT > (3) : fatal error (document access error, internal error, ...) </TD ></TR@@ -2896,15 +2934,21 @@ >a_status</TT > in a document root.  if it contains a value greater or equal to <TT->c_err</TT+><A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#v%3Ac_err"+>c_err</A+></TT >, an error with error message  stored in attribute <TT >a_module</TT > is issued and the filter acts as the <TT->noneM</TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AnoneM"+>noneM</A+></TT > filter  else its the <TT->thisM</TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AthisM"+>thisM</A+></TT > filter </TD ></TR@@ -2925,7 +2969,9 @@ >Int</A > -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlFilter</TD+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlState.html#setStatus" >Source</A@@ -2938,7 +2984,9 @@ ><TD CLASS="doc" >add the error level and the module where the error occured  to the attributes of a document root node and remove the children when level is greater or equal to <TT->c_err</TT+><A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#v%3Ac_err"+>c_err</A+></TT > </TD ></TR@@ -2955,7 +3003,9 @@ ></A ><B >statusOk</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlState.html#statusOk" >Source</A@@ -2967,7 +3017,9 @@ ><TR ><TD CLASS="doc" >check whether tree is a document root and the status attribute has a value less than <TT->c_err</TT+><A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#v%3Ac_err"+>c_err</A+></TT > </TD ></TR@@ -3040,7 +3092,9 @@ ><P >monadic filter for processing the attribute list of a tag.  for other trees this filter acts like <TT->noneM</TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AnoneM"+>noneM</A+></TT > </P ><P
doc/hxt-filter/Text-XML-HXT-DOM-XmlTree.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTree.html" >Source code</A@@ -73,6 +73,16 @@ ><TR ><TD CLASS="section1" >Documentation</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="decl"+>module <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html"+>Text.XML.HXT.DOM.XmlTreeTypes</A+></TD ></TR ><TR ><TD CLASS="s15"
doc/hxt-filter/Text-XML-HXT-DOM-XmlTreeFilter.html view
@@ -19,5051 +19,5709 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD-><TD CLASS="topbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html"->Source code</A-></TD-><TD CLASS="topbut"-><A HREF="index.html"->Contents</A-></TD-><TD CLASS="topbut"-><A HREF="doc-index.html"->Index</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="modulebar"-><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"-><TR-><TD-><FONT SIZE="6"->Text.XML.HXT.DOM.XmlTreeFilter</FONT-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="section1"->Description</TD-></TR-><TR-><TD CLASS="doc"->basic XmlTree filter-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="section1"->Synopsis</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="body"-><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"-><TR-><TD CLASS="decl"-><A HREF="#v%3AisRoot"->isRoot</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisTag"->isTag</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisNsTag"->isNsTag</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AhasLocalPart"->hasLocalPart</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AhasPrefix"->hasPrefix</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AhasNamespace"->hasNamespace</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisOfTag"->isOfTag</A-> :: (TagName -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"->Bool</A->) -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AhasAttr"->hasAttr</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AhasNsAttr"->hasNsAttr</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AhasValue"->hasValue</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; (<A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"->Bool</A->) -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisPi"->isPi</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisXmlPi"->isXmlPi</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisOfPi"->isOfPi</A-> :: (TagName -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"->Bool</A->) -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisXCdata"->isXCdata</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisXCharRef"->isXCharRef</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisXCmt"->isXCmt</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisXDTD"->isXDTD</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisXEntityRef"->isXEntityRef</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisXError"->isXError</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisXPi"->isXPi</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisXTag"->isXTag</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisXAttr"->isXAttr</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisAttr"->isAttr</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisNsAttr"->isNsAttr</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisOfAttr"->isOfAttr</A-> :: (AttrName -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"->Bool</A->) -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisXText"->isXText</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisText"->isText</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisOfText"->isOfText</A-> :: (<A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"->Bool</A->) -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisWhiteSpace"->isWhiteSpace</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisDoctype"->isDoctype</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisAttlist"->isAttlist</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisElement"->isElement</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisEntity"->isEntity</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisPeRef"->isPeRef</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisDTDName"->isDTDName</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisCondSect"->isCondSect</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisParameterEntity"->isParameterEntity</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisNotation"->isNotation</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisDefaultAttrKind"->isDefaultAttrKind</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisEnumAttrType"->isEnumAttrType</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisFixedAttrKind"->isFixedAttrKind</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisIdAttrType"->isIdAttrType</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisIdRefAttrType"->isIdRefAttrType</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisNotationAttrType"->isNotationAttrType</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisRequiredAttrKind"->isRequiredAttrKind</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisAttlistParameterEntity"->isAttlistParameterEntity</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisEmptyElement"->isEmptyElement</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisMixedContentElement"->isMixedContentElement</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisElemWithContent"->isElemWithContent</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisAttlistOfElement"->isAttlistOfElement</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisElemContentParamEntity"->isElemContentParamEntity</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisUnparsedEntity"->isUnparsedEntity</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisExternalParameterEntity"->isExternalParameterEntity</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisInternalParameterEntity"->isInternalParameterEntity</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisWarning"->isWarning</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisError"->isError</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AisFatalError"->isFatalError</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AmkXTag"->mkXTag</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter -&gt; XmlFilter -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AmkQTag"->mkQTag</A-> :: QName -&gt; XmlFilter -&gt; XmlFilter -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AmkXNsTag"->mkXNsTag</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter -&gt; XmlFilter -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AmkXAttr"->mkXAttr</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AmkQAttr"->mkQAttr</A-> :: QName -&gt; XmlFilter -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AmkXNsAttr"->mkXNsAttr</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AmkXText"->mkXText</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AmkXCharRef"->mkXCharRef</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt"->Int</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AmkXEntityRef"->mkXEntityRef</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AmkXCmt"->mkXCmt</A-> :: XmlFilter -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AmkXDTD"->mkXDTD</A-> :: DTDElem -&gt; Attributes -&gt; XmlTrees -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AmkXCdata"->mkXCdata</A-> :: XmlFilter -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AmkXPi"->mkXPi</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AmkXError"->mkXError</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt"->Int</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AgetName"->getName</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AgetAttrl"->getAttrl</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AgetValue"->getValue</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AgetNsValue"->getNsValue</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AgetDTDValue"->getDTDValue</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AgetXCmt"->getXCmt</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AgetXCdata"->getXCdata</A-> :: XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AreplaceQName"->replaceQName</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AmodifyText"->modifyText</A-> :: (<A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A->) -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AmodifyQName"->modifyQName</A-> :: (TagName -&gt; TagName) -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AprocessAttrl"->processAttrl</A-> :: XmlSFilter -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AprocessAttr"->processAttr</A-> :: XmlFilter -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AreplaceAttrl"->replaceAttrl</A-> :: XmlTrees -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3Adel1Attr"->del1Attr</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3Aadd1Attr"->add1Attr</A-> :: XmlTree -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AaddAttrl"->addAttrl</A-> :: XmlFilter -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AaddAttr"->addAttr</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AaddAttrInt"->addAttrInt</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt"->Int</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AmodifyAttr"->modifyAttr</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; (<A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A->) -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AaddDTDAttr"->addDTDAttr</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3A%2B%3D"->(+=)</A-> :: XmlFilter -&gt; XmlFilter -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3A%2B%2B%3D"->(++=)</A-> :: XmlFilter -&gt; [XmlFilter] -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AvalueOf"->valueOf</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlTree -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-></TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AintValueOf"->intValueOf</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlTree -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt"->Int</A-></TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3Atag"->tag</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; [XmlFilter] -&gt; [XmlFilter] -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3Astag"->stag</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; [XmlFilter] -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3Aatag"->atag</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; [XmlFilter] -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3Aetag"->etag</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3Aqetag"->qetag</A-> :: QName -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3Aqtag"->qtag</A-> :: QName -&gt; XmlFilter -&gt; XmlFilter -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3ArootTag"->rootTag</A-> :: [XmlFilter] -&gt; [XmlFilter] -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3Aattr"->attr</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3Aqattr"->qattr</A-> :: QName -&gt; XmlFilter -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3Asattr"->sattr</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3Atxt"->txt</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3Acmt"->cmt</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3Aspi"->spi</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3Acdata"->cdata</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3Adtd"->dtd</A-> :: DTDElem -&gt; [XmlFilter] -&gt; [XmlFilter] -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3Awarn"->warn</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3Aerr"->err</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3Afatal"->fatal</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-><TR-><TD CLASS="s8"-></TD-></TR-><TR-><TD CLASS="decl"-><A HREF="#v%3AhasOption"->hasOption</A-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="section1"->Documentation</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisRoot"-></A-><B->isRoot</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isRoot"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree contains a document root node.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisTag"-></A-><B->isTag</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isTag"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"-><P->test whether the root of a tree contains a tag node.-</P-><P->see also: <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AisNsTag"->isNsTag</A-></TT->-</P-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisNsTag"-></A-><B->isNsTag</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isNsTag"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"-><P->namespace aware test whether the root of a tree contains a tag node. Parameters are the local part and namespace.- Only usable after namespace propagation.-</P-><P->see also: <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AisTag"->isTag</A-></TT->-</P-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AhasLocalPart"-></A-><B->hasLocalPart</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#hasLocalPart"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree has a given local name- see also : <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AhasNamespace"->hasNamespace</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AhasPrefix"->hasPrefix</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AisTag"->isTag</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AisAttr"->isAttr</A-></TT->-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AhasPrefix"-></A-><B->hasPrefix</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#hasPrefix"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree has a given prefix name- see also : <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AhasNamespace"->hasNamespace</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AhasLocalPart"->hasLocalPart</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AisTag"->isTag</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AisAttr"->isAttr</A-></TT->-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AhasNamespace"-></A-><B->hasNamespace</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#hasNamespace"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree belongs to a given namespace- see also : <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AisTag"->isTag</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AisAttr"->isAttr</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AhasLocalPart"->hasLocalPart</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AhasPrefix"->hasPrefix</A-></TT->-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisOfTag"-></A-><B->isOfTag</B-> :: (TagName -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"->Bool</A->) -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isOfTag"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree contains a tag node with a special name.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AhasAttr"-></A-><B->hasAttr</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#hasAttr"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"-><P->test whether the node of a tree is a XTag node or a XPi node with an attibute of a specific name-</P-><P->see also: <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AisAttr"->isAttr</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AhasNsAttr"->hasNsAttr</A-></TT->-</P-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AhasNsAttr"-></A-><B->hasNsAttr</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#hasNsAttr"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"-><P->test whether the tree is a XTag node with an attibute of a specific local name and namespace uri-</P-><P->see also: <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AhasAttr"->hasAttr</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AisNsAttr"->isNsAttr</A-></TT->-</P-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AhasValue"-></A-><B->hasValue</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; (<A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"->Bool</A->) -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#hasValue"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"-><P->test whether the given node is a XTag node or a XPI node with an attribute with a value with a specific property.- In case of a match, the attribute value represented by a text node is returned as single element list,- else the empty list is the result.-</P-><P->see also : <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AgetValue"->getValue</A-></TT->-</P-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisPi"-></A-><B->isPi</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isPi"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the tree is a processing instruction with a given name.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisXmlPi"-></A-><B->isXmlPi</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isXmlPi"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the tree is a &lt;?xml ... ?&gt; declaration-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisOfPi"-></A-><B->isOfPi</B-> :: (TagName -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"->Bool</A->) -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isOfPi"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree contains a processing instruction of a special name.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisXCdata"-></A-><B->isXCdata</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isXCdata"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree contains a CDATA node.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisXCharRef"-></A-><B->isXCharRef</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isXCharRef"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree contains a character reference node.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisXCmt"-></A-><B->isXCmt</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isXCmt"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree contains a comment node.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisXDTD"-></A-><B->isXDTD</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isXDTD"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree contains a DTD part.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisXEntityRef"-></A-><B->isXEntityRef</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isXEntityRef"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree contains an entity reference node.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisXError"-></A-><B->isXError</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isXError"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree contains an error node.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisXPi"-></A-><B->isXPi</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isXPi"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree contains a processing instruction node.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisXTag"-></A-><B->isXTag</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isXTag"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree contains a tag node.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisXAttr"-></A-><B->isXAttr</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isXAttr"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree contains an attribute node.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisAttr"-></A-><B->isAttr</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isAttr"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree is an attribute node for a given attribute name-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisNsAttr"-></A-><B->isNsAttr</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isNsAttr"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"-><P->namespace aware test whether the tree contains an attribute node. Parameters are the local part of the atribute name and the namespace.- Only usable after namespace propagation.-</P-><P->see also: <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AisNsTag"->isNsTag</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AisAttr"->isAttr</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AhasNsAttr"->hasNsAttr</A-></TT->-</P-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisOfAttr"-></A-><B->isOfAttr</B-> :: (AttrName -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"->Bool</A->) -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isOfAttr"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->general test for an attribute name-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisXText"-></A-><B->isXText</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isXText"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree contains a text node.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisText"-></A-><B->isText</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isText"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree contains a special text.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisOfText"-></A-><B->isOfText</B-> :: (<A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"->Bool</A->) -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isOfText"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree contains a text node with a special property-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisWhiteSpace"-></A-><B->isWhiteSpace</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isWhiteSpace"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree contains a text node only with whitespace.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisDoctype"-></A-><B->isDoctype</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isDoctype"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree contains a DOCTYPE DTD part.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisAttlist"-></A-><B->isAttlist</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isAttlist"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree contains an ATTLIST DTD part.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisElement"-></A-><B->isElement</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isElement"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree contains an ELEMENT DTD part.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisEntity"-></A-><B->isEntity</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isEntity"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree contains an ENTITY DTD part.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisPeRef"-></A-><B->isPeRef</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isPeRef"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree contains a parameter ENTITY reference.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisDTDName"-></A-><B->isDTDName</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isDTDName"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree contains a DTD name part.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisCondSect"-></A-><B->isCondSect</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isCondSect"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree contains a conditional section DTD part.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisParameterEntity"-></A-><B->isParameterEntity</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isParameterEntity"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree contains a parameter entity declaration.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisNotation"-></A-><B->isNotation</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isNotation"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree contains a NOTATION DTD part.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisDefaultAttrKind"-></A-><B->isDefaultAttrKind</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isDefaultAttrKind"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisEnumAttrType"-></A-><B->isEnumAttrType</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isEnumAttrType"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisFixedAttrKind"-></A-><B->isFixedAttrKind</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isFixedAttrKind"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisIdAttrType"-></A-><B->isIdAttrType</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isIdAttrType"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisIdRefAttrType"-></A-><B->isIdRefAttrType</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isIdRefAttrType"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisNotationAttrType"-></A-><B->isNotationAttrType</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isNotationAttrType"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisRequiredAttrKind"-></A-><B->isRequiredAttrKind</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isRequiredAttrKind"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisAttlistParameterEntity"-></A-><B->isAttlistParameterEntity</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isAttlistParameterEntity"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisEmptyElement"-></A-><B->isEmptyElement</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isEmptyElement"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisMixedContentElement"-></A-><B->isMixedContentElement</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isMixedContentElement"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisElemWithContent"-></A-><B->isElemWithContent</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isElemWithContent"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisAttlistOfElement"-></A-><B->isAttlistOfElement</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isAttlistOfElement"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisElemContentParamEntity"-></A-><B->isElemContentParamEntity</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isElemContentParamEntity"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisUnparsedEntity"-></A-><B->isUnparsedEntity</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isUnparsedEntity"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisExternalParameterEntity"-></A-><B->isExternalParameterEntity</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isExternalParameterEntity"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisInternalParameterEntity"-></A-><B->isInternalParameterEntity</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isInternalParameterEntity"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisWarning"-></A-><B->isWarning</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isWarning"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree contains an error node for a warning.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisError"-></A-><B->isError</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isError"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree contains an error node for an error.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AisFatalError"-></A-><B->isFatalError</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isFatalError"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->test whether the root of a tree contains an error node for a fatal error.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AmkXTag"-></A-><B->mkXTag</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter -&gt; XmlFilter -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#mkXTag"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"-><P->constructor filter for a tag node.- a new tree is constructed.- the attributes and the children are computed by applying the aproprate filter to the input tree-</P-><UL-><LI-> 1.parameter n :  the tag name-</LI-><LI-> 2.parameter af :  the filter for the attribute list-</LI-><LI-> 3.parameter cf :  the filter for the children-</LI-><LI-> returns : the constructor filter-</LI-></UL-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AmkQTag"-></A-><B->mkQTag</B-> :: QName -&gt; XmlFilter -&gt; XmlFilter -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#mkQTag"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->Version with qualified names of <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXTag"->mkXTag</A-></TT->-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AmkXNsTag"-></A-><B->mkXNsTag</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter -&gt; XmlFilter -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#mkXNsTag"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"-><P->constructor filter for a tag node.- a new tree is constructed.- the attributes and the children are computed by applying the aproprate filter to the input tree-</P-><UL-><LI-> 1.parameter n :  the tag name in form of prefix:localpart-</LI-><LI-> 2.parameter ns:   the namespace uri-</LI-><LI-> 3.parameter af :  the filter for the attribute list-</LI-><LI-> 4.parameter cf :  the filter for the children-</LI-><LI-> returns : the constructor filter-</LI-></UL-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AmkXAttr"-></A-><B->mkXAttr</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#mkXAttr"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->filter for attribute construction.- a new tree with attribute name and a value computed by a filter- is build.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AmkQAttr"-></A-><B->mkQAttr</B-> :: QName -&gt; XmlFilter -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#mkQAttr"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->Qualified version <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXAttr"->mkXAttr</A-></TT->-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AmkXNsAttr"-></A-><B->mkXNsAttr</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#mkXNsAttr"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->filter for attribute construction.- a new tree with attribute name and namespace and a value computed by a filter- is build.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AmkXText"-></A-><B->mkXText</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#mkXText"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->constructor filter for a text node.- a new tree is constructed.- the input tree is ignored.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AmkXCharRef"-></A-><B->mkXCharRef</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt"->Int</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#mkXCharRef"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->constructor filter for a character reference node.- a new tree is constructed.- the input tree is ignored.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AmkXEntityRef"-></A-><B->mkXEntityRef</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#mkXEntityRef"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->constructor filter for an entity reference node.- a new tree is constructed.- the input tree is ignored.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AmkXCmt"-></A-><B->mkXCmt</B-> :: XmlFilter -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#mkXCmt"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->constructor filter for a comment node.- a new tree is constructed.- the xml string representation of the filter result- forms the comment-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AmkXDTD"-></A-><B->mkXDTD</B-> :: DTDElem -&gt; Attributes -&gt; XmlTrees -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#mkXDTD"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->constructor filter for a DTD part.- a new tree is constructed.- the input tree is ignored.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AmkXCdata"-></A-><B->mkXCdata</B-> :: XmlFilter -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#mkXCdata"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->constructor filter for a CDATA section node.- a new tree is constructed.- the input tree is ignored.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AmkXPi"-></A-><B->mkXPi</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#mkXPi"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->constructor filter for a processing instruction- a new tree is constructed from the text representation- of the input tree-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AmkXError"-></A-><B->mkXError</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt"->Int</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#mkXError"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->constructor filter for an error message node.- a new tree is constructed.- the input tree is ignored.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AgetName"-></A-><B->getName</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#getName"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->filter for selecting the name of a tag node, an attribute node or a pi node.- Result of the filter is a single element list with a text node or the empty list-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AgetAttrl"-></A-><B->getAttrl</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#getAttrl"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->filter for selecting the attibute list-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AgetValue"-></A-><B->getValue</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#getValue"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"-><P->filter for selecting the value of an attribute in a tag node.- Result of the filter is a single element list with a text node or the empty list-</P-><P->see also : <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AhasValue"->hasValue</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AgetNsValue"->getNsValue</A-></TT->-</P-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AgetNsValue"-></A-><B->getNsValue</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#getNsValue"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"-><P->filter for selecting the value of an attribute with namespace in a tag node.- Result of the filter is a single element list with a text node or the empty list-</P-><P->see also : <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AgetValue"->getValue</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AisNsAttr"->isNsAttr</A-></TT->-</P-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AgetDTDValue"-></A-><B->getDTDValue</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#getDTDValue"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->filter for selecting an attribute of a DTD node.- Result of the filter is a single element list with a text node or the empty list-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AgetXCmt"-></A-><B->getXCmt</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#getXCmt"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->filter for selecting content of a comment.- Result of the filter is a single element list with a text node or the empty list-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AgetXCdata"-></A-><B->getXCdata</B-> :: XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#getXCdata"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->filter for selecting the CDATA content.- Result of the filter is a single element list with a text node or the empty list-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AreplaceQName"-></A-><B->replaceQName</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#replaceQName"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->edit filter for changing the name of a tag node, an attribute or a pi.- result of the filter is a single element list with a tag node or the empty list-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AmodifyText"-></A-><B->modifyText</B-> :: (<A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A->) -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#modifyText"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"-><P->edit filter for changing the text of a text node.- result of the filter is a single element list with a text node or the empty list-</P-><P->example for editing all text nodes of a tree with an edit function <TT->f</TT->:-</P-><PRE->processBottomUp (modifyText f `when` isXText)</PRE-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AmodifyQName"-></A-><B->modifyQName</B-> :: (TagName -&gt; TagName) -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#modifyQName"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->edit filter for changing the name of a tag node.- result of the filter is a single element list with a text node or the empty list-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AprocessAttrl"-></A-><B->processAttrl</B-> :: XmlSFilter -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#processAttrl"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->process the attribute list of a tag node with a tree list filter.- for other trees this filter acts like <TT->none</TT->-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AprocessAttr"-></A-><B->processAttr</B-> :: XmlFilter -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#processAttr"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"-><P->elementwise processing of the attributes of a tag.- for other trees this filter acts like <TT->none</TT->-</P-><P->see also : <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AprocessAttrl"->processAttrl</A-></TT->-</P-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AreplaceAttrl"-></A-><B->replaceAttrl</B-> :: XmlTrees -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#replaceAttrl"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->replace an attribute list- to be renamed when replaceAttrl is eliminated-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3Adel1Attr"-></A-><B->del1Attr</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#del1Attr"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->delete an attribute from the attribute list of a tag tree-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3Aadd1Attr"-></A-><B->add1Attr</B-> :: XmlTree -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#add1Attr"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"-><P->add an attribute to the attribute list of a tag.- If the attribute already exists, it's substituted,-</P-><P->see also: <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Asattr"->sattr</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3A%2B%3D"->+=</A-></TT->-</P-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AaddAttrl"-></A-><B->addAttrl</B-> :: XmlFilter -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#addAttrl"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"-><P->adds an attribute list computed by a filter, uses <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Aadd1Attr"->add1Attr</A-></TT->.-</P-><P->see also: <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3A%2B%3D"->+=</A-></TT->-</P-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AaddAttr"-></A-><B->addAttr</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#addAttr"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->add or change an attribute with a given string as value for a XTag or XPi tree,- uses <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Aadd1Attr"->add1Attr</A-></TT->.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AaddAttrInt"-></A-><B->addAttrInt</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt"->Int</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#addAttrInt"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->add or change an attribute with an Int value.- uses <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AaddAttr"->addAttr</A-></TT->.-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AmodifyAttr"-></A-><B->modifyAttr</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; (<A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A->) -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#modifyAttr"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"-><P->edit filter for changing the value of an attribute in a tag node.- result of the filter is a single element list with the tag node or the empty list.-</P-><UL-><LI-> 1.parameter n :  the name of the attribute-</LI-><LI-> 2.parameter f :  the edit function for the attribute value-</LI-><LI-> returns : the edit filter-</LI-></UL-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AaddDTDAttr"-></A-><B->addDTDAttr</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#addDTDAttr"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->add or change an attribute of a DTD tree-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3A%2B%3D"-></A-><B->(+=)</B-> :: XmlFilter -&gt; XmlFilter -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#%2B%3D"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"-><P->convenient function for tag node tree construction-</P-><P->infixl 7-</P-><P->filter combinator for tag tree constrcution- take a 1. filter for computing a tag node tree (or a whole list of tag node trees)- then add all trees computed by the 2. filter to the attribute list when they represent attributes- else append them to the list of children.-</P-><P->if the 1. filter computes a list of tag nodes, the results of the 2. filter are added to all trees-</P-><P->example: <TT-> etag &quot;a&quot; += sattr &quot;href&quot; &quot;#42&quot; += txt &quot;the answer&quot; </TT->- gives the tree <TT-> &lt;a href=&quot;#42&quot;&gt;the answer&lt;/a&gt; </TT->-</P-><P->example: <TT-> ( etag &quot;a&quot; +++ etag &quot;b&quot; ) += sattr &quot;x&quot; &quot;42&quot; </TT->- gives the tree <TT-> &lt;a x=&quot;42&quot;/&gt;&lt;b x=&quot;42&quot;/&gt; </TT->-</P-><P->see also : <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Aetag"->etag</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Atag"->tag</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Aadd1Attr"->add1Attr</A-></TT->, <TT->modifyChildren</TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3A%2B%2B%3D"->++=</A-></TT->-</P-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3A%2B%2B%3D"-></A-><B->(++=)</B-> :: XmlFilter -&gt; [XmlFilter] -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#%2B%2B%3D"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"-><P->convenient filter function adding a whole list of trees, just for not writing to many ( ... ).-</P-><P->infixl 7-</P-><PRE-> f ++= gl  == f += cat gl</PRE-><P->see also : <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3A%2B%3D"->+=</A-></TT->-</P-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AvalueOf"-></A-><B->valueOf</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlTree -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-></TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#valueOf"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->combination of <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AgetValue"->getValue</A-></TT-> and conversion into a String-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AintValueOf"-></A-><B->intValueOf</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlTree -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt"->Int</A-></TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#intValueOf"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->combination of <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AgetValue"->getValue</A-></TT-> and conversion to a Int-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3Atag"-></A-><B->tag</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; [XmlFilter] -&gt; [XmlFilter] -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#tag"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"-><P->variant of mkXTag with a list of filters for the attributes and a list of filters for the children.- this variant leads to a more readable source for a complicated construction filter- than the simple solution with a combination of <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXTag"->mkXTag</A-></TT-> and <TT->cat</TT->.-</P-><P->see also : <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXTag"->mkXTag</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Astag"->stag</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Aetag"->etag</A-></TT->, <TT->cat</TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3A%2B%3D"->+=</A-></TT->-</P-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3Astag"-></A-><B->stag</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; [XmlFilter] -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#stag"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"-><P->variant of tag, useful for tags without attributes and with a list of filters for- constructing the children-</P-><P->see also : <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXTag"->mkXTag</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Atag"->tag</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Aetag"->etag</A-></TT->, <TT->cat</TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3A%2B%3D"->+=</A-></TT->-</P-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3Aatag"-></A-><B->atag</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; [XmlFilter] -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#atag"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"-><P->variant of tag, useful for tags with attributes but without children-</P-><P->see also : <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXTag"->mkXTag</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Atag"->tag</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Astag"->stag</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Aetag"->etag</A-></TT->, <TT->cat</TT->-</P-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3Aetag"-></A-><B->etag</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#etag"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"-><P->Short cut for empty tags without attributes-</P-><P->see also : <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Atag"->tag</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Aatag"->atag</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Astag"->stag</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXTag"->mkXTag</A-></TT-> and <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3A%2B%3D"->+=</A-></TT->-</P-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3Aqetag"-></A-><B->qetag</B-> :: QName -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#qetag"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->Qualified version of etag-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3Aqtag"-></A-><B->qtag</B-> :: QName -&gt; XmlFilter -&gt; XmlFilter -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#qtag"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->Alias for mkQTag-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3ArootTag"-></A-><B->rootTag</B-> :: [XmlFilter] -&gt; [XmlFilter] -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#rootTag"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"-><P->filter for creating a document root node with a list of filters for the attributes and a list of filters for the document.-</P-><P->see also : <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Atag"->tag</A-></TT->-</P-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3Aattr"-></A-><B->attr</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#attr"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->Alias for <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXAttr"->mkXAttr</A-></TT->-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3Aqattr"-></A-><B->qattr</B-> :: QName -&gt; XmlFilter -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#qattr"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->Alias for mkQAttr-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3Asattr"-></A-><B->sattr</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#sattr"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"-><P->short cut for attribute construction with string constants-</P-><P->set also : <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Aattr"->attr</A-></TT->, <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXAttr"->mkXAttr</A-></TT-> and <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXText"->mkXText</A-></TT->-</P-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3Atxt"-></A-><B->txt</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#txt"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->short cut for <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXText"->mkXText</A-></TT->-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3Acmt"-></A-><B->cmt</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#cmt"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"-><P->short cut for simple comment- the input tree is ignored-</P-><P->see also : <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXCmt"->mkXCmt</A-></TT->-</P-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3Aspi"-></A-><B->spi</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#spi"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"-><P->short cut for generating simple processing instructions (spi)- the input tree is ignored-</P-><P-><TT->spi &quot;xyz&quot; &quot;abc&quot;</TT-> is equal to <TT->mkXPi &quot;xyz&quot; (txt &quot;abc&quot;)</TT->- (the name pi is already used in prelude)-</P-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3Acdata"-></A-><B->cdata</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#cdata"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->short cut for generating simple cdata sections,- the input tree is ignored-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3Adtd"-></A-><B->dtd</B-> :: DTDElem -&gt; [XmlFilter] -&gt; [XmlFilter] -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#dtd"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"->DTD part generation with filter for attributes and children- see also: <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFunctions.html#v%3AmkXDTDTree"->mkXDTDTree</A-></TT->-</TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3Awarn"-></A-><B->warn</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#warn"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"-><P->short cut for mkXError c_warn.-</P-><P->see also : <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXError"->mkXError</A-></TT->-</P-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3Aerr"-></A-><B->err</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#err"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"-><P->short cut for mkXError c_fatal.-</P-><P->see also : <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXError"->mkXError</A-></TT->-</P-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3Afatal"-></A-><B->fatal</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD-><TD CLASS="declbut"-><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#fatal"->Source</A-></TD-></TR-></TABLE-></TD-></TR-><TR-><TD CLASS="doc"-><P->short cut for mkXError c_fatal.-</P-><P->see also : <TT-><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXError"->mkXError</A-></TT->-</P-></TD-></TR-><TR-><TD CLASS="s15"-></TD-></TR-><TR-><TD CLASS="topdecl"-><TABLE CLASS="declbar"-><TR-><TD CLASS="declname"-><A NAME="v%3AhasOption"-></A-><B->hasOption</B-> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"->String</A-> -&gt; XmlFilter</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+><TD CLASS="topbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html"+>Source code</A+></TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="modulebar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><FONT SIZE="6"+>Text.XML.HXT.DOM.XmlTreeFilter</FONT+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+>Description</TD+></TR+><TR+><TD CLASS="doc"+>basic XmlTree filter+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+>Synopsis</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="decl"+><A HREF="#v%3AisRoot"+>isRoot</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisTag"+>isTag</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisNsTag"+>isNsTag</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AhasLocalPart"+>hasLocalPart</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AhasPrefix"+>hasPrefix</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AhasNamespace"+>hasNamespace</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisOfTag"+>isOfTag</A+> :: (<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3ATagName"+>TagName</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+>Bool</A+>) -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AhasAttr"+>hasAttr</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AhasNsAttr"+>hasNsAttr</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AhasValue"+>hasValue</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; (<A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+>Bool</A+>) -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisPi"+>isPi</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisXmlPi"+>isXmlPi</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisOfPi"+>isOfPi</A+> :: (<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3ATagName"+>TagName</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+>Bool</A+>) -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisXCdata"+>isXCdata</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisXCharRef"+>isXCharRef</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisXCmt"+>isXCmt</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisXDTD"+>isXDTD</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisXEntityRef"+>isXEntityRef</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisXError"+>isXError</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisXPi"+>isXPi</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisXTag"+>isXTag</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisXAttr"+>isXAttr</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisAttr"+>isAttr</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisNsAttr"+>isNsAttr</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisOfAttr"+>isOfAttr</A+> :: (<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AAttrName"+>AttrName</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+>Bool</A+>) -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisXText"+>isXText</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisText"+>isText</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisOfText"+>isOfText</A+> :: (<A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+>Bool</A+>) -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisWhiteSpace"+>isWhiteSpace</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisDoctype"+>isDoctype</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisAttlist"+>isAttlist</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisElement"+>isElement</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisEntity"+>isEntity</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisPeRef"+>isPeRef</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisDTDName"+>isDTDName</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisCondSect"+>isCondSect</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisParameterEntity"+>isParameterEntity</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisNotation"+>isNotation</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisDefaultAttrKind"+>isDefaultAttrKind</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisEnumAttrType"+>isEnumAttrType</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisFixedAttrKind"+>isFixedAttrKind</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisIdAttrType"+>isIdAttrType</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisIdRefAttrType"+>isIdRefAttrType</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisNotationAttrType"+>isNotationAttrType</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisRequiredAttrKind"+>isRequiredAttrKind</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisAttlistParameterEntity"+>isAttlistParameterEntity</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisEmptyElement"+>isEmptyElement</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisMixedContentElement"+>isMixedContentElement</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisElemWithContent"+>isElemWithContent</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisAttlistOfElement"+>isAttlistOfElement</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisElemContentParamEntity"+>isElemContentParamEntity</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisUnparsedEntity"+>isUnparsedEntity</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisExternalParameterEntity"+>isExternalParameterEntity</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisInternalParameterEntity"+>isInternalParameterEntity</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisWarning"+>isWarning</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisError"+>isError</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AisFatalError"+>isFatalError</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AmkXTag"+>mkXTag</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AmkQTag"+>mkQTag</A+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#t%3AQName"+>QName</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AmkXNsTag"+>mkXNsTag</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AmkXAttr"+>mkXAttr</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AmkQAttr"+>mkQAttr</A+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#t%3AQName"+>QName</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AmkXNsAttr"+>mkXNsAttr</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AmkXText"+>mkXText</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AmkXCharRef"+>mkXCharRef</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt"+>Int</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AmkXEntityRef"+>mkXEntityRef</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AmkXCmt"+>mkXCmt</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AmkXDTD"+>mkXDTD</A+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3ADTDElem"+>DTDElem</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AAttributes"+>Attributes</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AmkXCdata"+>mkXCdata</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AmkXPi"+>mkXPi</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AmkXError"+>mkXError</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt"+>Int</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AgetName"+>getName</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AgetAttrl"+>getAttrl</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AgetValue"+>getValue</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AgetNsValue"+>getNsValue</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AgetDTDValue"+>getDTDValue</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AgetXCmt"+>getXCmt</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AgetXCdata"+>getXCdata</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AreplaceQName"+>replaceQName</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AmodifyText"+>modifyText</A+> :: (<A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+>) -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AmodifyQName"+>modifyQName</A+> :: (<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3ATagName"+>TagName</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3ATagName"+>TagName</A+>) -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AprocessAttrl"+>processAttrl</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlSFilter"+>XmlSFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AprocessAttr"+>processAttr</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AreplaceAttrl"+>replaceAttrl</A+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Adel1Attr"+>del1Attr</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Aadd1Attr"+>add1Attr</A+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AaddAttrl"+>addAttrl</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AaddAttr"+>addAttr</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AaddAttrInt"+>addAttrInt</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt"+>Int</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AmodifyAttr"+>modifyAttr</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; (<A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+>) -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AaddDTDAttr"+>addDTDAttr</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3A%2B%3D"+>(+=)</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3A%2B%2B%3D"+>(++=)</A+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; [<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+>] -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AvalueOf"+>valueOf</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AintValueOf"+>intValueOf</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt"+>Int</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Atag"+>tag</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; [<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+>] -&gt; [<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+>] -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Astag"+>stag</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; [<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+>] -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Aatag"+>atag</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; [<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+>] -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Aetag"+>etag</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Aqetag"+>qetag</A+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#t%3AQName"+>QName</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Aqtag"+>qtag</A+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#t%3AQName"+>QName</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3ArootTag"+>rootTag</A+> :: [<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+>] -&gt; [<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+>] -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Aattr"+>attr</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Aqattr"+>qattr</A+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#t%3AQName"+>QName</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Asattr"+>sattr</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Atxt"+>txt</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Acmt"+>cmt</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Aspi"+>spi</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Acdata"+>cdata</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Adtd"+>dtd</A+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3ADTDElem"+>DTDElem</A+> -&gt; [<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+>] -&gt; [<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+>] -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Awarn"+>warn</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Aerr"+>err</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3Afatal"+>fatal</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AhasOption"+>hasOption</A+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+>Documentation</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisRoot"+></A+><B+>isRoot</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isRoot"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree contains a document root node.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisTag"+></A+><B+>isTag</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isTag"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>test whether the root of a tree contains a tag node.+</P+><P+>see also: <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AisNsTag"+>isNsTag</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisNsTag"+></A+><B+>isNsTag</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isNsTag"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>namespace aware test whether the root of a tree contains a tag node. Parameters are the local part and namespace.+ Only usable after namespace propagation.+</P+><P+>see also: <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AisTag"+>isTag</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AhasLocalPart"+></A+><B+>hasLocalPart</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#hasLocalPart"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree has a given local name+ see also : <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AhasNamespace"+>hasNamespace</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AhasPrefix"+>hasPrefix</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AisTag"+>isTag</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AisAttr"+>isAttr</A+></TT+>+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AhasPrefix"+></A+><B+>hasPrefix</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#hasPrefix"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree has a given prefix name+ see also : <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AhasNamespace"+>hasNamespace</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AhasLocalPart"+>hasLocalPart</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AisTag"+>isTag</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AisAttr"+>isAttr</A+></TT+>+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AhasNamespace"+></A+><B+>hasNamespace</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#hasNamespace"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree belongs to a given namespace+ see also : <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AisTag"+>isTag</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AisAttr"+>isAttr</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AhasLocalPart"+>hasLocalPart</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AhasPrefix"+>hasPrefix</A+></TT+>+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisOfTag"+></A+><B+>isOfTag</B+> :: (<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3ATagName"+>TagName</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+>Bool</A+>) -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isOfTag"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree contains a tag node with a special name.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AhasAttr"+></A+><B+>hasAttr</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#hasAttr"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>test whether the node of a tree is a XTag node or a XPi node with an attibute of a specific name+</P+><P+>see also: <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AisAttr"+>isAttr</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AhasNsAttr"+>hasNsAttr</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AhasNsAttr"+></A+><B+>hasNsAttr</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#hasNsAttr"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>test whether the tree is a XTag node with an attibute of a specific local name and namespace uri+</P+><P+>see also: <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AhasAttr"+>hasAttr</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AisNsAttr"+>isNsAttr</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AhasValue"+></A+><B+>hasValue</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; (<A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+>Bool</A+>) -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#hasValue"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>test whether the given node is a XTag node or a XPI node with an attribute with a value with a specific property.+ In case of a match, the attribute value represented by a text node is returned as single element list,+ else the empty list is the result.+</P+><P+>see also : <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AgetValue"+>getValue</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisPi"+></A+><B+>isPi</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isPi"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the tree is a processing instruction with a given name.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisXmlPi"+></A+><B+>isXmlPi</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isXmlPi"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the tree is a &lt;?xml ... ?&gt; declaration+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisOfPi"+></A+><B+>isOfPi</B+> :: (<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3ATagName"+>TagName</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+>Bool</A+>) -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isOfPi"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree contains a processing instruction of a special name.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisXCdata"+></A+><B+>isXCdata</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isXCdata"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree contains a CDATA node.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisXCharRef"+></A+><B+>isXCharRef</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isXCharRef"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree contains a character reference node.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisXCmt"+></A+><B+>isXCmt</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isXCmt"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree contains a comment node.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisXDTD"+></A+><B+>isXDTD</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isXDTD"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree contains a DTD part.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisXEntityRef"+></A+><B+>isXEntityRef</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isXEntityRef"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree contains an entity reference node.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisXError"+></A+><B+>isXError</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isXError"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree contains an error node.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisXPi"+></A+><B+>isXPi</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isXPi"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree contains a processing instruction node.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisXTag"+></A+><B+>isXTag</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isXTag"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree contains a tag node.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisXAttr"+></A+><B+>isXAttr</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isXAttr"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree contains an attribute node.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisAttr"+></A+><B+>isAttr</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isAttr"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree is an attribute node for a given attribute name+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisNsAttr"+></A+><B+>isNsAttr</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isNsAttr"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>namespace aware test whether the tree contains an attribute node. Parameters are the local part of the atribute name and the namespace.+ Only usable after namespace propagation.+</P+><P+>see also: <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AisNsTag"+>isNsTag</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AisAttr"+>isAttr</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AhasNsAttr"+>hasNsAttr</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisOfAttr"+></A+><B+>isOfAttr</B+> :: (<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AAttrName"+>AttrName</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+>Bool</A+>) -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isOfAttr"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>general test for an attribute name+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisXText"+></A+><B+>isXText</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isXText"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree contains a text node.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisText"+></A+><B+>isText</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isText"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree contains a special text.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisOfText"+></A+><B+>isOfText</B+> :: (<A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+>Bool</A+>) -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isOfText"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree contains a text node with a special property+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisWhiteSpace"+></A+><B+>isWhiteSpace</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isWhiteSpace"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree contains a text node only with whitespace.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisDoctype"+></A+><B+>isDoctype</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isDoctype"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree contains a DOCTYPE DTD part.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisAttlist"+></A+><B+>isAttlist</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isAttlist"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree contains an ATTLIST DTD part.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisElement"+></A+><B+>isElement</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isElement"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree contains an ELEMENT DTD part.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisEntity"+></A+><B+>isEntity</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isEntity"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree contains an ENTITY DTD part.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisPeRef"+></A+><B+>isPeRef</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isPeRef"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree contains a parameter ENTITY reference.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisDTDName"+></A+><B+>isDTDName</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isDTDName"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree contains a DTD name part.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisCondSect"+></A+><B+>isCondSect</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isCondSect"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree contains a conditional section DTD part.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisParameterEntity"+></A+><B+>isParameterEntity</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isParameterEntity"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree contains a parameter entity declaration.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisNotation"+></A+><B+>isNotation</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isNotation"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree contains a NOTATION DTD part.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisDefaultAttrKind"+></A+><B+>isDefaultAttrKind</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isDefaultAttrKind"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisEnumAttrType"+></A+><B+>isEnumAttrType</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isEnumAttrType"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisFixedAttrKind"+></A+><B+>isFixedAttrKind</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isFixedAttrKind"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisIdAttrType"+></A+><B+>isIdAttrType</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isIdAttrType"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisIdRefAttrType"+></A+><B+>isIdRefAttrType</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isIdRefAttrType"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisNotationAttrType"+></A+><B+>isNotationAttrType</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isNotationAttrType"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisRequiredAttrKind"+></A+><B+>isRequiredAttrKind</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isRequiredAttrKind"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisAttlistParameterEntity"+></A+><B+>isAttlistParameterEntity</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isAttlistParameterEntity"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisEmptyElement"+></A+><B+>isEmptyElement</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isEmptyElement"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisMixedContentElement"+></A+><B+>isMixedContentElement</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isMixedContentElement"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisElemWithContent"+></A+><B+>isElemWithContent</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isElemWithContent"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisAttlistOfElement"+></A+><B+>isAttlistOfElement</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isAttlistOfElement"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisElemContentParamEntity"+></A+><B+>isElemContentParamEntity</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isElemContentParamEntity"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisUnparsedEntity"+></A+><B+>isUnparsedEntity</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isUnparsedEntity"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisExternalParameterEntity"+></A+><B+>isExternalParameterEntity</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isExternalParameterEntity"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisInternalParameterEntity"+></A+><B+>isInternalParameterEntity</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isInternalParameterEntity"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisWarning"+></A+><B+>isWarning</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isWarning"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree contains an error node for a warning.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisError"+></A+><B+>isError</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isError"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree contains an error node for an error.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AisFatalError"+></A+><B+>isFatalError</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#isFatalError"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>test whether the root of a tree contains an error node for a fatal error.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AmkXTag"+></A+><B+>mkXTag</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#mkXTag"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>constructor filter for a tag node.+ a new tree is constructed.+ the attributes and the children are computed by applying the aproprate filter to the input tree+</P+><UL+><LI+> 1.parameter n :  the tag name+</LI+><LI+> 2.parameter af :  the filter for the attribute list+</LI+><LI+> 3.parameter cf :  the filter for the children+</LI+><LI+> returns : the constructor filter+</LI+></UL+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AmkQTag"+></A+><B+>mkQTag</B+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#t%3AQName"+>QName</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#mkQTag"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>Version with qualified names of <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXTag"+>mkXTag</A+></TT+>+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AmkXNsTag"+></A+><B+>mkXNsTag</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#mkXNsTag"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>constructor filter for a tag node.+ a new tree is constructed.+ the attributes and the children are computed by applying the aproprate filter to the input tree+</P+><UL+><LI+> 1.parameter n :  the tag name in form of prefix:localpart+</LI+><LI+> 2.parameter ns:   the namespace uri+</LI+><LI+> 3.parameter af :  the filter for the attribute list+</LI+><LI+> 4.parameter cf :  the filter for the children+</LI+><LI+> returns : the constructor filter+</LI+></UL+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AmkXAttr"+></A+><B+>mkXAttr</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#mkXAttr"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>filter for attribute construction.+ a new tree with attribute name and a value computed by a filter+ is build.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AmkQAttr"+></A+><B+>mkQAttr</B+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#t%3AQName"+>QName</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#mkQAttr"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>Qualified version <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXAttr"+>mkXAttr</A+></TT+>+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AmkXNsAttr"+></A+><B+>mkXNsAttr</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#mkXNsAttr"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>filter for attribute construction.+ a new tree with attribute name and namespace and a value computed by a filter+ is build.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AmkXText"+></A+><B+>mkXText</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#mkXText"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>constructor filter for a text node.+ a new tree is constructed.+ the input tree is ignored.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AmkXCharRef"+></A+><B+>mkXCharRef</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt"+>Int</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#mkXCharRef"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>constructor filter for a character reference node.+ a new tree is constructed.+ the input tree is ignored.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AmkXEntityRef"+></A+><B+>mkXEntityRef</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#mkXEntityRef"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>constructor filter for an entity reference node.+ a new tree is constructed.+ the input tree is ignored.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AmkXCmt"+></A+><B+>mkXCmt</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#mkXCmt"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>constructor filter for a comment node.+ a new tree is constructed.+ the xml string representation of the filter result+ forms the comment+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AmkXDTD"+></A+><B+>mkXDTD</B+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3ADTDElem"+>DTDElem</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AAttributes"+>Attributes</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#mkXDTD"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>constructor filter for a DTD part.+ a new tree is constructed.+ the input tree is ignored.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AmkXCdata"+></A+><B+>mkXCdata</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#mkXCdata"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>constructor filter for a CDATA section node.+ a new tree is constructed.+ the input tree is ignored.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AmkXPi"+></A+><B+>mkXPi</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#mkXPi"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>constructor filter for a processing instruction+ a new tree is constructed from the text representation+ of the input tree+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AmkXError"+></A+><B+>mkXError</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt"+>Int</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#mkXError"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>constructor filter for an error message node.+ a new tree is constructed.+ the input tree is ignored.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AgetName"+></A+><B+>getName</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#getName"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>filter for selecting the name of a tag node, an attribute node or a pi node.+ Result of the filter is a single element list with a text node or the empty list+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AgetAttrl"+></A+><B+>getAttrl</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#getAttrl"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>filter for selecting the attibute list+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AgetValue"+></A+><B+>getValue</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#getValue"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>filter for selecting the value of an attribute in a tag node.+ Result of the filter is a single element list with a text node or the empty list+</P+><P+>see also : <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AhasValue"+>hasValue</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AgetNsValue"+>getNsValue</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AgetNsValue"+></A+><B+>getNsValue</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#getNsValue"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>filter for selecting the value of an attribute with namespace in a tag node.+ Result of the filter is a single element list with a text node or the empty list+</P+><P+>see also : <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AgetValue"+>getValue</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AisNsAttr"+>isNsAttr</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AgetDTDValue"+></A+><B+>getDTDValue</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#getDTDValue"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>filter for selecting an attribute of a DTD node.+ Result of the filter is a single element list with a text node or the empty list+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AgetXCmt"+></A+><B+>getXCmt</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#getXCmt"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>filter for selecting content of a comment.+ Result of the filter is a single element list with a text node or the empty list+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AgetXCdata"+></A+><B+>getXCdata</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#getXCdata"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>filter for selecting the CDATA content.+ Result of the filter is a single element list with a text node or the empty list+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AreplaceQName"+></A+><B+>replaceQName</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#replaceQName"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>edit filter for changing the name of a tag node, an attribute or a pi.+ result of the filter is a single element list with a tag node or the empty list+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AmodifyText"+></A+><B+>modifyText</B+> :: (<A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+>) -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#modifyText"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>edit filter for changing the text of a text node.+ result of the filter is a single element list with a text node or the empty list+</P+><P+>example for editing all text nodes of a tree with an edit function <TT+>f</TT+>:+</P+><PRE+>processBottomUp (modifyText f `when` isXText)</PRE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AmodifyQName"+></A+><B+>modifyQName</B+> :: (<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3ATagName"+>TagName</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3ATagName"+>TagName</A+>) -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#modifyQName"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>edit filter for changing the name of a tag node.+ result of the filter is a single element list with a text node or the empty list+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AprocessAttrl"+></A+><B+>processAttrl</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlSFilter"+>XmlSFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#processAttrl"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>process the attribute list of a tag node with a tree list filter.+ for other trees this filter acts like <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Anone"+>none</A+></TT+>+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AprocessAttr"+></A+><B+>processAttr</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#processAttr"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>elementwise processing of the attributes of a tag.+ for other trees this filter acts like <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Anone"+>none</A+></TT+>+</P+><P+>see also : <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AprocessAttrl"+>processAttrl</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AreplaceAttrl"+></A+><B+>replaceAttrl</B+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#replaceAttrl"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>replace an attribute list+ to be renamed when replaceAttrl is eliminated+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Adel1Attr"+></A+><B+>del1Attr</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#del1Attr"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>delete an attribute from the attribute list of a tag tree+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Aadd1Attr"+></A+><B+>add1Attr</B+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#add1Attr"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>add an attribute to the attribute list of a tag.+ If the attribute already exists, it's substituted,+</P+><P+>see also: <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Asattr"+>sattr</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3A%2B%3D"+>+=</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AaddAttrl"+></A+><B+>addAttrl</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#addAttrl"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>adds an attribute list computed by a filter, uses <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Aadd1Attr"+>add1Attr</A+></TT+>.+</P+><P+>see also: <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3A%2B%3D"+>+=</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AaddAttr"+></A+><B+>addAttr</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#addAttr"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>add or change an attribute with a given string as value for a XTag or XPi tree,+ uses <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Aadd1Attr"+>add1Attr</A+></TT+>.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AaddAttrInt"+></A+><B+>addAttrInt</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt"+>Int</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#addAttrInt"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>add or change an attribute with an Int value.+ uses <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AaddAttr"+>addAttr</A+></TT+>.+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AmodifyAttr"+></A+><B+>modifyAttr</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; (<A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+>) -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#modifyAttr"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>edit filter for changing the value of an attribute in a tag node.+ result of the filter is a single element list with the tag node or the empty list.+</P+><UL+><LI+> 1.parameter n :  the name of the attribute+</LI+><LI+> 2.parameter f :  the edit function for the attribute value+</LI+><LI+> returns : the edit filter+</LI+></UL+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AaddDTDAttr"+></A+><B+>addDTDAttr</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#addDTDAttr"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>add or change an attribute of a DTD tree+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3A%2B%3D"+></A+><B+>(+=)</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#%2B%3D"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>convenient function for tag node tree construction+</P+><P+>infixl 7+</P+><P+>filter combinator for tag tree constrcution+ take a 1. filter for computing a tag node tree (or a whole list of tag node trees)+ then add all trees computed by the 2. filter to the attribute list when they represent attributes+ else append them to the list of children.+</P+><P+>if the 1. filter computes a list of tag nodes, the results of the 2. filter are added to all trees+</P+><P+>example: <TT+> etag &quot;a&quot; += sattr &quot;href&quot; &quot;#42&quot; += txt &quot;the answer&quot; </TT+>+ gives the tree <TT+> &lt;a href=&quot;#42&quot;&gt;the answer&lt;/a&gt; </TT+>+</P+><P+>example: <TT+> ( etag &quot;a&quot; +++ etag &quot;b&quot; ) += sattr &quot;x&quot; &quot;42&quot; </TT+>+ gives the tree <TT+> &lt;a x=&quot;42&quot;/&gt;&lt;b x=&quot;42&quot;/&gt; </TT+>+</P+><P+>see also : <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Aetag"+>etag</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Atag"+>tag</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Aadd1Attr"+>add1Attr</A+></TT+>, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3AmodifyChildren"+>modifyChildren</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3A%2B%2B%3D"+>++=</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3A%2B%2B%3D"+></A+><B+>(++=)</B+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; [<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+>] -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#%2B%2B%3D"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>convenient filter function adding a whole list of trees, just for not writing to many ( ... ).+</P+><P+>infixl 7+</P+><PRE+> f ++= gl  == f += cat gl</PRE+><P+>see also : <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3A%2B%3D"+>+=</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AvalueOf"+></A+><B+>valueOf</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#valueOf"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>combination of <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AgetValue"+>getValue</A+></TT+> and conversion into a String+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AintValueOf"+></A+><B+>intValueOf</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt"+>Int</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#intValueOf"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>combination of <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AgetValue"+>getValue</A+></TT+> and conversion to a Int+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Atag"+></A+><B+>tag</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; [<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+>] -&gt; [<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+>] -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#tag"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>variant of mkXTag with a list of filters for the attributes and a list of filters for the children.+ this variant leads to a more readable source for a complicated construction filter+ than the simple solution with a combination of <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXTag"+>mkXTag</A+></TT+> and <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Acat"+>cat</A+></TT+>.+</P+><P+>see also : <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXTag"+>mkXTag</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Astag"+>stag</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Aetag"+>etag</A+></TT+>, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Acat"+>cat</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3A%2B%3D"+>+=</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Astag"+></A+><B+>stag</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; [<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+>] -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#stag"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>variant of tag, useful for tags without attributes and with a list of filters for+ constructing the children+</P+><P+>see also : <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXTag"+>mkXTag</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Atag"+>tag</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Aetag"+>etag</A+></TT+>, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Acat"+>cat</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3A%2B%3D"+>+=</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Aatag"+></A+><B+>atag</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; [<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+>] -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#atag"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>variant of tag, useful for tags with attributes but without children+</P+><P+>see also : <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXTag"+>mkXTag</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Atag"+>tag</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Astag"+>stag</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Aetag"+>etag</A+></TT+>, <TT+><A HREF="Data-Tree-NTree-Filter.html#v%3Acat"+>cat</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Aetag"+></A+><B+>etag</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#etag"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>Short cut for empty tags without attributes+</P+><P+>see also : <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Atag"+>tag</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Aatag"+>atag</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Astag"+>stag</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXTag"+>mkXTag</A+></TT+> and <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3A%2B%3D"+>+=</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Aqetag"+></A+><B+>qetag</B+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#t%3AQName"+>QName</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#qetag"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>Qualified version of etag+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Aqtag"+></A+><B+>qtag</B+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#t%3AQName"+>QName</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#qtag"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>Alias for mkQTag+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3ArootTag"+></A+><B+>rootTag</B+> :: [<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+>] -&gt; [<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+>] -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#rootTag"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>filter for creating a document root node with a list of filters for the attributes and a list of filters for the document.+</P+><P+>see also : <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Atag"+>tag</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Aattr"+></A+><B+>attr</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#attr"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>Alias for <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXAttr"+>mkXAttr</A+></TT+>+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Aqattr"+></A+><B+>qattr</B+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#t%3AQName"+>QName</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#qattr"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>Alias for mkQAttr+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Asattr"+></A+><B+>sattr</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#sattr"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>short cut for attribute construction with string constants+</P+><P+>set also : <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3Aattr"+>attr</A+></TT+>, <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXAttr"+>mkXAttr</A+></TT+> and <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXText"+>mkXText</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Atxt"+></A+><B+>txt</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#txt"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>short cut for <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXText"+>mkXText</A+></TT+>+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Acmt"+></A+><B+>cmt</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#cmt"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>short cut for simple comment+ the input tree is ignored+</P+><P+>see also : <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXCmt"+>mkXCmt</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Aspi"+></A+><B+>spi</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#spi"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>short cut for generating simple processing instructions (spi)+ the input tree is ignored+</P+><P+><TT+>spi &quot;xyz&quot; &quot;abc&quot;</TT+> is equal to <TT+>mkXPi &quot;xyz&quot; (txt &quot;abc&quot;)</TT+>+ (the name pi is already used in prelude)+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Acdata"+></A+><B+>cdata</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#cdata"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>short cut for generating simple cdata sections,+ the input tree is ignored+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Adtd"+></A+><B+>dtd</B+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3ADTDElem"+>DTDElem</A+> -&gt; [<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+>] -&gt; [<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+>] -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#dtd"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>DTD part generation with filter for attributes and children+ see also: <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFunctions.html#v%3AmkXDTDTree"+>mkXDTDTree</A+></TT+>+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Awarn"+></A+><B+>warn</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#warn"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>short cut for mkXError c_warn.+</P+><P+>see also : <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXError"+>mkXError</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Aerr"+></A+><B+>err</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#err"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>short cut for mkXError c_fatal.+</P+><P+>see also : <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXError"+>mkXError</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3Afatal"+></A+><B+>fatal</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#fatal"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+><P+>short cut for mkXError c_fatal.+</P+><P+>see also : <TT+><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkXError"+>mkXError</A+></TT+>+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AhasOption"+></A+><B+>hasOption</B+> :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFilter.html#hasOption" >Source</A
doc/hxt-filter/Text-XML-HXT-DOM-XmlTreeFunctions.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html" >Source code</A@@ -102,7 +102,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AisXCdataNode" >isXCdataNode</A-> :: XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ></TR@@ -114,7 +116,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AisXCharRefNode" >isXCharRefNode</A-> :: XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ></TR@@ -126,7 +130,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AisXCmtNode" >isXCmtNode</A-> :: XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ></TR@@ -138,7 +144,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AisXDTDNode" >isXDTDNode</A-> :: XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ></TR@@ -150,7 +158,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AisXAttrNode" >isXAttrNode</A-> :: XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ></TR@@ -162,7 +172,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AisXEntityRefNode" >isXEntityRefNode</A-> :: XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ></TR@@ -174,7 +186,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AisXErrorNode" >isXErrorNode</A-> :: XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ></TR@@ -186,7 +200,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AisXPiNode" >isXPiNode</A-> :: XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ></TR@@ -198,7 +214,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AisXTagNode" >isXTagNode</A-> :: XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ></TR@@ -210,7 +228,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AisXTextNode" >isXTextNode</A-> :: XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ></TR@@ -222,7 +242,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AisRootNode" >isRootNode</A-> :: XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ></TR@@ -236,7 +258,9 @@ >isTagNode</A > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ></TR@@ -248,9 +272,13 @@ ><TD CLASS="decl" ><A HREF="#v%3AisOfTagNode" >isOfTagNode</A-> :: (TagName -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: (<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3ATagName"+>TagName</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A->) -&gt; XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+>) -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ></TR@@ -264,7 +292,9 @@ >isAttrNode</A > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ></TR@@ -276,9 +306,13 @@ ><TD CLASS="decl" ><A HREF="#v%3AisOfAttrNode" >isOfAttrNode</A-> :: (AttrName -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: (<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AAttrName"+>AttrName</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A->) -&gt; XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+>) -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ></TR@@ -292,7 +326,9 @@ >isTextNode</A > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ></TR@@ -308,7 +344,9 @@ >String</A > -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A->) -&gt; XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+>) -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ></TR@@ -322,7 +360,9 @@ >isPiNode</A > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ></TR@@ -334,9 +374,13 @@ ><TD CLASS="decl" ><A HREF="#v%3AisOfPiNode" >isOfPiNode</A-> :: (TagName -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: (<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3ATagName"+>TagName</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A->) -&gt; XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+>) -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ></TR@@ -348,7 +392,11 @@ ><TD CLASS="decl" ><A HREF="#v%3AisDTDElemNode" >isDTDElemNode</A-> :: DTDElem -&gt; XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3ADTDElem"+>DTDElem</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ></TR@@ -362,7 +410,9 @@ >isErrorNode</A > :: <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt" >Int</A-> -&gt; XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ></TR@@ -374,7 +424,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AtextOfXNode" >textOfXNode</A-> :: XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A ></TD ></TR@@ -388,7 +440,13 @@ >mkXTagTree</A > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTrees -&gt; XmlTrees -&gt; XmlTree</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -398,7 +456,15 @@ ><TD CLASS="decl" ><A HREF="#v%3AmkQTagTree" >mkQTagTree</A-> :: QName -&gt; XmlTrees -&gt; XmlTrees -&gt; XmlTree</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#t%3AQName"+>QName</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -412,7 +478,13 @@ >String</A > -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTrees -&gt; XmlTrees -&gt; XmlTree</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -422,7 +494,11 @@ ><TD CLASS="decl" ><A HREF="#v%3AnewRoot" >newRoot</A-> :: XmlTrees -&gt; XmlTree</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -432,7 +508,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AemptyRoot" >emptyRoot</A-> :: XmlTree</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -444,7 +522,9 @@ >newDocument</A > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTree</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -454,7 +534,11 @@ ><TD CLASS="decl" ><A HREF="#v%3AnewDocument%27" >newDocument'</A-> :: Attributes -&gt; XmlTree</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AAttributes"+>Attributes</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -464,7 +548,13 @@ ><TD CLASS="decl" ><A HREF="#v%3AmkRootTree" >mkRootTree</A-> :: XmlTrees -&gt; XmlTrees -&gt; XmlTree</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -476,7 +566,9 @@ >mkXTextTree</A > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTree</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -488,7 +580,9 @@ >mkXCharRefTree</A > :: <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt" >Int</A-> -&gt; XmlTree</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -500,7 +594,9 @@ >mkXEntityRefTree</A > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTree</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -512,7 +608,9 @@ >mkXCmtTree</A > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTree</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -522,7 +620,15 @@ ><TD CLASS="decl" ><A HREF="#v%3AmkXDTDTree" >mkXDTDTree</A-> :: DTDElem -&gt; Attributes -&gt; XmlTrees -&gt; XmlTree</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3ADTDElem"+>DTDElem</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AAttributes"+>Attributes</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -534,7 +640,11 @@ >mkXAttrTree</A > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTrees -&gt; XmlTree</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -544,7 +654,13 @@ ><TD CLASS="decl" ><A HREF="#v%3AmkQAttrTree" >mkQAttrTree</A-> :: QName -&gt; XmlTrees -&gt; XmlTree</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#t%3AQName"+>QName</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -558,7 +674,11 @@ >String</A > -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTrees -&gt; XmlTree</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -570,7 +690,9 @@ >mkXPERefTree</A > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTree</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -584,7 +706,9 @@ >String</A > -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTree</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -594,7 +718,11 @@ ><TD CLASS="decl" ><A HREF="#v%3AmkXmlDeclTree" >mkXmlDeclTree</A-> :: XmlTrees -&gt; XmlTree</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -606,7 +734,9 @@ >mkXCdataTree</A > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTree</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -620,7 +750,11 @@ >Int</A > -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTrees -&gt; XmlTree</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -634,7 +768,9 @@ >Maybe</A > <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTrees</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -644,7 +780,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AshowXText" >showXText</A-> :: XmlTrees -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A ></TD ></TR@@ -656,7 +794,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AshowXCharRef" >showXCharRef</A-> :: XmlTrees -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A ></TD ></TR@@ -668,7 +808,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AshowXEntityRef" >showXEntityRef</A-> :: XmlTrees -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A ></TD ></TR@@ -680,7 +822,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AshowXErrors" >showXErrors</A-> :: XmlTrees -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A ></TD ></TR@@ -692,7 +836,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AxmlTreesToString" >xmlTreesToString</A-> :: XmlTrees -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A ></TD ></TR@@ -704,7 +850,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AxmlTreesToText" >xmlTreesToText</A-> :: XmlSFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlSFilter"+>XmlSFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -714,7 +862,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AxmlContentModelToString" >xmlContentModelToString</A-> :: XmlTree -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A ></TD ></TR@@ -726,7 +876,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AnameOf" >nameOf</A-> :: XmlTree -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A ></TD ></TR@@ -738,7 +890,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AlocalPartOf" >localPartOf</A-> :: XmlTree -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A ></TD ></TR@@ -750,7 +904,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AnamespaceOf" >namespaceOf</A-> :: XmlTree -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A ></TD ></TR@@ -762,7 +918,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AprefixOf" >prefixOf</A-> :: XmlTree -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A ></TD ></TR@@ -774,7 +932,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AuniversalNameOf" >universalNameOf</A-> :: XmlTree -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A ></TD ></TR@@ -786,7 +946,11 @@ ><TD CLASS="decl" ><A HREF="#v%3AattrlOfDTD" >attrlOfDTD</A-> :: XmlTree -&gt; Attributes</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AAttributes"+>Attributes</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -798,7 +962,9 @@ >valueOfDTD</A > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTree -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A ></TD ></TR@@ -814,7 +980,9 @@ >String</A > -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTree -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ></TR@@ -828,7 +996,9 @@ >xcmt</A > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTrees</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -840,7 +1010,9 @@ >xerr</A > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTrees</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -852,7 +1024,9 @@ >xwarn</A > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTrees</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -864,7 +1038,9 @@ >xtext</A > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTrees</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -876,7 +1052,13 @@ >xtag</A > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTrees -&gt; XmlTrees -&gt; XmlTrees</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -890,7 +1072,9 @@ >String</A > -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTrees</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -900,9 +1084,15 @@ ><TD CLASS="decl" ><A HREF="#v%3AtoTreel" >toTreel</A-> :: XmlTrees -&gt; AssocList <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-AssocList.html#t%3AAssocList"+>AssocList</A+> <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> XmlTrees</TD+> <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -912,7 +1102,11 @@ ><TD CLASS="decl" ><A HREF="#v%3AtoAttrl" >toAttrl</A-> :: XmlTrees -&gt; Attributes</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AAttributes"+>Attributes</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -922,9 +1116,15 @@ ><TD CLASS="decl" ><A HREF="#v%3AfromTreel" >fromTreel</A-> :: AssocList <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-AssocList.html#t%3AAssocList"+>AssocList</A+> <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> XmlTrees -&gt; XmlTrees</TD+> <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -934,7 +1134,11 @@ ><TD CLASS="decl" ><A HREF="#v%3AfromAttrl" >fromAttrl</A-> :: Attributes -&gt; XmlTrees</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AAttributes"+>Attributes</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ></TR ></TABLE ></TD@@ -960,7 +1164,9 @@ ></A ><B >isXCdataNode</B-> :: XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut"@@ -984,7 +1190,9 @@ ></A ><B >isXCharRefNode</B-> :: XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut"@@ -1008,7 +1216,9 @@ ></A ><B >isXCmtNode</B-> :: XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut"@@ -1032,7 +1242,9 @@ ></A ><B >isXDTDNode</B-> :: XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut"@@ -1056,7 +1268,9 @@ ></A ><B >isXAttrNode</B-> :: XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut"@@ -1080,7 +1294,9 @@ ></A ><B >isXEntityRefNode</B-> :: XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut"@@ -1104,7 +1320,9 @@ ></A ><B >isXErrorNode</B-> :: XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut"@@ -1128,7 +1346,9 @@ ></A ><B >isXPiNode</B-> :: XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut"@@ -1152,7 +1372,9 @@ ></A ><B >isXTagNode</B-> :: XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut"@@ -1176,7 +1398,9 @@ ></A ><B >isXTextNode</B-> :: XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut"@@ -1200,7 +1424,9 @@ ></A ><B >isRootNode</B-> :: XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut"@@ -1226,7 +1452,9 @@ >isTagNode</B > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut"@@ -1250,9 +1478,13 @@ ></A ><B >isOfTagNode</B-> :: (TagName -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: (<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3ATagName"+>TagName</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A->) -&gt; XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+>) -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut"@@ -1278,7 +1510,9 @@ >isAttrNode</B > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut"@@ -1302,9 +1536,13 @@ ></A ><B >isOfAttrNode</B-> :: (AttrName -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: (<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AAttrName"+>AttrName</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A->) -&gt; XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+>) -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut"@@ -1330,7 +1568,9 @@ >isTextNode</B > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut"@@ -1358,7 +1598,9 @@ >String</A > -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A->) -&gt; XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+>) -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut"@@ -1384,7 +1626,9 @@ >isPiNode</B > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut"@@ -1408,9 +1652,13 @@ ></A ><B >isOfPiNode</B-> :: (TagName -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: (<A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3ATagName"+>TagName</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A->) -&gt; XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+>) -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut"@@ -1434,7 +1682,11 @@ ></A ><B >isDTDElemNode</B-> :: DTDElem -&gt; XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3ADTDElem"+>DTDElem</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut"@@ -1460,7 +1712,9 @@ >isErrorNode</B > :: <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt" >Int</A-> -&gt; XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut"@@ -1484,7 +1738,9 @@ ></A ><B >textOfXNode</B-> :: XNode -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="declbut"@@ -1510,7 +1766,13 @@ >mkXTagTree</B > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTrees -&gt; XmlTrees -&gt; XmlTree</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#mkXTagTree" >Source</A@@ -1553,7 +1815,15 @@ ></A ><B >mkQTagTree</B-> :: QName -&gt; XmlTrees -&gt; XmlTrees -&gt; XmlTree</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#t%3AQName"+>QName</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#mkQTagTree" >Source</A@@ -1588,7 +1858,13 @@ >String</A > -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTrees -&gt; XmlTrees -&gt; XmlTree</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#mkXNsTagTree" >Source</A@@ -1641,7 +1917,11 @@ ></A ><B >newRoot</B-> :: XmlTrees -&gt; XmlTree</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#newRoot" >Source</A@@ -1686,7 +1966,9 @@ ></A ><B >emptyRoot</B-> :: XmlTree</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#emptyRoot" >Source</A@@ -1724,7 +2006,9 @@ >newDocument</B > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTree</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#newDocument" >Source</A@@ -1751,7 +2035,11 @@ ></A ><B >newDocument'</B-> :: Attributes -&gt; XmlTree</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AAttributes"+>Attributes</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#newDocument%27" >Source</A@@ -1787,7 +2075,13 @@ ></A ><B >mkRootTree</B-> :: XmlTrees -&gt; XmlTrees -&gt; XmlTree</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#mkRootTree" >Source</A@@ -1830,7 +2124,9 @@ >mkXTextTree</B > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTree</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#mkXTextTree" >Source</A@@ -1869,7 +2165,9 @@ >mkXCharRefTree</B > :: <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt" >Int</A-> -&gt; XmlTree</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#mkXCharRefTree" >Source</A@@ -1908,7 +2206,9 @@ >mkXEntityRefTree</B > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTree</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#mkXEntityRefTree" >Source</A@@ -1947,7 +2247,9 @@ >mkXCmtTree</B > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTree</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#mkXCmtTree" >Source</A@@ -1984,7 +2286,15 @@ ></A ><B >mkXDTDTree</B-> :: DTDElem -&gt; Attributes -&gt; XmlTrees -&gt; XmlTree</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3ADTDElem"+>DTDElem</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AAttributes"+>Attributes</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#mkXDTDTree" >Source</A@@ -2029,7 +2339,11 @@ >mkXAttrTree</B > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTrees -&gt; XmlTree</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#mkXAttrTree" >Source</A@@ -2066,7 +2380,13 @@ ></A ><B >mkQAttrTree</B-> :: QName -&gt; XmlTrees -&gt; XmlTree</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#t%3AQName"+>QName</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#mkQAttrTree" >Source</A@@ -2101,7 +2421,11 @@ >String</A > -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTrees -&gt; XmlTree</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#mkXNsAttrTree" >Source</A@@ -2154,7 +2478,9 @@ >mkXPERefTree</B > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTree</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#mkXPERefTree" >Source</A@@ -2195,7 +2521,9 @@ >String</A > -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTree</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#mkXPiTree" >Source</A@@ -2239,7 +2567,11 @@ ></A ><B >mkXmlDeclTree</B-> :: XmlTrees -&gt; XmlTree</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#mkXmlDeclTree" >Source</A@@ -2268,7 +2600,9 @@ >mkXCdataTree</B > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTree</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#mkXCdataTree" >Source</A@@ -2309,7 +2643,11 @@ >Int</A > -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTrees -&gt; XmlTree</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#mkXErrorTree" >Source</A@@ -2353,7 +2691,9 @@ >Maybe</A > <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTrees</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#maybeString2XText" >Source</A@@ -2375,7 +2715,9 @@ ></A ><B >showXText</B-> :: XmlTrees -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="declbut"@@ -2399,7 +2741,9 @@ ></A ><B >showXCharRef</B-> :: XmlTrees -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="declbut"@@ -2423,7 +2767,9 @@ ></A ><B >showXEntityRef</B-> :: XmlTrees -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="declbut"@@ -2447,7 +2793,9 @@ ></A ><B >showXErrors</B-> :: XmlTrees -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="declbut"@@ -2471,7 +2819,9 @@ ></A ><B >xmlTreesToString</B-> :: XmlTrees -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="declbut"@@ -2485,7 +2835,9 @@ ><TR ><TD CLASS="doc" >old name for <TT->xshow</TT+><A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-ShowXml.html#v%3Axshow"+>xshow</A+></TT > (deprecated) </TD ></TR@@ -2502,7 +2854,9 @@ ></A ><B >xmlTreesToText</B-> :: XmlSFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlSFilter"+>XmlSFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#xmlTreesToText" >Source</A@@ -2518,7 +2872,9 @@ </P ><P >see also : <TT->xshow</TT+><A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-ShowXml.html#v%3Axshow"+>xshow</A+></TT > </P ></TD@@ -2536,7 +2892,9 @@ ></A ><B >xmlContentModelToString</B-> :: XmlTree -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="declbut"@@ -2560,7 +2918,9 @@ ></A ><B >nameOf</B-> :: XmlTree -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="declbut"@@ -2590,7 +2950,9 @@ ></A ><B >localPartOf</B-> :: XmlTree -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="declbut"@@ -2620,7 +2982,9 @@ ></A ><B >namespaceOf</B-> :: XmlTree -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="declbut"@@ -2654,7 +3018,9 @@ ></A ><B >prefixOf</B-> :: XmlTree -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="declbut"@@ -2692,7 +3058,9 @@ ></A ><B >universalNameOf</B-> :: XmlTree -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="declbut"@@ -2730,7 +3098,11 @@ ></A ><B >attrlOfDTD</B-> :: XmlTree -&gt; Attributes</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AAttributes"+>Attributes</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#attrlOfDTD" >Source</A@@ -2759,7 +3131,9 @@ >valueOfDTD</B > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTree -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A ></TD ><TD CLASS="declbut"@@ -2792,7 +3166,9 @@ >String</A > -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTree -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool"+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Bool.html#t%3ABool" >Bool</A ></TD ><TD CLASS="declbut"@@ -2823,7 +3199,9 @@ >xcmt</B > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTrees</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#xcmt" >Source</A@@ -2847,7 +3225,9 @@ >xerr</B > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTrees</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#xerr" >Source</A@@ -2871,7 +3251,9 @@ >xwarn</B > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTrees</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#xwarn" >Source</A@@ -2895,7 +3277,9 @@ >xtext</B > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTrees</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#xtext" >Source</A@@ -2919,7 +3303,13 @@ >xtag</B > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTrees -&gt; XmlTrees -&gt; XmlTrees</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#xtag" >Source</A@@ -2945,7 +3335,9 @@ >String</A > -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTrees</TD+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#xattr" >Source</A@@ -2967,9 +3359,15 @@ ></A ><B >toTreel</B-> :: XmlTrees -&gt; AssocList <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-AssocList.html#t%3AAssocList"+>AssocList</A+> <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> XmlTrees</TD+> <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#toTreel" >Source</A@@ -2991,7 +3389,11 @@ ></A ><B >toAttrl</B-> :: XmlTrees -&gt; Attributes</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AAttributes"+>Attributes</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#toAttrl" >Source</A@@ -3013,9 +3415,15 @@ ></A ><B >fromTreel</B-> :: AssocList <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-AssocList.html#t%3AAssocList"+>AssocList</A+> <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> XmlTrees -&gt; XmlTrees</TD+> <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#fromTreel" >Source</A@@ -3037,7 +3445,11 @@ ></A ><B >fromAttrl</B-> :: Attributes -&gt; XmlTrees</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AAttributes"+>Attributes</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-DOM-XmlTreeFunctions.html#fromAttrl" >Source</A
+ doc/hxt-filter/Text-XML-HXT-DOM-XmlTreeTypes.html view
@@ -0,0 +1,690 @@+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">+<!--Rendered using the Haskell Html Library v0.2-->+<HTML+><HEAD+><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8"+><TITLE+>Text.XML.HXT.DOM.XmlTreeTypes</TITLE+><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css"+><SCRIPT SRC="haddock-util.js" TYPE="text/javascript"+></SCRIPT+></HEAD+><BODY+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="topbar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" "+></TD+><TD CLASS="title"+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+><TD CLASS="topbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeTypes.html"+>Source code</A+></TD+><TD CLASS="topbut"+><A HREF="index.html"+>Contents</A+></TD+><TD CLASS="topbut"+><A HREF="doc-index.html"+>Index</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="modulebar"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD+><FONT SIZE="6"+>Text.XML.HXT.DOM.XmlTreeTypes</FONT+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+>Description</TD+></TR+><TR+><TD CLASS="doc"+><P+>exports the core data types+ and some additional types and functions+ for compatibility with none arrow modules+</P+><P+>Version : $Id: XmlTreeTypes.hs,v 1.6 2006<EM+>05</EM+>09 15:30:43 hxml Exp $+</P+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+>Synopsis</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="body"+><TABLE CLASS="vanilla" CELLSPACING="0" CELLPADDING="0"+><TR+><TD CLASS="decl"+>module <A HREF="Data-Tree-NTree-Filter.html"+>Data.Tree.NTree.Filter</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AmkNode"+>mkNode</A+> ::  node -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTrees"+>NTrees</A+> node -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AformatNTree"+>formatNTree</A+> ::  (node -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+>) -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AfoldNTree"+>foldNTree</A+> ::  (a -&gt; [b] -&gt; b) -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> a -&gt; b</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AmapNTree"+>mapNTree</A+> ::  (a -&gt; b) -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> a -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> b</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AnTreeToList"+>nTreeToList</A+> ::  <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> a -&gt; [a]</TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AdepthNTree"+>depthNTree</A+> ::  <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> a -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt"+>Int</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AcardNTree"+>cardNTree</A+> ::  <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> a -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt"+>Int</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><SPAN CLASS="keyword"+>type</SPAN+> <A HREF="#t%3AXmlFilter"+>XmlFilter</A+> = <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><SPAN CLASS="keyword"+>type</SPAN+> <A HREF="#t%3AXmlSFilter"+>XmlSFilter</A+> = <A HREF="Data-Tree-NTree-Filter.html#t%3ATSFilter"+>TSFilter</A+> <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><SPAN CLASS="keyword"+>type</SPAN+> <A HREF="#t%3ATagName"+>TagName</A+> = <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#t%3AQName"+>QName</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><SPAN CLASS="keyword"+>type</SPAN+> <A HREF="#t%3AAttrName"+>AttrName</A+> = <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#t%3AQName"+>QName</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AtName"+>tName</A+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#t%3AQName"+>QName</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+></TD+></TR+><TR+><TD CLASS="s8"+></TD+></TR+><TR+><TD CLASS="decl"+><A HREF="#v%3AaName"+>aName</A+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#t%3AQName"+>QName</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="section1"+>Documentation</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="decl"+>module <A HREF="Data-Tree-NTree-Filter.html"+>Data.Tree.NTree.Filter</A+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AmkNode"+></A+><B+>mkNode</B+> ::  node -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTrees"+>NTrees</A+> node -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node</TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeTypes.html#mkNode"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AformatNTree"+></A+><B+>formatNTree</B+> ::  (node -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+>) -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> node -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeTypes.html#formatNTree"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AfoldNTree"+></A+><B+>foldNTree</B+> ::  (a -&gt; [b] -&gt; b) -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> a -&gt; b</TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeTypes.html#foldNTree"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AmapNTree"+></A+><B+>mapNTree</B+> ::  (a -&gt; b) -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> a -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> b</TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeTypes.html#mapNTree"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AnTreeToList"+></A+><B+>nTreeToList</B+> ::  <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> a -&gt; [a]</TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeTypes.html#nTreeToList"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AdepthNTree"+></A+><B+>depthNTree</B+> ::  <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> a -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt"+>Int</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeTypes.html#depthNTree"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AcardNTree"+></A+><B+>cardNTree</B+> ::  <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Data-Tree-NTree-TypeDefs.html#t%3ANTree"+>NTree</A+> a -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt"+>Int</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeTypes.html#cardNTree"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><SPAN CLASS="keyword"+>type</SPAN+> <A NAME="t%3AXmlFilter"+></A+><B+>XmlFilter</B+> = <A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>TFilter</A+> <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeTypes.html#XmlFilter"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>A functions that takes a node and returns a list of nodes+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><SPAN CLASS="keyword"+>type</SPAN+> <A NAME="t%3AXmlSFilter"+></A+><B+>XmlSFilter</B+> = <A HREF="Data-Tree-NTree-Filter.html#t%3ATSFilter"+>TSFilter</A+> <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXNode"+>XNode</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeTypes.html#XmlSFilter"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>A function that takes a list of nodes and returns a list of nodes+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><SPAN CLASS="keyword"+>type</SPAN+> <A NAME="t%3ATagName"+></A+><B+>TagName</B+> = <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#t%3AQName"+>QName</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeTypes.html#TagName"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>Tag name+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><SPAN CLASS="keyword"+>type</SPAN+> <A NAME="t%3AAttrName"+></A+><B+>AttrName</B+> = <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#t%3AQName"+>QName</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeTypes.html#AttrName"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>Attribute name+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AtName"+></A+><B+>tName</B+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#t%3AQName"+>QName</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeTypes.html#tName"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>shortcut for <TT+><A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#v%3AqualifiedName"+>qualifiedName</A+></TT+>+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="topdecl"+><TABLE CLASS="declbar"+><TR+><TD CLASS="declname"+><A NAME="v%3AaName"+></A+><B+>aName</B+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#t%3AQName"+>QName</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+>String</A+></TD+><TD CLASS="declbut"+><A HREF="src/Text-XML-HXT-DOM-XmlTreeTypes.html#aName"+>Source</A+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD CLASS="doc"+>shortcut for <TT+><A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-QualifiedName.html#v%3AqualifiedName"+>qualifiedName</A+></TT+>+</TD+></TR+><TR+><TD CLASS="s15"+></TD+></TR+><TR+><TD CLASS="botbar"+>Produced by <A HREF="http://www.haskell.org/haddock/"+>Haddock</A+> version 2.3.0</TD+></TR+></TABLE+></BODY+></HTML+>
doc/hxt-filter/Text-XML-HXT-DOM.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-DOM.html" >Source code</A
doc/hxt-filter/Text-XML-HXT-Parser-DTDProcessing.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-Parser-DTDProcessing.html" >Source code</A
doc/hxt-filter/Text-XML-HXT-Parser-DefaultURI.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-Parser-DefaultURI.html" >Source code</A
doc/hxt-filter/Text-XML-HXT-Parser-HtmlParser.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-Parser-HtmlParser.html" >Source code</A@@ -146,7 +146,11 @@ ><TD CLASS="decl" ><A HREF="#v%3AsubstHtmlEntities" >substHtmlEntities</A-> :: XmlTree -&gt; XmlTrees</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ></TR ></TABLE ></TD@@ -305,7 +309,11 @@ ></A ><B >substHtmlEntities</B-> :: XmlTree -&gt; XmlTrees</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-Parser-HtmlParser.html#substHtmlEntities" >Source</A
doc/hxt-filter/Text-XML-HXT-Parser-MainFunctions.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-Parser-MainFunctions.html" >Source code</A@@ -87,11 +87,17 @@ ><TD CLASS="decl" ><A HREF="#v%3AgetXmlDocument" >getXmlDocument</A-> :: Attributes -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AAttributes"+>Attributes</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A > -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/System-IO.html#t%3AIO" >IO</A-> (XmlTree, XmlTrees, <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt"+> (<A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+>, <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+>, <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt" >Int</A >)</TD ></TR@@ -103,11 +109,17 @@ ><TD CLASS="decl" ><A HREF="#v%3AputXmlDocument" >putXmlDocument</A-> :: Attributes -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AAttributes"+>Attributes</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTree -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/System-IO.html#t%3AIO"+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/System-IO.html#t%3AIO" >IO</A-> (XmlTrees, <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt"+> (<A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+>, <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt" >Int</A >)</TD ></TR@@ -119,7 +131,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AparseDocument" >parseDocument</A-> ::  Attributes -&gt; <A HREF="Text-XML-HXT-DOM-XmlState.html#t%3AXmlStateFilter"+> ::  <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AAttributes"+>Attributes</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlState.html#t%3AXmlStateFilter" >XmlStateFilter</A > state</TD ></TR@@ -131,7 +145,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AwriteDocument" >writeDocument</A-> ::  Attributes -&gt; <A HREF="Text-XML-HXT-DOM-XmlState.html#t%3AXmlStateFilter"+> ::  <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AAttributes"+>Attributes</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlState.html#t%3AXmlStateFilter" >XmlStateFilter</A > state</TD ></TR@@ -159,11 +175,17 @@ ></A ><B >getXmlDocument</B-> :: Attributes -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AAttributes"+>Attributes</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A > -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/System-IO.html#t%3AIO" >IO</A-> (XmlTree, XmlTrees, <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt"+> (<A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+>, <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+>, <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt" >Int</A >)</TD ><TD CLASS="declbut"@@ -201,13 +223,21 @@ </LI ><LI > the error level: one of <TT->c_ok</TT+><A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#v%3Ac_ok"+>c_ok</A+></TT >, <TT->c_warn</TT+><A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#v%3Ac_warn"+>c_warn</A+></TT >, <TT->c_err</TT+><A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#v%3Ac_err"+>c_err</A+></TT >, <TT->c_fatal</TT+><A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#v%3Ac_fatal"+>c_fatal</A+></TT > </LI ></UL@@ -259,11 +289,17 @@ ></A ><B >putXmlDocument</B-> :: Attributes -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AAttributes"+>Attributes</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTree -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/System-IO.html#t%3AIO"+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/System-IO.html#t%3AIO" >IO</A-> (XmlTrees, <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt"+> (<A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+>, <A HREF="/usr/local/share/doc/ghc/libraries/ghc-prim/GHC-Types.html#t%3AInt" >Int</A >)</TD ><TD CLASS="declbut"@@ -343,7 +379,9 @@ ></A ><B >parseDocument</B-> ::  Attributes -&gt; <A HREF="Text-XML-HXT-DOM-XmlState.html#t%3AXmlStateFilter"+> ::  <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AAttributes"+>Attributes</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlState.html#t%3AXmlStateFilter" >XmlStateFilter</A > state</TD ><TD CLASS="declbut"@@ -522,7 +560,9 @@ ></A ><B >writeDocument</B-> ::  Attributes -&gt; <A HREF="Text-XML-HXT-DOM-XmlState.html#t%3AXmlStateFilter"+> ::  <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AAttributes"+>Attributes</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlState.html#t%3AXmlStateFilter" >XmlStateFilter</A > state</TD ><TD CLASS="declbut"
doc/hxt-filter/Text-XML-HXT-Parser-ProtocolHandler.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-Parser-ProtocolHandler.html" >Source code</A
doc/hxt-filter/Text-XML-HXT-Parser-ProtocolHandlerFile.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-Parser-ProtocolHandlerFile.html" >Source code</A
doc/hxt-filter/Text-XML-HXT-Parser-ProtocolHandlerHttpCurl.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-Parser-ProtocolHandlerHttpCurl.html" >Source code</A
doc/hxt-filter/Text-XML-HXT-Parser-ProtocolHandlerHttpNative.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-Parser-ProtocolHandlerHttpNative.html" >Source code</A
doc/hxt-filter/Text-XML-HXT-Parser-ProtocolHandlerHttpNativeOrCurl.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-Parser-ProtocolHandlerHttpNativeOrCurl.html" >Source code</A
doc/hxt-filter/Text-XML-HXT-Parser-XmlInput.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-Parser-XmlInput.html" >Source code</A@@ -107,7 +107,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AgetContentLength" >getContentLength</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -344,7 +346,9 @@ ></A ><B >getContentLength</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-Parser-XmlInput.html#getContentLength" >Source</A
doc/hxt-filter/Text-XML-HXT-Parser-XmlOutput.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-Parser-XmlOutput.html" >Source code</A
doc/hxt-filter/Text-XML-HXT-Parser-XmlParser.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-Parser-XmlParser.html" >Source code</A@@ -92,7 +92,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AsubstXmlEntities" >substXmlEntities</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ></TABLE ></TD@@ -149,7 +151,9 @@ ></A ><B >substXmlEntities</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-Parser-XmlParser.html#substXmlEntities" >Source</A
doc/hxt-filter/Text-XML-HXT-Parser.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-Parser.html" >Source code</A
doc/hxt-filter/Text-XML-HXT-Validator-AttributeValueValidation.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-Validator-AttributeValueValidation.html" >Source code</A@@ -80,7 +80,13 @@ ><TD CLASS="decl" ><A HREF="#v%3AcheckAttributeValue" >checkAttributeValue</A-> :: XmlTrees -&gt; XmlTree -&gt; XmlFilter</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -92,7 +98,9 @@ >normalizeAttributeValue</A > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Maybe.html#t%3AMaybe" >Maybe</A-> XmlTree -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A > -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A@@ -122,7 +130,13 @@ ></A ><B >checkAttributeValue</B-> :: XmlTrees -&gt; XmlTree -&gt; XmlFilter</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-Validator-AttributeValueValidation.html#checkAttributeValue" >Source</A@@ -168,7 +182,9 @@ >normalizeAttributeValue</B > :: <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Maybe.html#t%3AMaybe" >Maybe</A-> XmlTree -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString"+> <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A > -&gt; <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A
doc/hxt-filter/Text-XML-HXT-Validator-DTDValidation.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-Validator-DTDValidation.html" >Source code</A@@ -81,7 +81,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AremoveDoublicateDefs" >removeDoublicateDefs</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -91,7 +93,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AvalidateDTD" >validateDTD</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ></TABLE ></TD@@ -117,7 +121,9 @@ ></A ><B >removeDoublicateDefs</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-Validator-DTDValidation.html#removeDoublicateDefs" >Source</A@@ -153,7 +159,9 @@ ></A ><B >validateDTD</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-Validator-DTDValidation.html#validateDTD" >Source</A
doc/hxt-filter/Text-XML-HXT-Validator-DocTransformation.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-Validator-DocTransformation.html" >Source code</A@@ -81,7 +81,13 @@ ><TD CLASS="decl" ><A HREF="#v%3Atransform" >transform</A-> :: XmlTree -&gt; XmlTree -&gt; XmlTrees</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ></TR ></TABLE ></TD@@ -107,7 +113,13 @@ ></A ><B >transform</B-> :: XmlTree -&gt; XmlTree -&gt; XmlTrees</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-Validator-DocTransformation.html#transform" >Source</A
doc/hxt-filter/Text-XML-HXT-Validator-DocValidation.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-Validator-DocValidation.html" >Source code</A@@ -81,7 +81,13 @@ ><TD CLASS="decl" ><A HREF="#v%3AvalidateDoc" >validateDoc</A-> :: XmlTree -&gt; XmlTree -&gt; XmlTrees</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ></TR ></TABLE ></TD@@ -107,7 +113,13 @@ ></A ><B >validateDoc</B-> :: XmlTree -&gt; XmlTree -&gt; XmlTrees</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-Validator-DocValidation.html#validateDoc" >Source</A
doc/hxt-filter/Text-XML-HXT-Validator-IdValidation.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-Validator-IdValidation.html" >Source code</A@@ -82,7 +82,13 @@ ><TD CLASS="decl" ><A HREF="#v%3AvalidateIds" >validateIds</A-> :: XmlTree -&gt; XmlTree -&gt; XmlTrees</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ></TR ></TABLE ></TD@@ -108,7 +114,13 @@ ></A ><B >validateIds</B-> :: XmlTree -&gt; XmlTree -&gt; XmlTrees</TD+> :: <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTree"+>XmlTree</A+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-Validator-IdValidation.html#validateIds" >Source</A
doc/hxt-filter/Text-XML-HXT-Validator-RE.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-Validator-RE.html" >Source code</A
doc/hxt-filter/Text-XML-HXT-Validator-Validation.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-Validator-Validation.html" >Source code</A
doc/hxt-filter/Text-XML-HXT-Validator-ValidationFilter.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-Validator-ValidationFilter.html" >Source code</A@@ -81,7 +81,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AgetDTDSubset" >getDTDSubset</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -91,7 +93,9 @@ ><TD CLASS="decl" ><A HREF="#v%3Avalidate" >validate</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -101,7 +105,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AvalidateDTD" >validateDTD</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -111,7 +117,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AvalidateDoc" >validateDoc</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -121,7 +129,9 @@ ><TD CLASS="decl" ><A HREF="#v%3AremoveDoublicateDefs" >removeDoublicateDefs</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ><TR ><TD CLASS="s8"@@ -131,7 +141,9 @@ ><TD CLASS="decl" ><A HREF="#v%3Atransform" >transform</A-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ></TR ></TABLE ></TD@@ -157,7 +169,9 @@ ></A ><B >getDTDSubset</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-Validator-ValidationFilter.html#getDTDSubset" >Source</A@@ -179,7 +193,9 @@ ></A ><B >validate</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-Validator-ValidationFilter.html#validate" >Source</A@@ -214,7 +230,9 @@ ></A ><B >validateDTD</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-Validator-ValidationFilter.html#validateDTD" >Source</A@@ -249,7 +267,9 @@ ></A ><B >validateDoc</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-Validator-ValidationFilter.html#validateDoc" >Source</A@@ -284,7 +304,9 @@ ></A ><B >removeDoublicateDefs</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-Validator-ValidationFilter.html#removeDoublicateDefs" >Source</A@@ -320,7 +342,9 @@ ></A ><B >transform</B-> :: XmlFilter</TD+> :: <A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>XmlFilter</A+></TD ><TD CLASS="declbut" ><A HREF="src/Text-XML-HXT-Validator-ValidationFilter.html#transform" >Source</A
doc/hxt-filter/Text-XML-HXT-Validator-XmlRE.html view
@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="src/Text-XML-HXT-Validator-XmlRE.html" >Source code</A@@ -120,7 +120,9 @@ >RE</A > <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTrees -&gt; <A HREF="Text-XML-HXT-Validator-XmlRE.html#t%3ARE"+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="Text-XML-HXT-Validator-XmlRE.html#t%3ARE" >RE</A > <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A@@ -413,7 +415,9 @@ >RE</A > <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A-> -&gt; XmlTrees -&gt; <A HREF="Text-XML-HXT-Validator-XmlRE.html#t%3ARE"+> -&gt; <A HREF="/usr/local/share/doc/hxt-8.3.0/html/Text-XML-HXT-DOM-TypeDefs.html#t%3AXmlTrees"+>XmlTrees</A+> -&gt; <A HREF="Text-XML-HXT-Validator-XmlRE.html#t%3ARE" >RE</A > <A HREF="/usr/local/share/doc/ghc/libraries/base/Data-Char.html#t%3AString" >String</A
doc/hxt-filter/doc-index.html view
@@ -4,7 +4,7 @@ ><HEAD ><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8" ><TITLE->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant). (Index)</TITLE+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant). (Index)</TITLE ><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css" ><SCRIPT SRC="haddock-util.js" TYPE="text/javascript" ></SCRIPT@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="index.html" >Contents</A@@ -49,25 +49,33 @@ ><TD CLASS="indexentry" >$$</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3A%24%24"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >$$&lt;</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3A%24%24%3C"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >+++</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3A%2B%2B%2B"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >+++&gt;&gt;</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3A%2B%2B%2B%3E%3E"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -89,37 +97,49 @@ ><TD CLASS="indexentry" >..&gt;</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3A..%3E"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >.&gt;</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3A.%3E"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >.&gt;&gt;</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3A.%3E%3E"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >/&gt;</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3A%2F%3E"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >:-&gt;</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3A%3A-%3E"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >&lt;/</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3A%3C%2F"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -165,13 +185,13 @@ ><TD CLASS="indexentry" >addEntries</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >addEntry</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -213,7 +233,9 @@ ><TD CLASS="indexentry" >aName</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#v%3AaName"+>Text.XML.HXT.DOM.XmlTreeTypes</A+>, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -225,7 +247,7 @@ ><TD CLASS="indexentry" >AssocList</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -239,7 +261,7 @@ ><TD CLASS="indexentry" >ATTLIST</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -253,7 +275,7 @@ ><TD CLASS="indexentry" >Attributes</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -267,13 +289,15 @@ ><TD CLASS="indexentry" >AttrName</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AAttrName"+>Text.XML.HXT.DOM.XmlTreeTypes</A+>, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >attrNodes</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -505,6 +529,12 @@ ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"+>a_no_empty_elements</TD+><TD CLASS="indexlinks"+>Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+></TR+><TR CLASS="indexrow"+><TD CLASS="indexentry" >a_no_xml_pi</TD ><TD CLASS="indexlinks" >Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD@@ -631,6 +661,12 @@ ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"+>a_strict_input</TD+><TD CLASS="indexlinks"+>Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+></TR+><TR CLASS="indexrow"+><TD CLASS="indexentry" >a_tagsoup</TD ><TD CLASS="indexlinks" >Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD@@ -717,7 +753,7 @@ ><TD CLASS="indexentry" >buildUniversalName</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -747,25 +783,31 @@ ><TD CLASS="indexentry" >cardNTree</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#v%3AcardNTree"+>Text.XML.HXT.DOM.XmlTreeTypes</A+>, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >cardTree</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Data.Tree.NTree.Filter, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >cat</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3Acat"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >catM</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AcatM"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -801,13 +843,13 @@ ><TD CLASS="indexentry" >changeChildren</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Data.Tree.NTree.Filter, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >changeNode</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Data.Tree.NTree.Filter, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" COLSPAN="2"@@ -915,25 +957,29 @@ ><TD CLASS="indexentry" >ChildNodes</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >childNodes</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >choice</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3Achoice"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >choiceM</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AchoiceM"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -995,25 +1041,29 @@ ><TD CLASS="indexentry" >CONDSECT</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >containing</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3Acontaining"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >containingM</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AcontainingM"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >CONTENT</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -1031,37 +1081,41 @@ ><TD CLASS="indexentry" >c_err</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >c_fatal</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >c_ok</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >c_warn</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >deep</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3Adeep"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >deepest</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3Adeepest"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -1075,31 +1129,33 @@ ><TD CLASS="indexentry" >delEntries</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >delEntry</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >depthNTree</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#v%3AdepthNTree"+>Text.XML.HXT.DOM.XmlTreeTypes</A+>, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >depthTree</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Data.Tree.NTree.Filter, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >DOCTYPE</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -1137,13 +1193,13 @@ ><TD CLASS="indexentry" >DTDElem</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >ELEMENT</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -1181,7 +1237,7 @@ ><TD CLASS="indexentry" >ENTITY</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -1227,27 +1283,21 @@ ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"->equalQName</TD-><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD-></TR-><TR CLASS="indexrow"-><TD CLASS="indexentry" >equalQNameBy</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >equivQName</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >equivUri</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -1341,31 +1391,35 @@ ><TD CLASS="indexentry" >foldNTree</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#v%3AfoldNTree"+>Text.XML.HXT.DOM.XmlTreeTypes</A+>, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >foldTree</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Data.Tree.NTree.Filter, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >formatNTree</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#v%3AformatNTree"+>Text.XML.HXT.DOM.XmlTreeTypes</A+>, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >formatNTreeF</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Data.Tree.NTree.Filter, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >formatTree</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Data.Tree.NTree.Filter, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -1429,7 +1483,7 @@ ><TD CLASS="indexentry" >getChildren</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Data.Tree.NTree.Filter, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -1515,7 +1569,7 @@ ><TD CLASS="indexentry" >getNode</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Data.Tree.NTree.Filter, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -1691,13 +1745,17 @@ ><TD CLASS="indexentry" >guards</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3Aguards"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >guardsM</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AguardsM"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -1719,7 +1777,7 @@ ><TD CLASS="indexentry" >hasEntry</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -1811,19 +1869,25 @@ ><TD CLASS="indexentry" >iff</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3Aiff"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >ifM</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AifM"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >IfThen</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#t%3AIfThen"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -1851,13 +1915,17 @@ ><TD CLASS="indexentry" >insertChildrenAfter</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AinsertChildrenAfter"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >insertChildrenAt</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AinsertChildrenAt"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -1939,7 +2007,7 @@ ><TD CLASS="indexentry" >isDeclaredNamespace</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.NamespaceFilter, Text.XML.HXT.DOM.Namespace, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -2087,7 +2155,7 @@ ><TD CLASS="indexentry" >isInner</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Data.Tree.NTree.Filter, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -2107,7 +2175,7 @@ ><TD CLASS="indexentry" >isLeaf</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Data.Tree.NTree.Filter, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -2127,9 +2195,15 @@ ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"+>isNameSpaceName</TD+><TD CLASS="indexlinks"+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+></TR+><TR CLASS="indexrow"+><TD CLASS="indexentry" >isNCName</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.NamespaceFilter, Text.XML.HXT.DOM.Namespace, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -2165,6 +2239,12 @@ ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"+>isNullXName</TD+><TD CLASS="indexlinks"+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+></TR+><TR CLASS="indexrow"+><TD CLASS="indexentry" >iso8859_1</TD ><TD CLASS="indexlinks" >Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD@@ -2257,7 +2337,9 @@ ><TD CLASS="indexentry" >isOf</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AisOf"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -2279,7 +2361,9 @@ ><TD CLASS="indexentry" >isOfNode</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AisOfNode"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -2487,21 +2571,27 @@ ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"+>isWellformedNameSpaceName</TD+><TD CLASS="indexlinks"+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+></TR+><TR CLASS="indexrow"+><TD CLASS="indexentry" >isWellformedNSDecl</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.NamespaceFilter, Text.XML.HXT.DOM.Namespace, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >isWellformedQName</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.NamespaceFilter, Text.XML.HXT.DOM.Namespace, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >isWellformedQualifiedName</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.NamespaceFilter, Text.XML.HXT.DOM.Namespace, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -2841,16 +2931,24 @@ ><TD CLASS="indexentry" >liftMf</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AliftMf"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >localPart</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"+>localPart'</TD+><TD CLASS="indexlinks"+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+></TR+><TR CLASS="indexrow"+><TD CLASS="indexentry" >localPartOf</TD ><TD CLASS="indexlinks" ><A HREF="Text-XML-HXT-DOM-XmlTreeFunctions.html#v%3AlocalPartOf"@@ -2861,13 +2959,13 @@ ><TD CLASS="indexentry" >lookup1</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >lookupDef</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -2885,7 +2983,9 @@ ><TD CLASS="indexentry" >mapNTree</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#v%3AmapNTree"+>Text.XML.HXT.DOM.XmlTreeTypes</A+>, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -2931,7 +3031,7 @@ ><TD CLASS="indexentry" >mkLeaf</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Data.Tree.NTree.Filter, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -2943,31 +3043,35 @@ ><TD CLASS="indexentry" >mkName</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >mkNode</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#v%3AmkNode"+>Text.XML.HXT.DOM.XmlTreeTypes</A+>, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >mkNsName</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >mkNTree</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AmkNTree"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >mkPrefixLocalPart</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -2989,10 +3093,16 @@ ><TD CLASS="indexentry" >mkQName</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"+>mkQName'</TD+><TD CLASS="indexlinks"+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+></TR+><TR CLASS="indexrow"+><TD CLASS="indexentry" >mkQTag</TD ><TD CLASS="indexlinks" ><A HREF="Text-XML-HXT-DOM-XmlTreeFilter.html#v%3AmkQTag"@@ -3019,13 +3129,13 @@ ><TD CLASS="indexentry" >mkSNsName</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >mkTree</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Data.Tree.NTree.Filter, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -3247,19 +3357,25 @@ ><TD CLASS="indexentry" >modifyChildren</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AmodifyChildren"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >modifyNode</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AmodifyNode"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >modifyNode0</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AmodifyNode0"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -3281,13 +3397,15 @@ ><TD CLASS="indexentry" >multi</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3Amulti"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >NAME</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -3307,10 +3425,16 @@ ><TD CLASS="indexentry" >namePrefix</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"+>namePrefix'</TD+><TD CLASS="indexlinks"+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+></TR+><TR CLASS="indexrow"+><TD CLASS="indexentry" >names</TD ><TD CLASS="indexlinks" >Text.XML.HXT.Parser.XmlParser, Text.XML.HXT.Parser</TD@@ -3335,10 +3459,16 @@ ><TD CLASS="indexentry" >namespaceUri</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"+>namespaceUri'</TD+><TD CLASS="indexlinks"+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+></TR+><TR CLASS="indexrow"+><TD CLASS="indexentry" >nameT</TD ><TD CLASS="indexlinks" >Text.XML.HXT.Parser.XmlParser, Text.XML.HXT.Parser</TD@@ -3353,7 +3483,9 @@ ><TD CLASS="indexentry" >neg</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3Aneg"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -3381,6 +3513,12 @@ ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"+>newXName</TD+><TD CLASS="indexlinks"+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+></TR+><TR CLASS="indexrow"+><TD CLASS="indexentry" >nmtoken</TD ><TD CLASS="indexlinks" >Text.XML.HXT.Parser.XmlParser, Text.XML.HXT.Parser</TD@@ -3401,19 +3539,23 @@ ><TD CLASS="indexentry" >nodesTree</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Data.Tree.NTree.Filter, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >none</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3Anone"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >noneM</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AnoneM"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -3427,25 +3569,27 @@ ><TD CLASS="indexentry" >normalizeNsUri</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >NOTATION</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >notContaining</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AnotContaining"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >NsEnv</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" COLSPAN="2"@@ -3453,27 +3597,29 @@ ></TR ><TR CLASS="indexrow" ><TD CLASS="indexannot"->1 (Type/Class)</TD+>1 (Data Constructor)</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Data.Tree.NTree.Filter, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexannot"->2 (Data Constructor)</TD+>2 (Type/Class)</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Data.Tree.NTree.Filter, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >NTrees</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Data.Tree.NTree.Filter, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >nTreeToList</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#v%3AnTreeToList"+>Text.XML.HXT.DOM.XmlTreeTypes</A+>, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -3485,9 +3631,9 @@ ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"->nullQName</TD+>nullXName</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -3509,7 +3655,9 @@ ><TD CLASS="indexentry" >o</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3Ao"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -3529,7 +3677,9 @@ ><TD CLASS="indexentry" >orElse</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AorElse"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -3655,13 +3805,13 @@ ><TD CLASS="indexentry" >PENTITY</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >PEREF</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -3679,7 +3829,9 @@ ><TD CLASS="indexentry" >performAction</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AperformAction"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -3741,31 +3893,41 @@ ><TD CLASS="indexentry" >processBottomUp</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AprocessBottomUp"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >processBottomUpIfNot</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AprocessBottomUpIfNot"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >processBottomUpM</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AprocessBottomUpM"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >processChildren</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AprocessChildren"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >processChildrenM</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AprocessChildrenM"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -3787,19 +3949,25 @@ ><TD CLASS="indexentry" >processTopDown</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AprocessTopDown"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >processTopDownM</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AprocessTopDownM"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >processTopDownUntil</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AprocessTopDownUntil"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -3897,7 +4065,7 @@ ><TD CLASS="indexentry" >QName</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -3917,7 +4085,7 @@ ><TD CLASS="indexentry" >qualifiedName</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -4043,13 +4211,17 @@ ><TD CLASS="indexentry" >replaceChildren</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AreplaceChildren"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >replaceNode</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AreplaceNode"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -4299,7 +4471,9 @@ ><TD CLASS="indexentry" >satisfies</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3Asatisfies"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -4337,13 +4511,17 @@ ><TD CLASS="indexentry" >seqF</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AseqF"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >seqM</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AseqM"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -4357,7 +4535,7 @@ ><TD CLASS="indexentry" >setChildren</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Data.Tree.NTree.Filter, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -4377,15 +4555,33 @@ ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"+>setLocalPart'</TD+><TD CLASS="indexlinks"+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+></TR+><TR CLASS="indexrow"+><TD CLASS="indexentry"+>setNamePrefix'</TD+><TD CLASS="indexlinks"+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+></TR+><TR CLASS="indexrow"+><TD CLASS="indexentry" >setNamespace</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.NamespaceFilter, Text.XML.HXT.DOM.Namespace, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"+>setNamespaceUri'</TD+><TD CLASS="indexlinks"+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+></TR+><TR CLASS="indexrow"+><TD CLASS="indexentry" >setNode</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Data.Tree.NTree.Filter, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" COLSPAN="2"@@ -4613,7 +4809,9 @@ ><TD CLASS="indexentry" >substChildren</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AsubstChildren"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -4701,7 +4899,9 @@ ><TD CLASS="indexentry" >TagName</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3ATagName"+>Text.XML.HXT.DOM.XmlTreeTypes</A+>, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -4721,31 +4921,39 @@ ><TD CLASS="indexentry" >TFilter</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#t%3ATFilter"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >this</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3Athis"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >thisM</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AthisM"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >thisNode</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >tName</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#v%3AtName"+>Text.XML.HXT.DOM.XmlTreeTypes</A+>, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -4757,6 +4965,12 @@ ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"+>toNsEnv</TD+><TD CLASS="indexlinks"+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+></TR+><TR CLASS="indexrow"+><TD CLASS="indexentry" >toTreel</TD ><TD CLASS="indexlinks" ><A HREF="Text-XML-HXT-DOM-XmlTreeFunctions.html#v%3AtoTreel"@@ -4961,7 +5175,7 @@ ><TD CLASS="indexentry" >Tree</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Data.Tree.NTree.Filter, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -4975,7 +5189,9 @@ ><TD CLASS="indexentry" >TSFilter</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#t%3ATSFilter"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -5013,7 +5229,7 @@ ><TD CLASS="indexentry" >universalName</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -5027,7 +5243,7 @@ ><TD CLASS="indexentry" >universalUri</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -5283,25 +5499,33 @@ ><TD CLASS="indexentry" >when</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3Awhen"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >whenM</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AwhenM"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >whenNot</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AwhenNot"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >whenNotM</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Data-Tree-NTree-Filter.html#v%3AwhenNotM"+>Data.Tree.NTree.Filter</A+>, Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -5315,7 +5539,7 @@ ><TD CLASS="indexentry" >XAttr</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -5329,19 +5553,19 @@ ><TD CLASS="indexentry" >XCdata</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >XCharRef</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >XCmt</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -5355,13 +5579,13 @@ ><TD CLASS="indexentry" >XDTD</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >XEntityRef</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -5375,7 +5599,7 @@ ><TD CLASS="indexentry" >XError</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -5401,7 +5625,9 @@ ><TD CLASS="indexentry" >XmlFilter</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlFilter"+>Text.XML.HXT.DOM.XmlTreeTypes</A+>, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -5411,9 +5637,15 @@ ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"+>xmlNamespaceXName</TD+><TD CLASS="indexlinks"+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+></TR+><TR CLASS="indexrow"+><TD CLASS="indexentry" >XmlNodeSet</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -5423,15 +5655,29 @@ ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"+>xmlnsNamespaceXName</TD+><TD CLASS="indexlinks"+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+></TR+><TR CLASS="indexrow"+><TD CLASS="indexentry" >xmlnsQN</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.NamespaceFilter, Text.XML.HXT.DOM.Namespace, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"+>xmlnsXName</TD+><TD CLASS="indexlinks"+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+></TR+><TR CLASS="indexrow"+><TD CLASS="indexentry" >XmlSFilter</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+><A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html#t%3AXmlSFilter"+>Text.XML.HXT.DOM.XmlTreeTypes</A+>, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" COLSPAN="2"@@ -5465,13 +5711,13 @@ ><TD CLASS="indexentry" >XmlTree</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >XmlTrees</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -5491,21 +5737,33 @@ ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"+>xmlXName</TD+><TD CLASS="indexlinks"+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+></TR+><TR CLASS="indexrow"+><TD CLASS="indexentry"+>XName</TD+><TD CLASS="indexlinks"+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+></TR+><TR CLASS="indexrow"+><TD CLASS="indexentry" >XNode</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >XNS</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry" >XPi</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -5531,7 +5789,7 @@ ><TD CLASS="indexentry" >XTag</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"@@ -5545,7 +5803,7 @@ ><TD CLASS="indexentry" >XText</TD ><TD CLASS="indexlinks"->Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD+>Text.XML.HXT.DOM.XmlTreeTypes, Text.XML.HXT.DOM.XmlTree, Text.XML.HXT.DOM, Text.XML.HXT.Parser</TD ></TR ><TR CLASS="indexrow" ><TD CLASS="indexentry"
doc/hxt-filter/hxt-filter.haddock view

binary file changed (278203 → 328870 bytes)

doc/hxt-filter/index.html view
@@ -4,7 +4,7 @@ ><HEAD ><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=UTF-8" ><TITLE->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TITLE+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TITLE ><LINK HREF="haddock.css" REL="stylesheet" TYPE="text/css" ><SCRIPT SRC="haddock-util.js" TYPE="text/javascript" ></SCRIPT@@ -19,7 +19,7 @@ ><IMG SRC="haskell_icon.gif" WIDTH="16" HEIGHT="16" ALT=" " ></TD ><TD CLASS="title"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ><TD CLASS="topbut" ><A HREF="index.html" >Contents</A@@ -34,7 +34,7 @@ ></TR ><TR ><TD CLASS="section1"->hxt-filter-8.2.0: A collection of tools for processing XML with Haskell (Filter variant).</TD+>hxt-filter-8.3.0: A collection of tools for processing XML with Haskell (Filter variant).</TD ></TR ><TR ><TD CLASS="doc"@@ -91,7 +91,7 @@ ><TR ><TD STYLE="width: 50em" ><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'n:2')" ALT="show/hide"->System</TD+>Data</TD ><TD ></TD ><TD@@ -101,6 +101,61 @@ ><TD STYLE="padding: 0; padding-left: 2em" COLSPAN="3" ><TABLE CLASS="vanilla2" CELLSPACING="0" CELLPADDING="0" ID="n:2" STYLE="display:block;" ><TR+><TD STYLE="width: 48em"+><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'n:3')" ALT="show/hide"+>Tree</TD+><TD+></TD+><TD+></TD+></TR+><TR+><TD STYLE="padding: 0; padding-left: 2em" COLSPAN="3"+><TABLE CLASS="vanilla2" CELLSPACING="0" CELLPADDING="0" ID="n:3" STYLE="display:block;"+><TR+><TD STYLE="width: 46em"+><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'n:4')" ALT="show/hide"+>NTree</TD+><TD+></TD+><TD+></TD+></TR+><TR+><TD STYLE="padding: 0; padding-left: 2em" COLSPAN="3"+><TABLE CLASS="vanilla2" CELLSPACING="0" CELLPADDING="0" ID="n:4" STYLE="display:block;"+><TR+><TD STYLE="padding-left: 1.25em;width: 44em"+><A HREF="Data-Tree-NTree-Filter.html"+>Data.Tree.NTree.Filter</A+></TD+><TD+></TD+><TD+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></TD+></TR+></TABLE+></TD+></TR+><TR+><TD STYLE="width: 50em"+><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'n:5')" ALT="show/hide"+>System</TD+><TD+></TD+><TD+></TD+></TR+><TR+><TD STYLE="padding: 0; padding-left: 2em" COLSPAN="3"+><TABLE CLASS="vanilla2" CELLSPACING="0" CELLPADDING="0" ID="n:5" STYLE="display:block;"+><TR ><TD STYLE="padding-left: 1.25em;width: 48em" ><A HREF="System-PipeOpen.html" >System.PipeOpen</A@@ -115,7 +170,7 @@ ></TR ><TR ><TD STYLE="width: 50em"-><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'n:3')" ALT="show/hide"+><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'n:6')" ALT="show/hide" >Text</TD ><TD ></TD@@ -124,10 +179,10 @@ ></TR ><TR ><TD STYLE="padding: 0; padding-left: 2em" COLSPAN="3"-><TABLE CLASS="vanilla2" CELLSPACING="0" CELLPADDING="0" ID="n:3" STYLE="display:block;"+><TABLE CLASS="vanilla2" CELLSPACING="0" CELLPADDING="0" ID="n:6" STYLE="display:block;" ><TR ><TD STYLE="width: 48em"-><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'n:4')" ALT="show/hide"+><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'n:7')" ALT="show/hide" >XML</TD ><TD ></TD@@ -136,10 +191,10 @@ ></TR ><TR ><TD STYLE="padding: 0; padding-left: 2em" COLSPAN="3"-><TABLE CLASS="vanilla2" CELLSPACING="0" CELLPADDING="0" ID="n:4" STYLE="display:block;"+><TABLE CLASS="vanilla2" CELLSPACING="0" CELLPADDING="0" ID="n:7" STYLE="display:block;" ><TR ><TD STYLE="width: 46em"-><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'n:5')" ALT="show/hide"+><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'n:8')" ALT="show/hide" >HXT</TD ><TD ></TD@@ -148,10 +203,10 @@ ></TR ><TR ><TD STYLE="padding: 0; padding-left: 2em" COLSPAN="3"-><TABLE CLASS="vanilla2" CELLSPACING="0" CELLPADDING="0" ID="n:5" STYLE="display:block;"+><TABLE CLASS="vanilla2" CELLSPACING="0" CELLPADDING="0" ID="n:8" STYLE="display:block;" ><TR ><TD STYLE="width: 44em"-><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'n:6')" ALT="show/hide"+><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'n:9')" ALT="show/hide" ><A HREF="Text-XML-HXT-DOM.html" >Text.XML.HXT.DOM</A ></TD@@ -162,7 +217,7 @@ ></TR ><TR ><TD STYLE="padding: 0; padding-left: 2em" COLSPAN="3"-><TABLE CLASS="vanilla2" CELLSPACING="0" CELLPADDING="0" ID="n:6" STYLE="display:block;"+><TABLE CLASS="vanilla2" CELLSPACING="0" CELLPADDING="0" ID="n:9" STYLE="display:block;" ><TR ><TD STYLE="padding-left: 1.25em;width: 42em" ><A HREF="Text-XML-HXT-DOM-EditFilters.html"@@ -233,12 +288,22 @@ ><TD ></TD ></TR+><TR+><TD STYLE="padding-left: 1.25em;width: 42em"+><A HREF="Text-XML-HXT-DOM-XmlTreeTypes.html"+>Text.XML.HXT.DOM.XmlTreeTypes</A+></TD+><TD+></TD+><TD+></TD+></TR ></TABLE ></TD ></TR ><TR ><TD STYLE="width: 44em"-><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'n:7')" ALT="show/hide"+><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'n:10')" ALT="show/hide" ><A HREF="Text-XML-HXT-Parser.html" >Text.XML.HXT.Parser</A ></TD@@ -249,7 +314,7 @@ ></TR ><TR ><TD STYLE="padding: 0; padding-left: 2em" COLSPAN="3"-><TABLE CLASS="vanilla2" CELLSPACING="0" CELLPADDING="0" ID="n:7" STYLE="display:block;"+><TABLE CLASS="vanilla2" CELLSPACING="0" CELLPADDING="0" ID="n:10" STYLE="display:block;" ><TR ><TD STYLE="padding-left: 1.25em;width: 42em" ><A HREF="Text-XML-HXT-Parser-DTDProcessing.html"@@ -375,7 +440,7 @@ ></TR ><TR ><TD STYLE="width: 44em"-><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'n:8')" ALT="show/hide"+><IMG SRC="minus.gif" CLASS="coll" ONCLICK="toggle(this,'n:11')" ALT="show/hide" >Validator</TD ><TD ></TD@@ -384,7 +449,7 @@ ></TR ><TR ><TD STYLE="padding: 0; padding-left: 2em" COLSPAN="3"-><TABLE CLASS="vanilla2" CELLSPACING="0" CELLPADDING="0" ID="n:8" STYLE="display:block;"+><TABLE CLASS="vanilla2" CELLSPACING="0" CELLPADDING="0" ID="n:11" STYLE="display:block;" ><TR ><TD STYLE="padding-left: 1.25em;width: 42em" ><A HREF="Text-XML-HXT-Validator-AttributeValueValidation.html"
+ doc/hxt-filter/src/Data-Tree-NTree-Filter.html view
@@ -0,0 +1,922 @@+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">+<html>+<head>+<!-- Generated by HsColour, http://www.cs.york.ac.uk/fp/darcs/hscolour/ -->+<title>Haskell Code by HsColour</title>+<link type='text/css' rel='stylesheet' href='hscolour.css' />+</head>+<body>+<pre><a name="line-1"></a><span class='comment'>-- ------------------------------------------------------------</span>+<a name="line-2"></a>+<a name="line-3"></a><span class='comment'>{- |+<a name="line-4"></a>   Module     : Data.Tree.NTree.Filter+<a name="line-5"></a>   Copyright  : Copyright (C) 2005 Uwe Schmidt+<a name="line-6"></a>   License    : MIT+<a name="line-7"></a>+<a name="line-8"></a>   Maintainer : Uwe Schmidt (uwe\@fh-wedel.de)+<a name="line-9"></a>   Stability  : stable+<a name="line-10"></a>   Portability: portable+<a name="line-11"></a>+<a name="line-12"></a>   Filter for n-ary tree structure with filter combinators+<a name="line-13"></a>   copied and modified from HaXml (&lt;<a href="http://www.cs.york.ac.uk/fp/HaXml/">http://www.cs.york.ac.uk/fp/HaXml/</a>&gt;)+<a name="line-14"></a>+<a name="line-15"></a>   Similar but more flexible functions for tree processing are defined in the+<a name="line-16"></a>   arrow classes "Control.Arrow.ArrowList", "Control.Arrow.ArrowIf", "Control.Arrow.ArrowTree" and "Control.Arrow.ArrowState".+<a name="line-17"></a>   For new applications, especially for XML processing, it's recommended to use the arrow interface+<a name="line-18"></a>   "Text.XML.HXT.Arrow" instead of this filter approach as part of the api "Text.XML.HXT.Parser"+<a name="line-19"></a>+<a name="line-20"></a>-}</span>+<a name="line-21"></a>+<a name="line-22"></a><span class='comment'>-- ------------------------------------------------------------</span>+<a name="line-23"></a>+<a name="line-24"></a><span class='keyword'>module</span> <span class='conid'>Data</span><span class='varop'>.</span><span class='conid'>Tree</span><span class='varop'>.</span><span class='conid'>NTree</span><span class='varop'>.</span><span class='conid'>Filter</span>+<a name="line-25"></a>    <span class='layout'>(</span> <span class='keyword'>module</span> <span class='conid'>Data</span><span class='varop'>.</span><span class='conid'>Tree</span><span class='varop'>.</span><span class='conid'>NTree</span><span class='varop'>.</span><span class='conid'>TypeDefs</span>+<a name="line-26"></a>    <span class='layout'>,</span> <span class='conid'>TFilter</span>+<a name="line-27"></a>    <span class='layout'>,</span> <span class='conid'>TSFilter</span>+<a name="line-28"></a>    <span class='layout'>,</span> <span class='varid'>satisfies</span>+<a name="line-29"></a>+<a name="line-30"></a>    <span class='comment'>-- * Filter</span>+<a name="line-31"></a>    <span class='layout'>,</span> <span class='varid'>none</span>		<span class='comment'>-- simple filter</span>+<a name="line-32"></a>    <span class='layout'>,</span> <span class='varid'>this</span>+<a name="line-33"></a>+<a name="line-34"></a>    <span class='layout'>,</span> <span class='varid'>isOf</span>+<a name="line-35"></a>    <span class='layout'>,</span> <span class='varid'>isOfNode</span>		<span class='comment'>-- predicate filter</span>+<a name="line-36"></a>+<a name="line-37"></a>    <span class='layout'>,</span> <span class='varid'>mkNTree</span>		<span class='comment'>-- contructor filter</span>+<a name="line-38"></a>+<a name="line-39"></a>    <span class='layout'>,</span> <span class='varid'>replaceNode</span>	<span class='comment'>-- simple editing</span>+<a name="line-40"></a>    <span class='layout'>,</span> <span class='varid'>replaceChildren</span>+<a name="line-41"></a>+<a name="line-42"></a>    <span class='layout'>,</span> <span class='varid'>modifyNode</span>+<a name="line-43"></a>    <span class='layout'>,</span> <span class='varid'>modifyNode0</span>+<a name="line-44"></a>    <span class='layout'>,</span> <span class='varid'>modifyChildren</span>+<a name="line-45"></a>    <span class='layout'>,</span> <span class='varid'>substChildren</span>+<a name="line-46"></a>    <span class='layout'>,</span> <span class='varid'>processChildren</span>	<span class='comment'>-- filter combinators</span>+<a name="line-47"></a>+<a name="line-48"></a>    <span class='layout'>,</span> <span class='varid'>o</span>+<a name="line-49"></a>    <span class='layout'>,</span> <span class='layout'>(</span><span class='varop'>.&gt;</span><span class='layout'>)</span>+<a name="line-50"></a>    <span class='layout'>,</span> <span class='varid'>seqF</span>+<a name="line-51"></a>    <span class='layout'>,</span> <span class='layout'>(</span><span class='varop'>..&gt;</span><span class='layout'>)</span>+<a name="line-52"></a>    <span class='layout'>,</span> <span class='layout'>(</span><span class='varop'>+++</span><span class='layout'>)</span>+<a name="line-53"></a>    <span class='layout'>,</span> <span class='varid'>cat</span>+<a name="line-54"></a>+<a name="line-55"></a>    <span class='layout'>,</span> <span class='varid'>orElse</span>		<span class='comment'>-- choices</span>+<a name="line-56"></a>    <span class='layout'>,</span> <span class='varid'>iff</span>		<span class='comment'>-- if then else filter</span>+<a name="line-57"></a>    <span class='layout'>,</span> <span class='varid'>choice</span>+<a name="line-58"></a>    <span class='layout'>,</span> <span class='conid'>IfThen</span><span class='layout'>(</span><span class='keyglyph'>..</span><span class='layout'>)</span>+<a name="line-59"></a>    <span class='layout'>,</span> <span class='varid'>when</span>+<a name="line-60"></a>    <span class='layout'>,</span> <span class='varid'>whenNot</span>+<a name="line-61"></a>    <span class='layout'>,</span> <span class='varid'>guards</span>+<a name="line-62"></a>    <span class='layout'>,</span> <span class='varid'>neg</span>		<span class='comment'>-- negation</span>+<a name="line-63"></a>    <span class='layout'>,</span> <span class='varid'>containing</span>	<span class='comment'>-- previous: with, but with is keyword in haskell extensions</span>+<a name="line-64"></a>    <span class='layout'>,</span> <span class='varid'>notContaining</span>	<span class='comment'>-- previous: without</span>+<a name="line-65"></a>+<a name="line-66"></a>    <span class='layout'>,</span> <span class='layout'>(</span><span class='varop'>/&gt;</span><span class='layout'>)</span>		<span class='comment'>-- selectors</span>+<a name="line-67"></a>    <span class='layout'>,</span> <span class='layout'>(</span><span class='varop'>&lt;/</span><span class='layout'>)</span>+<a name="line-68"></a>    <span class='layout'>,</span> <span class='varid'>deep</span>		<span class='comment'>-- recursive search</span>+<a name="line-69"></a>    <span class='layout'>,</span> <span class='varid'>deepest</span>+<a name="line-70"></a>    <span class='layout'>,</span> <span class='varid'>multi</span>+<a name="line-71"></a>    <span class='layout'>,</span> <span class='varid'>processBottomUp</span>	<span class='comment'>-- recursive editing</span>+<a name="line-72"></a>    <span class='layout'>,</span> <span class='varid'>processBottomUpIfNot</span>+<a name="line-73"></a>    <span class='layout'>,</span> <span class='varid'>processTopDown</span>+<a name="line-74"></a>    <span class='layout'>,</span> <span class='varid'>processTopDownUntil</span>+<a name="line-75"></a>    <span class='layout'>,</span> <span class='varid'>insertChildrenAt</span>+<a name="line-76"></a>    <span class='layout'>,</span> <span class='varid'>insertChildrenAfter</span>+<a name="line-77"></a>+<a name="line-78"></a>      <span class='comment'>-- * Monadic Filter</span>+<a name="line-79"></a>    <span class='layout'>,</span> <span class='varid'>thisM</span>		<span class='comment'>-- monadic filter</span>+<a name="line-80"></a>    <span class='layout'>,</span> <span class='varid'>noneM</span>+<a name="line-81"></a>    <span class='layout'>,</span> <span class='layout'>(</span><span class='varop'>.&gt;&gt;</span><span class='layout'>)</span>		<span class='comment'>-- monadic composition</span>+<a name="line-82"></a>    <span class='layout'>,</span> <span class='varid'>seqM</span>		<span class='comment'>-- generalisation of .&gt;&gt;</span>+<a name="line-83"></a>    <span class='layout'>,</span> <span class='layout'>(</span><span class='varop'>+++&gt;&gt;</span><span class='layout'>)</span>		<span class='comment'>-- monadic parallel combination, monadic +++</span>+<a name="line-84"></a>    <span class='layout'>,</span> <span class='varid'>catM</span>		<span class='comment'>-- monadic form of cat</span>+<a name="line-85"></a>    <span class='layout'>,</span> <span class='varid'>ifM</span>		<span class='comment'>-- monadic if then else</span>+<a name="line-86"></a>    <span class='layout'>,</span> <span class='varid'>choiceM</span>		<span class='comment'>-- monadic choice</span>+<a name="line-87"></a>    <span class='layout'>,</span> <span class='varid'>whenM</span>		<span class='comment'>-- special monadic ifs</span>+<a name="line-88"></a>    <span class='layout'>,</span> <span class='varid'>whenNotM</span>+<a name="line-89"></a>    <span class='layout'>,</span> <span class='varid'>guardsM</span>+<a name="line-90"></a>    <span class='layout'>,</span> <span class='varid'>containingM</span>+<a name="line-91"></a>    <span class='layout'>,</span> <span class='varid'>processChildrenM</span>	<span class='comment'>-- monadic versions of recursive editing</span>+<a name="line-92"></a>    <span class='layout'>,</span> <span class='varid'>processTopDownM</span>+<a name="line-93"></a>    <span class='layout'>,</span> <span class='varid'>processBottomUpM</span>+<a name="line-94"></a>    <span class='layout'>,</span> <span class='varid'>liftMf</span>		<span class='comment'>-- lift a normal filter to a monadic filter</span>+<a name="line-95"></a>    <span class='layout'>,</span> <span class='layout'>(</span><span class='varop'>$$</span><span class='layout'>)</span>		<span class='comment'>-- apply a filter to a list</span>+<a name="line-96"></a>    <span class='layout'>,</span> <span class='layout'>(</span><span class='varop'>$$&lt;</span><span class='layout'>)</span>		<span class='comment'>-- apply a monad filter to a list</span>+<a name="line-97"></a>    <span class='layout'>,</span> <span class='varid'>performAction</span>	<span class='comment'>-- run a command within a filter</span>+<a name="line-98"></a>    <span class='layout'>)</span>+<a name="line-99"></a>+<a name="line-100"></a><span class='keyword'>where</span>+<a name="line-101"></a>+<a name="line-102"></a>+<a name="line-103"></a><span class='keyword'>import</span> <span class='conid'>Data</span><span class='varop'>.</span><span class='conid'>Tree</span><span class='varop'>.</span><span class='conid'>NTree</span><span class='varop'>.</span><span class='conid'>TypeDefs</span>+<a name="line-104"></a>+<a name="line-105"></a><span class='keyword'>infixl</span> <span class='num'>6</span> <span class='varop'>`containing`</span><span class='layout'>,</span> <span class='varop'>`notContaining`</span><span class='layout'>,</span> <span class='varop'>`containingM`</span>+<a name="line-106"></a><span class='keyword'>infixr</span> <span class='num'>5</span> <span class='varop'>`o`</span><span class='layout'>,</span> <span class='varop'>+++</span><span class='layout'>,</span> <span class='varop'>+++&gt;&gt;</span>+<a name="line-107"></a><span class='keyword'>infixl</span> <span class='num'>5</span> <span class='varop'>/&gt;</span><span class='layout'>,</span> <span class='varop'>&lt;/</span><span class='layout'>,</span> <span class='varop'>`orElse`</span><span class='layout'>,</span> <span class='varop'>.&gt;</span><span class='layout'>,</span> <span class='varop'>..&gt;</span><span class='layout'>,</span> <span class='varop'>.&gt;&gt;</span>+<a name="line-108"></a><span class='keyword'>infixr</span> <span class='num'>4</span> <span class='varop'>`when`</span><span class='layout'>,</span> <span class='varop'>`whenNot`</span><span class='layout'>,</span> <span class='varop'>`guards`</span><span class='layout'>,</span> <span class='varop'>`whenM`</span><span class='layout'>,</span> <span class='varop'>`whenNotM`</span><span class='layout'>,</span> <span class='varop'>`guardsM`</span>+<a name="line-109"></a><span class='keyword'>infixr</span> <span class='num'>3</span> <span class='conop'>:-&gt;</span>+<a name="line-110"></a><span class='keyword'>infixr</span> <span class='num'>0</span> <span class='varop'>$$</span><span class='layout'>,</span> <span class='varop'>$$&lt;</span>+<a name="line-111"></a>+<a name="line-112"></a><span class='comment'>-- |</span>+<a name="line-113"></a><span class='comment'>-- tree filter type: a function mapping a tree onto a list of trees</span>+<a name="line-114"></a><span class='comment'>--</span>+<a name="line-115"></a><span class='comment'>-- filter can be used in various ways, as predicates, selectors, transformers, ...</span>+<a name="line-116"></a>+<a name="line-117"></a><a name="TFilter"></a><span class='keyword'>type</span> <span class='conid'>TFilter</span>  <span class='varid'>node</span>	<span class='keyglyph'>=</span> <span class='conid'>NTree</span>  <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>NTrees</span> <span class='varid'>node</span>+<a name="line-118"></a>+<a name="line-119"></a><span class='comment'>-- |</span>+<a name="line-120"></a><span class='comment'>-- a filter for sequences</span>+<a name="line-121"></a>+<a name="line-122"></a><a name="TSFilter"></a><span class='keyword'>type</span> <span class='conid'>TSFilter</span> <span class='varid'>node</span>	<span class='keyglyph'>=</span> <span class='conid'>NTrees</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>NTrees</span> <span class='varid'>node</span>+<a name="line-123"></a>+<a name="line-124"></a><span class='comment'>-- ------------------------------------------------------------</span>+<a name="line-125"></a>+<a name="line-126"></a><span class='comment'>-- |</span>+<a name="line-127"></a><span class='comment'>-- satisfies converts a result of a predicate filter into a boolean</span>+<a name="line-128"></a><span class='comment'>--</span>+<a name="line-129"></a><span class='comment'>-- is a shortcut for not . null</span>+<a name="line-130"></a><span class='comment'>--</span>+<a name="line-131"></a><span class='comment'>-- typical use in guards or ifs: @if (satisfies f) t then ... else ... @</span>+<a name="line-132"></a><span class='comment'>--</span>+<a name="line-133"></a><span class='comment'>--    * 1.parameter f :  the predicate filter</span>+<a name="line-134"></a><span class='comment'>--</span>+<a name="line-135"></a><span class='comment'>--    - 2.parameter t :  the tree to be tested</span>+<a name="line-136"></a><span class='comment'>--</span>+<a name="line-137"></a><span class='comment'>--    - returns : @b = not (null (f t))@</span>+<a name="line-138"></a>+<a name="line-139"></a><a name="satisfies"></a><span class='definition'>satisfies</span>	<span class='keyglyph'>::</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>Bool</span>+<a name="line-140"></a><span class='definition'>satisfies</span> <span class='varid'>f</span>	<span class='keyglyph'>=</span> <span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>null</span> <span class='varop'>.</span> <span class='varid'>f</span>+<a name="line-141"></a>+<a name="line-142"></a><span class='comment'>-- ------------------------------------------------------------</span>+<a name="line-143"></a><span class='comment'>--</span>+<a name="line-144"></a><span class='comment'>-- simple filter</span>+<a name="line-145"></a>+<a name="line-146"></a><span class='comment'>-- |</span>+<a name="line-147"></a><span class='comment'>-- the null filter, returns the empty list</span>+<a name="line-148"></a>+<a name="line-149"></a><a name="none"></a><span class='definition'>none</span>		<span class='keyglyph'>::</span> <span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span>+<a name="line-150"></a><span class='definition'>none</span> <span class='keyword'>_</span>		<span class='keyglyph'>=</span> <span class='conid'>[]</span>+<a name="line-151"></a>+<a name="line-152"></a><span class='comment'>-- |</span>+<a name="line-153"></a><span class='comment'>-- the unit filter, returns the single element list containing the argument</span>+<a name="line-154"></a>+<a name="line-155"></a><a name="this"></a><span class='definition'>this</span>		<span class='keyglyph'>::</span> <span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>a</span><span class='keyglyph'>]</span>+<a name="line-156"></a><span class='definition'>this</span> <span class='varid'>n</span>		<span class='keyglyph'>=</span> <span class='keyglyph'>[</span><span class='varid'>n</span><span class='keyglyph'>]</span>+<a name="line-157"></a>+<a name="line-158"></a><span class='comment'>-- ------------------------------------------------------------</span>+<a name="line-159"></a><span class='comment'>--</span>+<a name="line-160"></a><span class='comment'>-- selecting filter</span>+<a name="line-161"></a>+<a name="line-162"></a><span class='comment'>-- |</span>+<a name="line-163"></a><span class='comment'>-- conversion from predicate function to filter</span>+<a name="line-164"></a><span class='comment'>--</span>+<a name="line-165"></a><span class='comment'>--    * 1.parameter p :  the predicate for testing the tree</span>+<a name="line-166"></a><span class='comment'>--</span>+<a name="line-167"></a><span class='comment'>--    - returns : 'this' or 'none' depending on the predicate</span>+<a name="line-168"></a>+<a name="line-169"></a><a name="isOf"></a><span class='definition'>isOf</span>		<span class='keyglyph'>::</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>Bool</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>a</span><span class='keyglyph'>]</span><span class='layout'>)</span>+<a name="line-170"></a><span class='definition'>isOf</span> <span class='varid'>p</span> <span class='varid'>t</span>+<a name="line-171"></a>    <span class='keyglyph'>=</span> <span class='keyword'>if</span> <span class='varid'>p</span> <span class='varid'>t</span> <span class='keyword'>then</span> <span class='keyglyph'>[</span><span class='varid'>t</span><span class='keyglyph'>]</span> <span class='keyword'>else</span> <span class='conid'>[]</span>+<a name="line-172"></a>+<a name="line-173"></a><span class='comment'>-- |</span>+<a name="line-174"></a><span class='comment'>-- select filter, selects trees with node values with a specific property</span>+<a name="line-175"></a><span class='comment'>--</span>+<a name="line-176"></a><span class='comment'>--    * 1.parameter p :  the predicate for testing the node value</span>+<a name="line-177"></a><span class='comment'>--</span>+<a name="line-178"></a><span class='comment'>--    - returns : @[]@ or @[t]@ depending on @p t@</span>+<a name="line-179"></a><span class='comment'>--</span>+<a name="line-180"></a><span class='comment'>-- a special case of 'isOf' filter</span>+<a name="line-181"></a>+<a name="line-182"></a><a name="isOfNode"></a><span class='definition'>isOfNode</span>	<span class='keyglyph'>::</span> <span class='layout'>(</span><span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>Bool</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>TFilter</span> <span class='varid'>node</span>+<a name="line-183"></a><span class='definition'>isOfNode</span> <span class='varid'>p</span>	<span class='keyglyph'>=</span> <span class='varid'>isOf</span> <span class='layout'>(</span><span class='varid'>p</span> <span class='varop'>.</span> <span class='varid'>getNode</span><span class='layout'>)</span>+<a name="line-184"></a>+<a name="line-185"></a><span class='comment'>-- ------------------------------------------------------------</span>+<a name="line-186"></a><span class='comment'>--</span>+<a name="line-187"></a><span class='comment'>-- simple editing filters</span>+<a name="line-188"></a>+<a name="line-189"></a><span class='comment'>-- |</span>+<a name="line-190"></a><span class='comment'>-- filter for substituting an arbitray tree by a constant</span>+<a name="line-191"></a><span class='comment'>--</span>+<a name="line-192"></a><span class='comment'>--    * 1.parameter t :  the result tree, the input tree is ignored</span>+<a name="line-193"></a><span class='comment'>--</span>+<a name="line-194"></a><span class='comment'>--    - returns : the filter</span>+<a name="line-195"></a>+<a name="line-196"></a><a name="mkNTree"></a><span class='definition'>mkNTree</span>		<span class='keyglyph'>::</span> <span class='conid'>NTree</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>TFilter</span> <span class='varid'>node</span>+<a name="line-197"></a><span class='definition'>mkNTree</span> <span class='varid'>t</span>	<span class='keyglyph'>=</span> <span class='varid'>const</span> <span class='keyglyph'>[</span><span class='varid'>t</span><span class='keyglyph'>]</span>+<a name="line-198"></a>+<a name="line-199"></a><span class='comment'>-- |</span>+<a name="line-200"></a><span class='comment'>-- filter for replacing the node</span>+<a name="line-201"></a><span class='comment'>--</span>+<a name="line-202"></a><span class='comment'>--    * 1.parameter n :  the new node</span>+<a name="line-203"></a><span class='comment'>--</span>+<a name="line-204"></a><span class='comment'>--    - returns : the editing filter</span>+<a name="line-205"></a>+<a name="line-206"></a><a name="replaceNode"></a><span class='definition'>replaceNode</span>	<span class='keyglyph'>::</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>TFilter</span> <span class='varid'>node</span>+<a name="line-207"></a><span class='definition'>replaceNode</span> <span class='varid'>n</span> <span class='layout'>(</span><span class='conid'>NTree</span> <span class='keyword'>_</span> <span class='varid'>cs</span><span class='layout'>)</span>+<a name="line-208"></a>    <span class='keyglyph'>=</span> <span class='keyglyph'>[</span><span class='conid'>NTree</span> <span class='varid'>n</span> <span class='varid'>cs</span><span class='keyglyph'>]</span>+<a name="line-209"></a>+<a name="line-210"></a><span class='comment'>-- |</span>+<a name="line-211"></a><span class='comment'>-- filter for replacing the children</span>+<a name="line-212"></a><span class='comment'>--</span>+<a name="line-213"></a><span class='comment'>--    * 1.parameter cs :  cs the list of children</span>+<a name="line-214"></a><span class='comment'>--</span>+<a name="line-215"></a><span class='comment'>--    - returns : the filter</span>+<a name="line-216"></a>+<a name="line-217"></a><a name="replaceChildren"></a><span class='definition'>replaceChildren</span>	<span class='keyglyph'>::</span> <span class='conid'>NTrees</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>TFilter</span> <span class='varid'>node</span>+<a name="line-218"></a><span class='definition'>replaceChildren</span> <span class='varid'>cs</span> <span class='layout'>(</span><span class='conid'>NTree</span> <span class='varid'>n</span> <span class='keyword'>_</span><span class='layout'>)</span>+<a name="line-219"></a>    <span class='keyglyph'>=</span> <span class='keyglyph'>[</span><span class='conid'>NTree</span> <span class='varid'>n</span> <span class='varid'>cs</span><span class='keyglyph'>]</span>+<a name="line-220"></a>+<a name="line-221"></a><a name="modifyNode"></a><span class='definition'>modifyNode</span>	<span class='keyglyph'>::</span> <span class='layout'>(</span><span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>Maybe</span> <span class='varid'>node</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>TFilter</span> <span class='varid'>node</span>+<a name="line-222"></a><span class='definition'>modifyNode</span> <span class='varid'>tf</span> <span class='layout'>(</span><span class='conid'>NTree</span> <span class='varid'>n</span> <span class='varid'>cs</span><span class='layout'>)</span>+<a name="line-223"></a>    <span class='keyglyph'>=</span> <span class='varid'>maybe</span> <span class='conid'>[]</span> <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='varid'>n'</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='conid'>NTree</span> <span class='varid'>n'</span> <span class='varid'>cs</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='layout'>(</span><span class='varid'>tf</span> <span class='varid'>n</span><span class='layout'>)</span>+<a name="line-224"></a>+<a name="line-225"></a><span class='comment'>-- |</span>+<a name="line-226"></a><span class='comment'>-- filter for editing the node</span>+<a name="line-227"></a><span class='comment'>--</span>+<a name="line-228"></a><span class='comment'>--    * 1.parameter nf :  the XNode editing funtion</span>+<a name="line-229"></a><span class='comment'>--</span>+<a name="line-230"></a><span class='comment'>--    - returns : the filter</span>+<a name="line-231"></a>+<a name="line-232"></a><a name="modifyNode0"></a><span class='definition'>modifyNode0</span>	<span class='keyglyph'>::</span> <span class='layout'>(</span><span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>node</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>TFilter</span> <span class='varid'>node</span>+<a name="line-233"></a><span class='definition'>modifyNode0</span> <span class='varid'>tf</span>	<span class='keyglyph'>=</span> <span class='varid'>modifyNode</span> <span class='layout'>(</span><span class='conid'>Just</span> <span class='varop'>.</span> <span class='varid'>tf</span><span class='layout'>)</span>+<a name="line-234"></a>+<a name="line-235"></a><span class='comment'>-- |</span>+<a name="line-236"></a><span class='comment'>-- filter for editing the children</span>+<a name="line-237"></a><span class='comment'>--</span>+<a name="line-238"></a><span class='comment'>-- all children are processed with a filter mapping lists to lists,</span>+<a name="line-239"></a><span class='comment'>-- this enables not only elementwise editing by lifting a normal</span>+<a name="line-240"></a><span class='comment'>-- filter to a list filter with @(f $$)@ (see '($$)') but also manipulation</span>+<a name="line-241"></a><span class='comment'>-- of the order of the elements, e.g. "reverse" is an appropriate childen</span>+<a name="line-242"></a><span class='comment'>-- editing function.</span>+<a name="line-243"></a><span class='comment'>--</span>+<a name="line-244"></a><span class='comment'>--    * 1.parameter csf :  the children editing function</span>+<a name="line-245"></a><span class='comment'>--</span>+<a name="line-246"></a><span class='comment'>--    - returns : the filter</span>+<a name="line-247"></a><span class='comment'>--</span>+<a name="line-248"></a><span class='comment'>-- see also : 'processChildren'</span>+<a name="line-249"></a>+<a name="line-250"></a><a name="modifyChildren"></a><span class='definition'>modifyChildren</span>	<span class='keyglyph'>::</span> <span class='conid'>TSFilter</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>TFilter</span> <span class='varid'>node</span>+<a name="line-251"></a><span class='definition'>modifyChildren</span> <span class='varid'>f</span> <span class='comment'>-- (NTree n cs)</span>+<a name="line-252"></a>    <span class='comment'>-- = [NTree n (f cs)]</span>+<a name="line-253"></a>    <span class='keyglyph'>=</span> <span class='varid'>substChildren</span> <span class='layout'>(</span><span class='varid'>f</span> <span class='varop'>.</span> <span class='varid'>getChildren</span><span class='layout'>)</span>+<a name="line-254"></a>+<a name="line-255"></a><span class='comment'>-- |</span>+<a name="line-256"></a><span class='comment'>-- filter for substituting the children of a tree by</span>+<a name="line-257"></a><span class='comment'>-- a new list of childen computed by applying a filter to the input tree.</span>+<a name="line-258"></a><span class='comment'>-- 'modifyChildren' can be expressed by 'substChildren':</span>+<a name="line-259"></a><span class='comment'>-- @modifyChildren f t@ is equal to @substChildren (f . getChildren)@</span>+<a name="line-260"></a>+<a name="line-261"></a><a name="substChildren"></a><span class='definition'>substChildren</span>	<span class='keyglyph'>::</span> <span class='conid'>TFilter</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>TFilter</span> <span class='varid'>node</span>+<a name="line-262"></a><span class='definition'>substChildren</span> <span class='varid'>f</span> <span class='varid'>t</span><span class='keyglyph'>@</span><span class='layout'>(</span><span class='conid'>NTree</span> <span class='varid'>n</span> <span class='sel'>_cs</span><span class='layout'>)</span>+<a name="line-263"></a>    <span class='keyglyph'>=</span> <span class='keyglyph'>[</span><span class='conid'>NTree</span> <span class='varid'>n</span> <span class='layout'>(</span><span class='varid'>f</span> <span class='varid'>t</span><span class='layout'>)</span><span class='keyglyph'>]</span>+<a name="line-264"></a>+<a name="line-265"></a><span class='comment'>-- ------------------------------------------------------------</span>+<a name="line-266"></a><span class='comment'>--</span>+<a name="line-267"></a><span class='comment'>-- combinators (copied from HaXml)</span>+<a name="line-268"></a><span class='comment'>--</span>+<a name="line-269"></a>+<a name="line-270"></a><span class='comment'>-- |</span>+<a name="line-271"></a><span class='comment'>-- sequential composition of filters, usually written in infix notation f2 `o` f1.</span>+<a name="line-272"></a><span class='comment'>--</span>+<a name="line-273"></a><span class='comment'>-- for predicate filter the logical AND</span>+<a name="line-274"></a><span class='comment'>--</span>+<a name="line-275"></a><span class='comment'>--    * 1.parameter f2 :  the 2. filter</span>+<a name="line-276"></a><span class='comment'>--</span>+<a name="line-277"></a><span class='comment'>--    - 2.parameter f1 :  the 1. filter</span>+<a name="line-278"></a><span class='comment'>--</span>+<a name="line-279"></a><span class='comment'>--    - returns : the fiter applying first f1 to n and then f2 to the result (like function composition)</span>+<a name="line-280"></a>+<a name="line-281"></a><a name="o"></a><span class='definition'>o</span>		<span class='keyglyph'>::</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>c</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>a</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>c</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span>+<a name="line-282"></a><a name="o"></a><span class='definition'>f</span> <span class='varop'>`o`</span> <span class='varid'>g</span>		<span class='keyglyph'>=</span> <span class='varid'>concatMap</span> <span class='varid'>f</span> <span class='varop'>.</span> <span class='varid'>g</span>+<a name="line-283"></a>+<a name="line-284"></a><span class='comment'>-- |</span>+<a name="line-285"></a><span class='comment'>-- pronounced \"followed by\", defined as: @f .&gt; g = g \`o\` f@.</span>+<a name="line-286"></a><span class='comment'>--</span>+<a name="line-287"></a><span class='comment'>-- allows filter composition in a more readable way from left to right</span>+<a name="line-288"></a><span class='comment'>--</span>+<a name="line-289"></a><span class='comment'>--    * 1.parameter f1 :  the 1. filter</span>+<a name="line-290"></a><span class='comment'>--</span>+<a name="line-291"></a><span class='comment'>--    - 2.parameter f2 :  the 2. filter</span>+<a name="line-292"></a><span class='comment'>--</span>+<a name="line-293"></a><span class='comment'>--    - returns : the composition of f1 and f2</span>+<a name="line-294"></a><span class='comment'>--</span>+<a name="line-295"></a><span class='comment'>-- see also : 'o', '(..&gt;)'</span>+<a name="line-296"></a>+<a name="line-297"></a><a name=".>"></a><span class='layout'>(</span><span class='varop'>.&gt;</span><span class='layout'>)</span>		<span class='keyglyph'>::</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>b</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>c</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>c</span><span class='keyglyph'>]</span><span class='layout'>)</span>+<a name="line-298"></a><a name="f"></a><span class='definition'>f</span> <span class='varop'>.&gt;</span> <span class='varid'>g</span>		<span class='keyglyph'>=</span> <span class='varid'>g</span> <span class='varop'>`o`</span> <span class='varid'>f</span>+<a name="line-299"></a>+<a name="line-300"></a><span class='comment'>-- |</span>+<a name="line-301"></a><span class='comment'>-- apply a list of filters sequentially with '(.&gt;)', for predicate filters the generalized AND</span>+<a name="line-302"></a><span class='comment'>--</span>+<a name="line-303"></a><span class='comment'>-- see also : '(.&gt;)'</span>+<a name="line-304"></a>+<a name="line-305"></a><a name="seqF"></a><span class='definition'>seqF</span>		<span class='keyglyph'>::</span> <span class='keyglyph'>[</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>a</span><span class='keyglyph'>]</span><span class='keyglyph'>]</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>a</span><span class='keyglyph'>]</span><span class='layout'>)</span>+<a name="line-306"></a><span class='definition'>seqF</span>		<span class='keyglyph'>=</span> <span class='varid'>foldl</span> <span class='layout'>(</span><span class='varop'>.&gt;</span><span class='layout'>)</span> <span class='varid'>this</span>+<a name="line-307"></a>+<a name="line-308"></a><span class='comment'>-- |</span>+<a name="line-309"></a><span class='comment'>-- binary parallel composition, the logical OR for predicate filter</span>+<a name="line-310"></a><span class='comment'>--</span>+<a name="line-311"></a><span class='comment'>--    * 1.parameter f1 :  the 1. filter</span>+<a name="line-312"></a><span class='comment'>--</span>+<a name="line-313"></a><span class='comment'>--    - 2.parameter f2 :  the 2. filter</span>+<a name="line-314"></a><span class='comment'>--</span>+<a name="line-315"></a><span class='comment'>--    - returns : the filter for applying f1 and f2 both to an argument tree and concatenating the results</span>+<a name="line-316"></a>+<a name="line-317"></a><a name="+++"></a><span class='layout'>(</span><span class='varop'>+++</span><span class='layout'>)</span>		<span class='keyglyph'>::</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span>+<a name="line-318"></a><span class='definition'>f</span> <span class='varop'>+++</span> <span class='varid'>g</span>		<span class='keyglyph'>=</span> <span class='keyglyph'>\</span> <span class='varid'>t</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>f</span> <span class='varid'>t</span> <span class='varop'>++</span> <span class='varid'>g</span> <span class='varid'>t</span>+<a name="line-319"></a>+<a name="line-320"></a><span class='comment'>-- |</span>+<a name="line-321"></a><span class='comment'>-- special sequential composition.</span>+<a name="line-322"></a><span class='comment'>--</span>+<a name="line-323"></a><span class='comment'>-- filter f is applied to an argument t.</span>+<a name="line-324"></a><span class='comment'>-- then filter g is applied to all elements of the result list,</span>+<a name="line-325"></a><span class='comment'>-- but the argument t is also passed as extra parameter to g.</span>+<a name="line-326"></a><span class='comment'>--</span>+<a name="line-327"></a><span class='comment'>-- This allows for step by step transformations of a tree</span>+<a name="line-328"></a><span class='comment'>-- with access to the original tree in every</span>+<a name="line-329"></a><span class='comment'>-- transformation step.</span>+<a name="line-330"></a><span class='comment'>--</span>+<a name="line-331"></a><span class='comment'>-- see also : '(.&gt;)', 'o'</span>+<a name="line-332"></a>+<a name="line-333"></a><a name="..>"></a><span class='layout'>(</span><span class='varop'>..&gt;</span><span class='layout'>)</span>		<span class='keyglyph'>::</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>b</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>d</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>d</span><span class='keyglyph'>]</span><span class='layout'>)</span>+<a name="line-334"></a><span class='definition'>f</span> <span class='varop'>..&gt;</span> <span class='varid'>g</span>		<span class='keyglyph'>=</span> <span class='keyglyph'>\</span> <span class='varid'>t</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>g</span> <span class='varid'>t</span> <span class='varop'>`o`</span> <span class='varid'>f</span><span class='layout'>)</span> <span class='varid'>t</span>+<a name="line-335"></a>+<a name="line-336"></a><span class='comment'>-- |</span>+<a name="line-337"></a><span class='comment'>-- apply a list of filters, a \"union\" for lists, for predicate filters the generalized OR</span>+<a name="line-338"></a><span class='comment'>--</span>+<a name="line-339"></a><span class='comment'>--    * 1.parameter fs :  the list of filters</span>+<a name="line-340"></a><span class='comment'>--</span>+<a name="line-341"></a><span class='comment'>--    - returns : the composing filter</span>+<a name="line-342"></a>+<a name="line-343"></a><a name="cat"></a><span class='definition'>cat</span>		<span class='keyglyph'>::</span> <span class='keyglyph'>[</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='keyglyph'>]</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span>+<a name="line-344"></a><span class='definition'>cat</span> <span class='varid'>fs</span>  <span class='varid'>t</span>+<a name="line-345"></a>    <span class='keyglyph'>=</span> <span class='varid'>concat</span> <span class='keyglyph'>[</span> <span class='varid'>f</span> <span class='varid'>t</span> <span class='keyglyph'>|</span> <span class='varid'>f</span> <span class='keyglyph'>&lt;-</span> <span class='varid'>fs</span> <span class='keyglyph'>]</span>+<a name="line-346"></a>+<a name="line-347"></a><span class='comment'>-- |</span>+<a name="line-348"></a><span class='comment'>-- Filter for editing the children of a tree element wise</span>+<a name="line-349"></a><span class='comment'>--</span>+<a name="line-350"></a><span class='comment'>--    * 1.parameter cf :  the filter applied to the children</span>+<a name="line-351"></a><span class='comment'>--</span>+<a name="line-352"></a><span class='comment'>--    - returns : the editing filter</span>+<a name="line-353"></a><span class='comment'>--</span>+<a name="line-354"></a><span class='comment'>-- see also : 'modifyChildren'</span>+<a name="line-355"></a>+<a name="line-356"></a><a name="processChildren"></a><span class='definition'>processChildren</span>	<span class='keyglyph'>::</span> <span class='conid'>TFilter</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>TFilter</span> <span class='varid'>node</span>+<a name="line-357"></a><span class='definition'>processChildren</span> <span class='varid'>ft</span> <span class='layout'>(</span><span class='conid'>NTree</span> <span class='varid'>n</span> <span class='varid'>cs</span><span class='layout'>)</span>+<a name="line-358"></a>    <span class='keyglyph'>=</span> <span class='keyglyph'>[</span><span class='conid'>NTree</span> <span class='varid'>n</span> <span class='layout'>(</span><span class='varid'>ft</span> <span class='varop'>$$</span> <span class='varid'>cs</span><span class='layout'>)</span><span class='keyglyph'>]</span>+<a name="line-359"></a>+<a name="line-360"></a><span class='comment'>-- |</span>+<a name="line-361"></a><span class='comment'>-- infix operator for applying a filter to a list of trees</span>+<a name="line-362"></a><span class='comment'>--</span>+<a name="line-363"></a><span class='comment'>--    * 1.parameter f :  the filter</span>+<a name="line-364"></a><span class='comment'>--</span>+<a name="line-365"></a><span class='comment'>--    - 2.parameter ts :  the list of trees</span>+<a name="line-366"></a><span class='comment'>--</span>+<a name="line-367"></a><span class='comment'>--    - returns : the concatenated list of results</span>+<a name="line-368"></a>+<a name="line-369"></a><a name="$$"></a><span class='layout'>(</span><span class='varop'>$$</span><span class='layout'>)</span>		<span class='keyglyph'>::</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>a</span><span class='keyglyph'>]</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span>+<a name="line-370"></a><span class='definition'>f</span> <span class='varop'>$$</span> <span class='varid'>l</span>+<a name="line-371"></a>    <span class='keyglyph'>=</span> <span class='varid'>concatMap</span> <span class='varid'>f</span> <span class='varid'>l</span>+<a name="line-372"></a>+<a name="line-373"></a><span class='comment'>-- ------------------------------------------------------------</span>+<a name="line-374"></a><span class='comment'>--</span>+<a name="line-375"></a><span class='comment'>-- choices</span>+<a name="line-376"></a><span class='comment'>--</span>+<a name="line-377"></a>+<a name="line-378"></a><span class='comment'>-- |</span>+<a name="line-379"></a><span class='comment'>-- directional choice, usually written in infix notation as f `orElse` g</span>+<a name="line-380"></a><span class='comment'>--</span>+<a name="line-381"></a><span class='comment'>--    * 1.parameter f :  the 1. filter</span>+<a name="line-382"></a><span class='comment'>--</span>+<a name="line-383"></a><span class='comment'>--    - 2.parameter g :  the 2. filter</span>+<a name="line-384"></a><span class='comment'>--</span>+<a name="line-385"></a><span class='comment'>--    - 3.parameter t :  the tree</span>+<a name="line-386"></a><span class='comment'>--</span>+<a name="line-387"></a><span class='comment'>--    - returns : the filter, that applies f to t, if the result is not the empty list, the result is found, else g t is the result</span>+<a name="line-388"></a>+<a name="line-389"></a><a name="orElse"></a><span class='definition'>orElse</span>		<span class='keyglyph'>::</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span>+<a name="line-390"></a><a name="orElse"></a><span class='definition'>f</span> <span class='varop'>`orElse`</span> <span class='varid'>g</span>+<a name="line-391"></a>    <span class='keyglyph'>=</span> <span class='keyglyph'>\</span> <span class='varid'>t</span><span class='keyglyph'>-&gt;</span> <span class='keyword'>let</span>+<a name="line-392"></a>	    <span class='varid'>res</span> <span class='keyglyph'>=</span> <span class='varid'>f</span> <span class='varid'>t</span>+<a name="line-393"></a>	    <span class='keyword'>in</span>+<a name="line-394"></a>	    <span class='keyword'>if</span> <span class='varid'>null</span> <span class='varid'>res</span>+<a name="line-395"></a>	    <span class='keyword'>then</span> <span class='varid'>g</span> <span class='varid'>t</span>+<a name="line-396"></a>	    <span class='keyword'>else</span> <span class='varid'>res</span>+<a name="line-397"></a>+<a name="line-398"></a><span class='comment'>-- |</span>+<a name="line-399"></a><span class='comment'>-- if then else lifted to filters</span>+<a name="line-400"></a><span class='comment'>--</span>+<a name="line-401"></a><span class='comment'>--    * 1.parameter p :  the predicate filter</span>+<a name="line-402"></a><span class='comment'>--</span>+<a name="line-403"></a><span class='comment'>--    - 2.parameter t :  the \"then\" filter</span>+<a name="line-404"></a><span class='comment'>--</span>+<a name="line-405"></a><span class='comment'>--    - 3.parameter e :  the \"else\" filter</span>+<a name="line-406"></a><span class='comment'>--</span>+<a name="line-407"></a><span class='comment'>--    - returns : the resulting conditional filter</span>+<a name="line-408"></a>+<a name="line-409"></a><a name="iff"></a><span class='definition'>iff</span>		<span class='keyglyph'>::</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>c</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span>+<a name="line-410"></a><span class='definition'>iff</span> <span class='varid'>p</span> <span class='varid'>f</span> <span class='varid'>g</span>	<span class='keyglyph'>=</span> <span class='keyglyph'>\</span> <span class='varid'>c</span> <span class='keyglyph'>-&gt;</span> <span class='keyword'>if</span> <span class='layout'>(</span><span class='varid'>satisfies</span> <span class='varid'>p</span><span class='layout'>)</span> <span class='varid'>c</span> <span class='keyword'>then</span> <span class='varid'>f</span> <span class='varid'>c</span> <span class='keyword'>else</span> <span class='varid'>g</span> <span class='varid'>c</span>+<a name="line-411"></a>+<a name="line-412"></a><span class='comment'>-- |</span>+<a name="line-413"></a><span class='comment'>-- when the predicate p holds, f is applied, else the identity filter this</span>+<a name="line-414"></a><span class='comment'>--</span>+<a name="line-415"></a><span class='comment'>--    * 1.parameter f :  the conditinally applied filter</span>+<a name="line-416"></a><span class='comment'>--</span>+<a name="line-417"></a><span class='comment'>--    - 2.parameter p :  the predicate</span>+<a name="line-418"></a><span class='comment'>--</span>+<a name="line-419"></a><span class='comment'>--    - returns : the conditional filter</span>+<a name="line-420"></a><span class='comment'>--</span>+<a name="line-421"></a><span class='comment'>-- see also : 'iff', 'whenNot', 'guards', 'whenM'</span>+<a name="line-422"></a>+<a name="line-423"></a><a name="when"></a><span class='definition'>when</span>		<span class='keyglyph'>::</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>a</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>a</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>a</span><span class='keyglyph'>]</span><span class='layout'>)</span>+<a name="line-424"></a><a name="when"></a><span class='definition'>f</span> <span class='varop'>`when`</span> <span class='varid'>g</span>	<span class='keyglyph'>=</span> <span class='varid'>iff</span> <span class='varid'>g</span> <span class='varid'>f</span> <span class='varid'>this</span>+<a name="line-425"></a>+<a name="line-426"></a><span class='comment'>-- |</span>+<a name="line-427"></a><span class='comment'>-- the complementary filter of when</span>+<a name="line-428"></a><span class='comment'>--</span>+<a name="line-429"></a><span class='comment'>-- shortcut for f `when` neg g</span>+<a name="line-430"></a><span class='comment'>--</span>+<a name="line-431"></a><span class='comment'>-- see also : 'iff', 'when', 'whenNotM', 'neg'</span>+<a name="line-432"></a>+<a name="line-433"></a><a name="whenNot"></a><span class='definition'>whenNot</span>		<span class='keyglyph'>::</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>a</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>a</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>a</span><span class='keyglyph'>]</span><span class='layout'>)</span>+<a name="line-434"></a><a name="whenNot"></a><span class='definition'>f</span> <span class='varop'>`whenNot`</span> <span class='varid'>g</span>	<span class='keyglyph'>=</span> <span class='varid'>iff</span> <span class='varid'>g</span> <span class='varid'>this</span> <span class='varid'>f</span>+<a name="line-435"></a>+<a name="line-436"></a><span class='comment'>-- |</span>+<a name="line-437"></a><span class='comment'>-- when the predicate p holds, f is applied, else the null filter none</span>+<a name="line-438"></a><span class='comment'>--</span>+<a name="line-439"></a><span class='comment'>--    * 1.parameter p :  the predicate filter</span>+<a name="line-440"></a><span class='comment'>--</span>+<a name="line-441"></a><span class='comment'>--    - 2.parameter f :  the conditionally applied filter</span>+<a name="line-442"></a><span class='comment'>--</span>+<a name="line-443"></a><span class='comment'>--    - returns : the conditional filter</span>+<a name="line-444"></a><span class='comment'>--</span>+<a name="line-445"></a><span class='comment'>-- see also : 'iff', 'when', 'guardsM'</span>+<a name="line-446"></a>+<a name="line-447"></a><a name="guards"></a><span class='definition'>guards</span>		<span class='keyglyph'>::</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span>+<a name="line-448"></a><a name="guards"></a><span class='definition'>g</span> <span class='varop'>`guards`</span> <span class='varid'>f</span>	<span class='keyglyph'>=</span> <span class='varid'>iff</span> <span class='varid'>g</span> <span class='varid'>f</span> <span class='varid'>none</span>+<a name="line-449"></a>+<a name="line-450"></a>+<a name="line-451"></a><span class='comment'>-- |</span>+<a name="line-452"></a><span class='comment'>-- negation lifted to filters</span>+<a name="line-453"></a><span class='comment'>--</span>+<a name="line-454"></a><span class='comment'>--    * 1.parameter f :  the predicate filter</span>+<a name="line-455"></a><span class='comment'>--</span>+<a name="line-456"></a><span class='comment'>--    - returns : the filter, that succeeds, when f failed</span>+<a name="line-457"></a>+<a name="line-458"></a><a name="neg"></a><span class='definition'>neg</span>		<span class='keyglyph'>::</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>c</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>a</span><span class='keyglyph'>]</span>+<a name="line-459"></a><span class='definition'>neg</span> <span class='varid'>f</span>		<span class='keyglyph'>=</span> <span class='varid'>iff</span> <span class='varid'>f</span> <span class='varid'>none</span> <span class='varid'>this</span>+<a name="line-460"></a>+<a name="line-461"></a><span class='comment'>-- |</span>+<a name="line-462"></a><span class='comment'>-- auxiliary datatype for cases within choice filter</span>+<a name="line-463"></a>+<a name="line-464"></a><a name="IfThen"></a><span class='keyword'>data</span> <span class='conid'>IfThen</span> <span class='varid'>a</span> <span class='varid'>b</span> <span class='keyglyph'>=</span> <span class='varid'>a</span> <span class='conop'>:-&gt;</span> <span class='varid'>b</span>+<a name="line-465"></a>+<a name="line-466"></a><span class='comment'>-- |</span>+<a name="line-467"></a><span class='comment'>-- multiway branch. The list of cases @f :-&gt; g@ is processed sequentially,</span>+<a name="line-468"></a><span class='comment'>-- in the first case for that f holds g is applied, if no case matches, 'none' is</span>+<a name="line-469"></a><span class='comment'>-- applied.</span>+<a name="line-470"></a><span class='comment'>-- This filter can be used like a case expression: @choice [ p1 :-&gt; f1, p2 :-&gt; f2, ... , this :-&gt; defaultFilter]@</span>+<a name="line-471"></a><span class='comment'>--</span>+<a name="line-472"></a><span class='comment'>-- see also : 'iff', 'choiceM'</span>+<a name="line-473"></a>+<a name="line-474"></a><a name="choice"></a><span class='definition'>choice</span>	<span class='keyglyph'>::</span> <span class='keyglyph'>[</span><span class='conid'>IfThen</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>c</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span><span class='keyglyph'>]</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span>+<a name="line-475"></a><span class='definition'>choice</span> <span class='conid'>[]</span>+<a name="line-476"></a>    <span class='keyglyph'>=</span> <span class='varid'>none</span>+<a name="line-477"></a>+<a name="line-478"></a><span class='definition'>choice</span> <span class='layout'>(</span><span class='layout'>(</span><span class='varid'>g</span> <span class='conop'>:-&gt;</span> <span class='varid'>f</span><span class='layout'>)</span> <span class='conop'>:</span> <span class='varid'>cs</span><span class='layout'>)</span>+<a name="line-479"></a>    <span class='keyglyph'>=</span> <span class='varid'>iff</span> <span class='varid'>g</span> <span class='varid'>f</span> <span class='layout'>(</span><span class='varid'>choice</span> <span class='varid'>cs</span><span class='layout'>)</span>+<a name="line-480"></a>+<a name="line-481"></a><span class='comment'>-- |</span>+<a name="line-482"></a><span class='comment'>-- pruning: keep only those results from f for which g holds, usually written in infix notation as f `containing` g</span>+<a name="line-483"></a><span class='comment'>--</span>+<a name="line-484"></a><span class='comment'>--    * 1.parameter f :  the processing filter</span>+<a name="line-485"></a><span class='comment'>--</span>+<a name="line-486"></a><span class='comment'>--    - 2.parameter g :  the predicate filter</span>+<a name="line-487"></a><span class='comment'>--</span>+<a name="line-488"></a><span class='comment'>--    - 3.parameter t :  the tree</span>+<a name="line-489"></a><span class='comment'>--</span>+<a name="line-490"></a><span class='comment'>--    - returns : all trees r from f t, for which g r holds (is not the empty list)</span>+<a name="line-491"></a><span class='comment'>--</span>+<a name="line-492"></a><span class='comment'>-- see also : 'notContaining'</span>+<a name="line-493"></a>+<a name="line-494"></a><a name="containing"></a><span class='definition'>containing</span>		<span class='keyglyph'>::</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>b</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>c</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span>+<a name="line-495"></a><a name="containing"></a><span class='definition'>f</span> <span class='varop'>`containing`</span> <span class='varid'>g</span>+<a name="line-496"></a>    <span class='keyglyph'>=</span> <span class='varid'>filter</span> <span class='layout'>(</span><span class='varid'>satisfies</span> <span class='varid'>g</span><span class='layout'>)</span> <span class='varop'>.</span> <span class='varid'>f</span>+<a name="line-497"></a>+<a name="line-498"></a><span class='comment'>-- |</span>+<a name="line-499"></a><span class='comment'>-- pruning: keep only those results from f for which g does not hold</span>+<a name="line-500"></a><span class='comment'>--</span>+<a name="line-501"></a><span class='comment'>-- see also : 'containing'</span>+<a name="line-502"></a>+<a name="line-503"></a><a name="notContaining"></a><span class='definition'>notContaining</span>		<span class='keyglyph'>::</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>b</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>c</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span>+<a name="line-504"></a><a name="notContaining"></a><span class='definition'>f</span> <span class='varop'>`notContaining`</span> <span class='varid'>g</span>+<a name="line-505"></a>    <span class='keyglyph'>=</span> <span class='varid'>filter</span> <span class='layout'>(</span><span class='varid'>null</span> <span class='varop'>.</span> <span class='varid'>g</span><span class='layout'>)</span> <span class='varop'>.</span> <span class='varid'>f</span>+<a name="line-506"></a>+<a name="line-507"></a><span class='comment'>-- |</span>+<a name="line-508"></a><span class='comment'>-- pruning: monadic version of containing, usually written in infix notation as f `containingM` g</span>+<a name="line-509"></a><span class='comment'>--</span>+<a name="line-510"></a><span class='comment'>--    * 1.parameter f :  the monadic processing filter</span>+<a name="line-511"></a><span class='comment'>--</span>+<a name="line-512"></a><span class='comment'>--    - 2.parameter g :  the predicate filter</span>+<a name="line-513"></a><span class='comment'>--</span>+<a name="line-514"></a><span class='comment'>--    - 3.parameter t :  the tree</span>+<a name="line-515"></a><span class='comment'>--</span>+<a name="line-516"></a><span class='comment'>--    - returns : all trees r from f t, for which g r holds (is not the empty list)</span>+<a name="line-517"></a><span class='comment'>--</span>+<a name="line-518"></a><span class='comment'>-- see also : 'notContaining'</span>+<a name="line-519"></a>+<a name="line-520"></a><a name="containingM"></a><span class='definition'>containingM</span>		<span class='keyglyph'>::</span> <span class='conid'>Monad</span> <span class='varid'>m</span> <span class='keyglyph'>=&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>b</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>c</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span>+<a name="line-521"></a><a name="containingM"></a><span class='definition'>f</span> <span class='varop'>`containingM`</span> <span class='varid'>g</span>+<a name="line-522"></a>    <span class='keyglyph'>=</span> <span class='keyglyph'>\</span> <span class='varid'>t</span> <span class='keyglyph'>-&gt;</span> <span class='keyword'>do</span>+<a name="line-523"></a>             <span class='varid'>res</span> <span class='keyglyph'>&lt;-</span> <span class='varid'>f</span> <span class='varid'>t</span>+<a name="line-524"></a>             <span class='varid'>return</span> <span class='varop'>$</span> <span class='varid'>filter</span> <span class='layout'>(</span><span class='varid'>satisfies</span> <span class='varid'>g</span><span class='layout'>)</span> <span class='varid'>res</span>+<a name="line-525"></a>+<a name="line-526"></a><span class='comment'>-- |</span>+<a name="line-527"></a><span class='comment'>-- pronounced \"slash\", meaning g inside f</span>+<a name="line-528"></a>+<a name="line-529"></a><a name="/>"></a><span class='layout'>(</span><span class='varop'>/&gt;</span><span class='layout'>)</span>		<span class='keyglyph'>::</span> <span class='conid'>TFilter</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>TFilter</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>TFilter</span> <span class='varid'>node</span>+<a name="line-530"></a><span class='definition'>f</span> <span class='varop'>/&gt;</span> <span class='varid'>g</span>+<a name="line-531"></a>    <span class='keyglyph'>=</span> <span class='varid'>g</span> <span class='varop'>`o`</span> <span class='varid'>getChildren</span> <span class='varop'>`o`</span> <span class='varid'>f</span>+<a name="line-532"></a>+<a name="line-533"></a><span class='comment'>-- |</span>+<a name="line-534"></a><span class='comment'>-- pronounced \"outside\" meaning f containing g</span>+<a name="line-535"></a>+<a name="line-536"></a><a name="</"></a><span class='layout'>(</span><span class='varop'>&lt;/</span><span class='layout'>)</span>		<span class='keyglyph'>::</span> <span class='conid'>TFilter</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>TFilter</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>TFilter</span> <span class='varid'>node</span>+<a name="line-537"></a><span class='definition'>f</span> <span class='varop'>&lt;/</span> <span class='varid'>g</span>+<a name="line-538"></a>    <span class='keyglyph'>=</span> <span class='varid'>f</span> <span class='varop'>`containing`</span> <span class='layout'>(</span><span class='varid'>g</span> <span class='varop'>`o`</span> <span class='varid'>getChildren</span><span class='layout'>)</span>+<a name="line-539"></a>+<a name="line-540"></a><span class='comment'>-- ------------------------------------------------------------</span>+<a name="line-541"></a><span class='comment'>--</span>+<a name="line-542"></a><span class='comment'>-- recursive search filters</span>+<a name="line-543"></a>+<a name="line-544"></a><span class='comment'>-- |</span>+<a name="line-545"></a><span class='comment'>-- top down search.</span>+<a name="line-546"></a><span class='comment'>--</span>+<a name="line-547"></a><span class='comment'>-- search terminates, when filter f succeeds</span>+<a name="line-548"></a><span class='comment'>-- can e.g. be used for finding all outermost tag node of a specific kind</span>+<a name="line-549"></a>+<a name="line-550"></a><a name="deep"></a><span class='definition'>deep</span>		<span class='keyglyph'>::</span> <span class='conid'>TFilter</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>TFilter</span> <span class='varid'>node</span>+<a name="line-551"></a><span class='definition'>deep</span> <span class='varid'>f</span>+<a name="line-552"></a>    <span class='keyglyph'>=</span> <span class='varid'>f</span> <span class='varop'>`orElse`</span> <span class='layout'>(</span><span class='varid'>deep</span> <span class='varid'>f</span> <span class='varop'>`o`</span> <span class='varid'>getChildren</span><span class='layout'>)</span>+<a name="line-553"></a>+<a name="line-554"></a><span class='comment'>-- |</span>+<a name="line-555"></a><span class='comment'>-- bottom up search.</span>+<a name="line-556"></a><span class='comment'>--</span>+<a name="line-557"></a><span class='comment'>-- first the children are processed,</span>+<a name="line-558"></a><span class='comment'>-- if this does not succeed, the node itself is processed</span>+<a name="line-559"></a><span class='comment'>-- can e.g. be used for finding all innermost tag nodes of a specific kind</span>+<a name="line-560"></a>+<a name="line-561"></a><a name="deepest"></a><span class='definition'>deepest</span>		<span class='keyglyph'>::</span> <span class='conid'>TFilter</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>TFilter</span> <span class='varid'>node</span>+<a name="line-562"></a><span class='definition'>deepest</span> <span class='varid'>f</span>+<a name="line-563"></a>    <span class='keyglyph'>=</span> <span class='layout'>(</span><span class='varid'>getChildren</span> <span class='varop'>.&gt;</span> <span class='varid'>deepest</span> <span class='varid'>f</span><span class='layout'>)</span> <span class='varop'>`orElse`</span> <span class='varid'>f</span>+<a name="line-564"></a>+<a name="line-565"></a><span class='comment'>-- |</span>+<a name="line-566"></a><span class='comment'>-- process all nodes of the whole tree.</span>+<a name="line-567"></a><span class='comment'>--</span>+<a name="line-568"></a><span class='comment'>-- can e.g. be used for finding all nodes of a specific kind</span>+<a name="line-569"></a>+<a name="line-570"></a><a name="multi"></a><span class='definition'>multi</span>		<span class='keyglyph'>::</span> <span class='conid'>TFilter</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>TFilter</span> <span class='varid'>node</span>+<a name="line-571"></a><span class='definition'>multi</span> <span class='varid'>f</span>+<a name="line-572"></a>    <span class='keyglyph'>=</span> <span class='varid'>f</span> <span class='varop'>+++</span> <span class='layout'>(</span><span class='varid'>getChildren</span> <span class='varop'>.&gt;</span> <span class='varid'>multi</span> <span class='varid'>f</span><span class='layout'>)</span>+<a name="line-573"></a>+<a name="line-574"></a><span class='comment'>-- ------------------------------------------------------------</span>+<a name="line-575"></a><span class='comment'>--</span>+<a name="line-576"></a><span class='comment'>-- recursive transformation filters</span>+<a name="line-577"></a><span class='comment'>--</span>+<a name="line-578"></a>+<a name="line-579"></a><span class='comment'>-- |</span>+<a name="line-580"></a><span class='comment'>-- bottom up transformation</span>+<a name="line-581"></a><span class='comment'>--</span>+<a name="line-582"></a><span class='comment'>--    * 1.parameter f :  the /simple/ transforming filter</span>+<a name="line-583"></a><span class='comment'>--</span>+<a name="line-584"></a><span class='comment'>--    - returns : the filter that applies f to all subtrees and the tree itself in a deepth first left to right manner</span>+<a name="line-585"></a><span class='comment'>--</span>+<a name="line-586"></a><span class='comment'>-- see also : 'processTopDown', 'processBottomUpIfNot'</span>+<a name="line-587"></a>+<a name="line-588"></a><a name="processBottomUp"></a><span class='definition'>processBottomUp</span>	<span class='keyglyph'>::</span> <span class='conid'>TFilter</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>TFilter</span> <span class='varid'>node</span>+<a name="line-589"></a><span class='definition'>processBottomUp</span> <span class='varid'>f</span>+<a name="line-590"></a>    <span class='keyglyph'>=</span> <span class='varid'>processChildren</span> <span class='layout'>(</span><span class='varid'>processBottomUp</span> <span class='varid'>f</span><span class='layout'>)</span> <span class='varop'>.&gt;</span> <span class='varid'>f</span>+<a name="line-591"></a>+<a name="line-592"></a><span class='comment'>-- |</span>+<a name="line-593"></a><span class='comment'>-- top down transformation</span>+<a name="line-594"></a><span class='comment'>--</span>+<a name="line-595"></a><span class='comment'>--    * 1.parameter f :  the /simple/ transforming filter</span>+<a name="line-596"></a><span class='comment'>--</span>+<a name="line-597"></a><span class='comment'>--    - returns : the filter that applies f first to the tree and then recursively to all subtrees of the result</span>+<a name="line-598"></a><span class='comment'>--</span>+<a name="line-599"></a><span class='comment'>-- see also : 'processBottomUp'</span>+<a name="line-600"></a>+<a name="line-601"></a><a name="processTopDown"></a><span class='definition'>processTopDown</span>	<span class='keyglyph'>::</span> <span class='conid'>TFilter</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>TFilter</span> <span class='varid'>node</span>+<a name="line-602"></a><span class='definition'>processTopDown</span> <span class='varid'>f</span>+<a name="line-603"></a>    <span class='keyglyph'>=</span> <span class='varid'>f</span> <span class='varop'>.&gt;</span> <span class='varid'>processChildren</span> <span class='layout'>(</span><span class='varid'>processTopDown</span> <span class='varid'>f</span><span class='layout'>)</span>+<a name="line-604"></a>+<a name="line-605"></a><span class='comment'>-- |</span>+<a name="line-606"></a><span class='comment'>-- guarded bottom up transformation, stops at subtrees for which a predicate p holds</span>+<a name="line-607"></a><span class='comment'>--</span>+<a name="line-608"></a><span class='comment'>--    * 1.parameter f :  the transforming filter</span>+<a name="line-609"></a><span class='comment'>--</span>+<a name="line-610"></a><span class='comment'>--    - 2.parameter p :  the predicate filter for the guard</span>+<a name="line-611"></a><span class='comment'>--</span>+<a name="line-612"></a><span class='comment'>--    - returns : the filter for processing all (sub-)trees</span>+<a name="line-613"></a><span class='comment'>--</span>+<a name="line-614"></a><span class='comment'>-- see also : 'processBottomUp'</span>+<a name="line-615"></a>+<a name="line-616"></a><a name="processBottomUpIfNot"></a><span class='definition'>processBottomUpIfNot</span>	<span class='keyglyph'>::</span> <span class='conid'>TFilter</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>TFilter</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>TFilter</span> <span class='varid'>node</span>+<a name="line-617"></a><span class='definition'>processBottomUpIfNot</span> <span class='varid'>f</span> <span class='varid'>p</span>+<a name="line-618"></a>    <span class='keyglyph'>=</span> <span class='layout'>(</span><span class='varid'>processChildren</span> <span class='layout'>(</span><span class='varid'>processBottomUpIfNot</span> <span class='varid'>f</span> <span class='varid'>p</span><span class='layout'>)</span> <span class='varop'>.&gt;</span> <span class='varid'>f</span><span class='layout'>)</span> <span class='varop'>`whenNot`</span> <span class='varid'>p</span>+<a name="line-619"></a>+<a name="line-620"></a><span class='comment'>-- |</span>+<a name="line-621"></a><span class='comment'>-- top down transformation until a node to be transformed is found</span>+<a name="line-622"></a><span class='comment'>--</span>+<a name="line-623"></a><span class='comment'>--    * 1.parameter f :  the /simple/ transforming filter</span>+<a name="line-624"></a><span class='comment'>--</span>+<a name="line-625"></a><span class='comment'>--    - returns : the filter that applies f first to the tree and, if the filter does not succeed,</span>+<a name="line-626"></a><span class='comment'>--		  recursively to all children of the input tree.</span>+<a name="line-627"></a><span class='comment'>--</span>+<a name="line-628"></a><span class='comment'>-- Example:</span>+<a name="line-629"></a><span class='comment'>--</span>+<a name="line-630"></a><span class='comment'>-- @processTopDownUntil none@</span>+<a name="line-631"></a><span class='comment'>--</span>+<a name="line-632"></a><span class='comment'>-- is the identity filter (maybe a bit more inefficient).</span>+<a name="line-633"></a><span class='comment'>--</span>+<a name="line-634"></a><span class='comment'>-- Example:</span>+<a name="line-635"></a><span class='comment'>--</span>+<a name="line-636"></a><span class='comment'>-- @processTopDownUntil (add1Attr \"border\" \"2\" \`containing\` isTag \"table\")@</span>+<a name="line-637"></a><span class='comment'>--</span>+<a name="line-638"></a><span class='comment'>-- is a filter for adding an attribute border=\"2\" in all top level table tags.</span>+<a name="line-639"></a><span class='comment'>--		  The content of table tags will remain unchanged.</span>+<a name="line-640"></a><span class='comment'>--</span>+<a name="line-641"></a><span class='comment'>-- see also : 'processTopDown', 'processBottomUp'</span>+<a name="line-642"></a>+<a name="line-643"></a><a name="processTopDownUntil"></a><span class='definition'>processTopDownUntil</span>	<span class='keyglyph'>::</span> <span class='conid'>TFilter</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>TFilter</span> <span class='varid'>node</span>+<a name="line-644"></a><span class='definition'>processTopDownUntil</span> <span class='varid'>f</span> <span class='varid'>t</span>+<a name="line-645"></a>    <span class='keyglyph'>|</span> <span class='varid'>null</span> <span class='varid'>res</span>+<a name="line-646"></a>	<span class='keyglyph'>=</span> <span class='varid'>processChildren</span> <span class='layout'>(</span><span class='varid'>processTopDownUntil</span> <span class='varid'>f</span><span class='layout'>)</span> <span class='varid'>t</span>+<a name="line-647"></a>    <span class='keyglyph'>|</span> <span class='varid'>otherwise</span>+<a name="line-648"></a>	<span class='keyglyph'>=</span> <span class='varid'>res</span>+<a name="line-649"></a>    <span class='keyword'>where</span>+<a name="line-650"></a>    <span class='varid'>res</span> <span class='keyglyph'>=</span> <span class='varid'>f</span> <span class='varid'>t</span>+<a name="line-651"></a>+<a name="line-652"></a><span class='comment'>-- ------------------------------------------------------------</span>+<a name="line-653"></a><span class='comment'>--</span>+<a name="line-654"></a>+<a name="line-655"></a><span class='comment'>-- |</span>+<a name="line-656"></a><span class='comment'>-- insertion of trees into the list of children at a given position</span>+<a name="line-657"></a><span class='comment'>--</span>+<a name="line-658"></a><span class='comment'>-- useful for inserting something into the list of children at a given position</span>+<a name="line-659"></a><span class='comment'>-- the list of children is split with the @splitAt@ function</span>+<a name="line-660"></a><span class='comment'>-- the nodes are inserted between these two sublists.</span>+<a name="line-661"></a><span class='comment'>--</span>+<a name="line-662"></a><span class='comment'>-- examples: @insertChildrenAt 0 ins t@ inserts all elements computed with @ins t@ in front</span>+<a name="line-663"></a><span class='comment'>-- of the childen of @t@, @insertChildrenAt 1 ins t@ behind the first child</span>+<a name="line-664"></a><span class='comment'>--</span>+<a name="line-665"></a><span class='comment'>-- see also: 'insertChildrenAfter'</span>+<a name="line-666"></a>+<a name="line-667"></a>+<a name="line-668"></a><a name="insertChildrenAt"></a><span class='definition'>insertChildrenAt</span>	<span class='keyglyph'>::</span> <span class='conid'>Int</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>TFilter</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>TFilter</span> <span class='varid'>node</span>+<a name="line-669"></a><span class='definition'>insertChildrenAt</span> <span class='varid'>i</span> <span class='varid'>ins</span> <span class='varid'>t</span>+<a name="line-670"></a>    <span class='keyglyph'>=</span> <span class='varid'>replaceChildren</span> <span class='layout'>(</span><span class='varid'>cl1</span> <span class='varop'>++</span> <span class='varid'>ins</span> <span class='varid'>t</span> <span class='varop'>++</span> <span class='varid'>cl2</span><span class='layout'>)</span> <span class='varid'>t</span>+<a name="line-671"></a>    <span class='keyword'>where</span>+<a name="line-672"></a>    <span class='layout'>(</span><span class='varid'>cl1</span><span class='layout'>,</span> <span class='varid'>cl2</span><span class='layout'>)</span> <span class='keyglyph'>=</span> <span class='varid'>splitAt</span> <span class='varid'>i</span> <span class='varop'>$</span> <span class='varid'>getChildren</span> <span class='varid'>t</span>+<a name="line-673"></a>+<a name="line-674"></a><span class='comment'>-- |</span>+<a name="line-675"></a><span class='comment'>-- insertion of trees into the list of children after specific elements</span>+<a name="line-676"></a><span class='comment'>--</span>+<a name="line-677"></a><span class='comment'>-- useful for inserting something into the list of children of a node</span>+<a name="line-678"></a><span class='comment'>-- the list of children is split with the @span@ function and the filter p as predicate</span>+<a name="line-679"></a><span class='comment'>-- the nodes are inserted between these two sublists</span>+<a name="line-680"></a><span class='comment'>--</span>+<a name="line-681"></a><span class='comment'>-- examples: @insertChildrenAfter none ins t@ inserts all elements computed with @ins t@ in front</span>+<a name="line-682"></a><span class='comment'>-- of the childen of @t@, @insertChildrenAfter this ins t@ appends the elements to the children</span>+<a name="line-683"></a><span class='comment'>--</span>+<a name="line-684"></a><span class='comment'>-- see also: 'insertChildrenAt'</span>+<a name="line-685"></a>+<a name="line-686"></a><a name="insertChildrenAfter"></a><span class='definition'>insertChildrenAfter</span>	<span class='keyglyph'>::</span> <span class='conid'>TFilter</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>TFilter</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>TFilter</span> <span class='varid'>node</span>+<a name="line-687"></a><span class='definition'>insertChildrenAfter</span> <span class='varid'>p</span> <span class='varid'>ins</span> <span class='varid'>t</span>+<a name="line-688"></a>    <span class='keyglyph'>=</span> <span class='varid'>replaceChildren</span> <span class='layout'>(</span><span class='varid'>cl1</span> <span class='varop'>++</span> <span class='varid'>ins</span> <span class='varid'>t</span> <span class='varop'>++</span> <span class='varid'>cl2</span><span class='layout'>)</span> <span class='varid'>t</span>+<a name="line-689"></a>    <span class='keyword'>where</span>+<a name="line-690"></a>    <span class='layout'>(</span><span class='varid'>cl1</span><span class='layout'>,</span> <span class='varid'>cl2</span><span class='layout'>)</span> <span class='keyglyph'>=</span> <span class='varid'>span</span> <span class='layout'>(</span><span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>null</span> <span class='varop'>.</span> <span class='varid'>p</span><span class='layout'>)</span> <span class='varop'>$</span> <span class='varid'>getChildren</span> <span class='varid'>t</span>+<a name="line-691"></a>+<a name="line-692"></a><span class='comment'>-- ------------------------------------------------------------</span>+<a name="line-693"></a><span class='comment'>--</span>+<a name="line-694"></a><span class='comment'>-- monadic filter</span>+<a name="line-695"></a>+<a name="line-696"></a><span class='comment'>-- |</span>+<a name="line-697"></a><span class='comment'>-- the monadic version of the identity filter this.</span>+<a name="line-698"></a><span class='comment'>--</span>+<a name="line-699"></a><span class='comment'>-- see also : 'this'</span>+<a name="line-700"></a>+<a name="line-701"></a><a name="thisM"></a><span class='definition'>thisM</span>		<span class='keyglyph'>::</span> <span class='conid'>Monad</span> <span class='varid'>m</span> <span class='keyglyph'>=&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='varid'>a</span><span class='keyglyph'>]</span><span class='layout'>)</span>+<a name="line-702"></a><span class='definition'>thisM</span>		<span class='keyglyph'>=</span> <span class='varid'>liftMf</span> <span class='varid'>this</span>+<a name="line-703"></a>+<a name="line-704"></a><span class='comment'>-- |</span>+<a name="line-705"></a><span class='comment'>-- the monadic version of the null filter none.</span>+<a name="line-706"></a><span class='comment'>--</span>+<a name="line-707"></a><span class='comment'>-- see also : 'none'</span>+<a name="line-708"></a>+<a name="line-709"></a><a name="noneM"></a><span class='definition'>noneM</span>		<span class='keyglyph'>::</span> <span class='conid'>Monad</span> <span class='varid'>m</span> <span class='keyglyph'>=&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span>+<a name="line-710"></a><span class='definition'>noneM</span>		<span class='keyglyph'>=</span> <span class='varid'>liftMf</span> <span class='varid'>none</span>+<a name="line-711"></a>+<a name="line-712"></a><span class='comment'>-- |</span>+<a name="line-713"></a><span class='comment'>-- sequential composition of monadic filters, monadic version of \".&gt;\".</span>+<a name="line-714"></a><span class='comment'>--</span>+<a name="line-715"></a><span class='comment'>--    * 1.parameter f1 :  the 1. monadic filter</span>+<a name="line-716"></a><span class='comment'>--</span>+<a name="line-717"></a><span class='comment'>--    - 2.parameter f2 :  the 2. monadic filter</span>+<a name="line-718"></a><span class='comment'>--</span>+<a name="line-719"></a><span class='comment'>--    - returns : the monadic fiter applying first f1 to n and then f2 to the result (like function composition)</span>+<a name="line-720"></a><span class='comment'>--</span>+<a name="line-721"></a><span class='comment'>-- see also : '(.&gt;)'</span>+<a name="line-722"></a>+<a name="line-723"></a><a name=".>>"></a><span class='layout'>(</span><span class='varop'>.&gt;&gt;</span><span class='layout'>)</span>	<span class='keyglyph'>::</span> <span class='conid'>Monad</span> <span class='varid'>m</span> <span class='keyglyph'>=&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span><span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>b</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='varid'>c</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span><span class='keyglyph'>[</span><span class='varid'>c</span><span class='keyglyph'>]</span><span class='layout'>)</span>+<a name="line-724"></a><a name="cmd1"></a><span class='definition'>cmd1</span> <span class='varop'>.&gt;&gt;</span> <span class='varid'>cmd2</span>+<a name="line-725"></a>    <span class='keyglyph'>=</span> <span class='keyglyph'>\</span> <span class='varid'>t</span> <span class='keyglyph'>-&gt;</span>+<a name="line-726"></a>      <span class='keyword'>do</span>+<a name="line-727"></a>      <span class='varid'>r1</span> <span class='keyglyph'>&lt;-</span> <span class='varid'>cmd1</span> <span class='varid'>t</span>+<a name="line-728"></a>      <span class='varid'>r2</span> <span class='keyglyph'>&lt;-</span> <span class='varid'>mapM</span> <span class='varid'>cmd2</span> <span class='varid'>r1</span>+<a name="line-729"></a>      <span class='varid'>return</span> <span class='layout'>(</span><span class='varid'>concat</span> <span class='varid'>r2</span><span class='layout'>)</span>+<a name="line-730"></a>+<a name="line-731"></a><span class='comment'>-- |</span>+<a name="line-732"></a><span class='comment'>-- generalized sequential composition of monadic filters</span>+<a name="line-733"></a>+<a name="line-734"></a><a name="seqM"></a><span class='definition'>seqM</span>	<span class='keyglyph'>::</span> <span class='conid'>Monad</span> <span class='varid'>m</span> <span class='keyglyph'>=&gt;</span> <span class='keyglyph'>[</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span><span class='keyglyph'>[</span><span class='varid'>a</span><span class='keyglyph'>]</span><span class='keyglyph'>]</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span><span class='keyglyph'>[</span><span class='varid'>a</span><span class='keyglyph'>]</span><span class='layout'>)</span>+<a name="line-735"></a><span class='definition'>seqM</span>+<a name="line-736"></a>    <span class='keyglyph'>=</span> <span class='varid'>foldr</span> <span class='layout'>(</span><span class='varop'>.&gt;&gt;</span><span class='layout'>)</span> <span class='varid'>thisM</span>+<a name="line-737"></a>+<a name="line-738"></a><span class='comment'>-- |</span>+<a name="line-739"></a><span class='comment'>-- binary parallel composition, the logical OR for predicate filter</span>+<a name="line-740"></a><span class='comment'>--</span>+<a name="line-741"></a><span class='comment'>--    * 1.parameter f1 :  the 1. filter</span>+<a name="line-742"></a><span class='comment'>--</span>+<a name="line-743"></a><span class='comment'>--    - 2.parameter f2 :  the 2. filter</span>+<a name="line-744"></a><span class='comment'>--</span>+<a name="line-745"></a><span class='comment'>--    - returns : the filter for applying f1 and f2 both to an argument tree and concatenating the results</span>+<a name="line-746"></a><span class='comment'>-- see also: 'cat', '+++', 'catM'</span>+<a name="line-747"></a>+<a name="line-748"></a><a name="+++>>"></a><span class='layout'>(</span><span class='varop'>+++&gt;&gt;</span><span class='layout'>)</span>		<span class='keyglyph'>::</span> <span class='conid'>Monad</span> <span class='varid'>m</span> <span class='keyglyph'>=&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span>+<a name="line-749"></a><span class='definition'>f</span> <span class='varop'>+++&gt;&gt;</span> <span class='varid'>g</span>	<span class='keyglyph'>=</span> <span class='keyglyph'>\</span> <span class='varid'>t</span> <span class='keyglyph'>-&gt;</span> <span class='keyword'>do</span>+<a name="line-750"></a>			 <span class='varid'>r1</span> <span class='keyglyph'>&lt;-</span> <span class='varid'>f</span> <span class='varid'>t</span>+<a name="line-751"></a>			 <span class='varid'>r2</span> <span class='keyglyph'>&lt;-</span> <span class='varid'>g</span> <span class='varid'>t</span>+<a name="line-752"></a>			 <span class='varid'>return</span> <span class='layout'>(</span><span class='varid'>r1</span> <span class='varop'>++</span> <span class='varid'>r2</span><span class='layout'>)</span>+<a name="line-753"></a>+<a name="line-754"></a><span class='comment'>-- |</span>+<a name="line-755"></a><span class='comment'>-- apply a list of monadic filters</span>+<a name="line-756"></a><span class='comment'>--</span>+<a name="line-757"></a><span class='comment'>--    * 1.parameter fs :  the list of filters</span>+<a name="line-758"></a><span class='comment'>--</span>+<a name="line-759"></a><span class='comment'>--    - returns : the composing filter</span>+<a name="line-760"></a><span class='comment'>-- see also: 'cat', '+++', '+++&gt;&gt;'</span>+<a name="line-761"></a>+<a name="line-762"></a><a name="catM"></a><span class='definition'>catM</span>	<span class='keyglyph'>::</span> <span class='conid'>Monad</span> <span class='varid'>m</span> <span class='keyglyph'>=&gt;</span> <span class='keyglyph'>[</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='keyglyph'>]</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span>+<a name="line-763"></a><span class='definition'>catM</span> <span class='varid'>fs</span>  <span class='varid'>t</span>+<a name="line-764"></a>    <span class='keyglyph'>=</span> <span class='keyword'>do</span>+<a name="line-765"></a>      <span class='varid'>res</span> <span class='keyglyph'>&lt;-</span> <span class='varid'>sequence</span> <span class='layout'>(</span><span class='varid'>map</span> <span class='layout'>(</span><span class='varop'>$</span> <span class='varid'>t</span><span class='layout'>)</span> <span class='varid'>fs</span><span class='layout'>)</span>+<a name="line-766"></a>      <span class='varid'>return</span> <span class='varop'>$</span> <span class='varid'>concat</span> <span class='varid'>res</span>+<a name="line-767"></a>+<a name="line-768"></a><span class='comment'>-- |</span>+<a name="line-769"></a><span class='comment'>-- monadic if-then-else.</span>+<a name="line-770"></a><span class='comment'>--</span>+<a name="line-771"></a><span class='comment'>--    * 1.parameter p :  the predicate</span>+<a name="line-772"></a><span class='comment'>--</span>+<a name="line-773"></a><span class='comment'>--    - 2.parameter thenP :  the then part: the monadic filter, that is applied if p holds for the input tree</span>+<a name="line-774"></a><span class='comment'>--</span>+<a name="line-775"></a><span class='comment'>--    - 3.parameter elseP :  the else part</span>+<a name="line-776"></a><span class='comment'>--</span>+<a name="line-777"></a><span class='comment'>--    - returns : the monadic filter for the conditional</span>+<a name="line-778"></a>+<a name="line-779"></a><a name="ifM"></a><span class='definition'>ifM</span>		<span class='keyglyph'>::</span> <span class='conid'>Monad</span> <span class='varid'>m</span> <span class='keyglyph'>=&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='varid'>c</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='varid'>c</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='varid'>c</span><span class='keyglyph'>]</span><span class='layout'>)</span>+<a name="line-780"></a><span class='definition'>ifM</span> <span class='varid'>p</span> <span class='varid'>thenPart</span> <span class='varid'>elsePart</span>+<a name="line-781"></a>    <span class='keyglyph'>=</span> <span class='keyglyph'>\</span> <span class='varid'>t</span> <span class='keyglyph'>-&gt;</span>+<a name="line-782"></a>      <span class='keyword'>if</span> <span class='layout'>(</span><span class='varid'>satisfies</span> <span class='varid'>p</span><span class='layout'>)</span> <span class='varid'>t</span>+<a name="line-783"></a>      <span class='keyword'>then</span> <span class='varid'>thenPart</span> <span class='varid'>t</span>+<a name="line-784"></a>      <span class='keyword'>else</span> <span class='varid'>elsePart</span> <span class='varid'>t</span>+<a name="line-785"></a>+<a name="line-786"></a><span class='comment'>-- |</span>+<a name="line-787"></a><span class='comment'>-- monadic version of multiway branch. The list of cases @f :-&gt; g@ is processed sequentially,</span>+<a name="line-788"></a><span class='comment'>-- in the first case for that f holds g is applied, if no case matches, 'noneM' is</span>+<a name="line-789"></a><span class='comment'>-- applied.</span>+<a name="line-790"></a><span class='comment'>-- This filter can be used like a case expression: @choiceM [ p1 :-&gt; f1, p2 :-&gt; f2, ... , thisM :-&gt; defaultFilter]@</span>+<a name="line-791"></a><span class='comment'>--</span>+<a name="line-792"></a><span class='comment'>-- see also : 'choice', 'ifM'</span>+<a name="line-793"></a>+<a name="line-794"></a><a name="choiceM"></a><span class='definition'>choiceM</span>		<span class='keyglyph'>::</span> <span class='conid'>Monad</span> <span class='varid'>m</span> <span class='keyglyph'>=&gt;</span> <span class='keyglyph'>[</span><span class='conid'>IfThen</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>c</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span><span class='keyglyph'>]</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span>+<a name="line-795"></a><span class='definition'>choiceM</span> <span class='conid'>[]</span>+<a name="line-796"></a>    <span class='keyglyph'>=</span> <span class='varid'>noneM</span>+<a name="line-797"></a>+<a name="line-798"></a><span class='definition'>choiceM</span> <span class='layout'>(</span><span class='layout'>(</span><span class='varid'>g</span> <span class='conop'>:-&gt;</span> <span class='varid'>f</span><span class='layout'>)</span> <span class='conop'>:</span> <span class='varid'>cs</span><span class='layout'>)</span>+<a name="line-799"></a>    <span class='keyglyph'>=</span> <span class='varid'>ifM</span> <span class='varid'>g</span> <span class='varid'>f</span> <span class='layout'>(</span><span class='varid'>choiceM</span> <span class='varid'>cs</span><span class='layout'>)</span>+<a name="line-800"></a>+<a name="line-801"></a>+<a name="line-802"></a><span class='comment'>-- |</span>+<a name="line-803"></a><span class='comment'>-- when the predicate p holds, the monadic filter f is applied, else the identity filter.</span>+<a name="line-804"></a><span class='comment'>--</span>+<a name="line-805"></a><span class='comment'>--    * 1.parameter f :  the conditinally applied monadic filter</span>+<a name="line-806"></a><span class='comment'>--</span>+<a name="line-807"></a><span class='comment'>--    - 2.parameter p :  the simple predicate</span>+<a name="line-808"></a><span class='comment'>--</span>+<a name="line-809"></a><span class='comment'>--    - returns : the conditional filter</span>+<a name="line-810"></a><span class='comment'>--</span>+<a name="line-811"></a><span class='comment'>-- see also : 'ifM', 'when', 'guardsM', 'whenNotM'</span>+<a name="line-812"></a>+<a name="line-813"></a><a name="whenM"></a><span class='definition'>whenM</span>		<span class='keyglyph'>::</span> <span class='conid'>Monad</span> <span class='varid'>m</span> <span class='keyglyph'>=&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='varid'>a</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='varid'>a</span><span class='keyglyph'>]</span><span class='layout'>)</span>+<a name="line-814"></a><a name="whenM"></a><span class='definition'>f</span> <span class='varop'>`whenM`</span> <span class='varid'>g</span>	<span class='keyglyph'>=</span> <span class='varid'>ifM</span> <span class='varid'>g</span> <span class='varid'>f</span> <span class='varid'>thisM</span>+<a name="line-815"></a>+<a name="line-816"></a><span class='comment'>-- |</span>+<a name="line-817"></a><span class='comment'>-- the complementary filter of whenM.</span>+<a name="line-818"></a><span class='comment'>--</span>+<a name="line-819"></a><span class='comment'>-- see also : 'ifM', 'whenM', 'whenNot'</span>+<a name="line-820"></a>+<a name="line-821"></a><a name="whenNotM"></a><span class='definition'>whenNotM</span>	<span class='keyglyph'>::</span> <span class='conid'>Monad</span> <span class='varid'>m</span> <span class='keyglyph'>=&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='varid'>a</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='varid'>a</span><span class='keyglyph'>]</span><span class='layout'>)</span>+<a name="line-822"></a><a name="whenNotM"></a><span class='definition'>f</span> <span class='varop'>`whenNotM`</span> <span class='varid'>g</span>	<span class='keyglyph'>=</span> <span class='varid'>ifM</span> <span class='varid'>g</span> <span class='varid'>thisM</span> <span class='varid'>f</span>+<a name="line-823"></a>+<a name="line-824"></a><span class='comment'>-- |</span>+<a name="line-825"></a><span class='comment'>-- when the predicate p holds, the monadic filter f is applied, else the null filter.</span>+<a name="line-826"></a><span class='comment'>--</span>+<a name="line-827"></a><span class='comment'>--    * 1.parameter p :  the simple predicate filter</span>+<a name="line-828"></a><span class='comment'>--</span>+<a name="line-829"></a><span class='comment'>--    - 2.parameter f :  the conditionally applied monadic filter</span>+<a name="line-830"></a><span class='comment'>--</span>+<a name="line-831"></a><span class='comment'>--    - returns : the conditional filter</span>+<a name="line-832"></a><span class='comment'>--</span>+<a name="line-833"></a><span class='comment'>-- see also : 'ifM', 'guards', 'whenM'</span>+<a name="line-834"></a>+<a name="line-835"></a><a name="guardsM"></a><span class='definition'>guardsM</span>		<span class='keyglyph'>::</span> <span class='conid'>Monad</span> <span class='varid'>m</span> <span class='keyglyph'>=&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='varid'>c</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='varid'>c</span><span class='keyglyph'>]</span><span class='layout'>)</span>+<a name="line-836"></a><a name="guardsM"></a><span class='definition'>g</span> <span class='varop'>`guardsM`</span> <span class='varid'>f</span>	<span class='keyglyph'>=</span> <span class='varid'>ifM</span> <span class='varid'>g</span> <span class='varid'>f</span> <span class='varid'>noneM</span>+<a name="line-837"></a>+<a name="line-838"></a><span class='comment'>-- |</span>+<a name="line-839"></a><span class='comment'>-- Filter for editing the children of a tree with a monadic filter</span>+<a name="line-840"></a><span class='comment'>--</span>+<a name="line-841"></a><span class='comment'>--    * 1.parameter cf :  the monadic filter applied to the children</span>+<a name="line-842"></a><span class='comment'>--</span>+<a name="line-843"></a><span class='comment'>--    - returns : the monadic editing filter</span>+<a name="line-844"></a><span class='comment'>--</span>+<a name="line-845"></a><span class='comment'>-- see also : 'processChildren'</span>+<a name="line-846"></a>+<a name="line-847"></a><a name="processChildrenM"></a><span class='definition'>processChildrenM</span>	<span class='keyglyph'>::</span> <span class='conid'>Monad</span> <span class='varid'>m</span> <span class='keyglyph'>=&gt;</span> <span class='layout'>(</span><span class='conid'>NTree</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='conid'>NTree</span> <span class='varid'>node</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='conid'>NTree</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='conid'>NTree</span> <span class='varid'>node</span><span class='keyglyph'>]</span><span class='layout'>)</span>+<a name="line-848"></a><span class='definition'>processChildrenM</span> <span class='varid'>ft</span> <span class='layout'>(</span><span class='conid'>NTree</span> <span class='varid'>n</span> <span class='varid'>cs</span><span class='layout'>)</span>+<a name="line-849"></a>    <span class='keyglyph'>=</span> <span class='keyword'>do</span>+<a name="line-850"></a>      <span class='varid'>res</span> <span class='keyglyph'>&lt;-</span> <span class='varid'>ft</span> <span class='varop'>$$&lt;</span> <span class='varid'>cs</span>+<a name="line-851"></a>      <span class='varid'>return</span> <span class='keyglyph'>[</span><span class='conid'>NTree</span> <span class='varid'>n</span> <span class='varid'>res</span><span class='keyglyph'>]</span>+<a name="line-852"></a>+<a name="line-853"></a><span class='comment'>-- |</span>+<a name="line-854"></a><span class='comment'>-- monadic variant of 'processTopDown'</span>+<a name="line-855"></a>+<a name="line-856"></a><a name="processTopDownM"></a><span class='definition'>processTopDownM</span>		<span class='keyglyph'>::</span> <span class='conid'>Monad</span> <span class='varid'>m</span> <span class='keyglyph'>=&gt;</span> <span class='layout'>(</span><span class='conid'>NTree</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='conid'>NTree</span> <span class='varid'>node</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='conid'>NTree</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='conid'>NTree</span> <span class='varid'>node</span><span class='keyglyph'>]</span><span class='layout'>)</span>+<a name="line-857"></a><span class='definition'>processTopDownM</span> <span class='varid'>f</span>+<a name="line-858"></a>    <span class='keyglyph'>=</span> <span class='varid'>f</span> <span class='varop'>.&gt;&gt;</span> <span class='varid'>processChildrenM</span> <span class='layout'>(</span><span class='varid'>processTopDownM</span> <span class='varid'>f</span><span class='layout'>)</span>+<a name="line-859"></a>+<a name="line-860"></a><span class='comment'>-- |</span>+<a name="line-861"></a><span class='comment'>-- monadic variant of 'processBottomUp'</span>+<a name="line-862"></a>+<a name="line-863"></a><a name="processBottomUpM"></a><span class='definition'>processBottomUpM</span>	<span class='keyglyph'>::</span> <span class='conid'>Monad</span> <span class='varid'>m</span> <span class='keyglyph'>=&gt;</span> <span class='layout'>(</span><span class='conid'>NTree</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='conid'>NTree</span> <span class='varid'>node</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='conid'>NTree</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='conid'>NTree</span> <span class='varid'>node</span><span class='keyglyph'>]</span><span class='layout'>)</span>+<a name="line-864"></a><span class='definition'>processBottomUpM</span> <span class='varid'>f</span>+<a name="line-865"></a>    <span class='keyglyph'>=</span> <span class='varid'>processChildrenM</span> <span class='layout'>(</span><span class='varid'>processBottomUpM</span> <span class='varid'>f</span><span class='layout'>)</span> <span class='varop'>.&gt;&gt;</span> <span class='varid'>f</span>+<a name="line-866"></a>+<a name="line-867"></a><span class='comment'>-- |</span>+<a name="line-868"></a><span class='comment'>-- infix operator for applying a monadic filter to a list of trees,</span>+<a name="line-869"></a><span class='comment'>-- typically used in do-notation for processing of intermediate results.</span>+<a name="line-870"></a><span class='comment'>--</span>+<a name="line-871"></a><span class='comment'>--    * 1.parameter f :  the monadic filter</span>+<a name="line-872"></a><span class='comment'>--</span>+<a name="line-873"></a><span class='comment'>--    - 2.parameter ts :  the list of trees</span>+<a name="line-874"></a><span class='comment'>--</span>+<a name="line-875"></a><span class='comment'>--    - returns : the concatenated list of results</span>+<a name="line-876"></a><span class='comment'>--</span>+<a name="line-877"></a><span class='comment'>-- see also : '($$)'</span>+<a name="line-878"></a>+<a name="line-879"></a><a name="$$<"></a><span class='layout'>(</span><span class='varop'>$$&lt;</span><span class='layout'>)</span>	<span class='keyglyph'>::</span> <span class='conid'>Monad</span> <span class='varid'>m</span> <span class='keyglyph'>=&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>a</span><span class='keyglyph'>]</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span>+<a name="line-880"></a><a name="cmd"></a><span class='definition'>cmd</span> <span class='varop'>$$&lt;</span> <span class='varid'>l</span>+<a name="line-881"></a>    <span class='keyglyph'>=</span> <span class='keyword'>do</span>+<a name="line-882"></a>      <span class='varid'>r</span> <span class='keyglyph'>&lt;-</span> <span class='varid'>mapM</span> <span class='varid'>cmd</span> <span class='varid'>l</span>+<a name="line-883"></a>      <span class='varid'>return</span> <span class='layout'>(</span><span class='varid'>concat</span> <span class='varid'>r</span><span class='layout'>)</span>+<a name="line-884"></a>+<a name="line-885"></a><span class='comment'>-- |</span>+<a name="line-886"></a><span class='comment'>-- lift a filter to a monadic filter</span>+<a name="line-887"></a><span class='comment'>--</span>+<a name="line-888"></a><span class='comment'>--    * 1.parameter f :  the /simple/ filter</span>+<a name="line-889"></a><span class='comment'>--</span>+<a name="line-890"></a><span class='comment'>--    - returns : the lifted monadic version</span>+<a name="line-891"></a>+<a name="line-892"></a><a name="liftMf"></a><span class='definition'>liftMf</span>	<span class='keyglyph'>::</span> <span class='conid'>Monad</span> <span class='varid'>m</span> <span class='keyglyph'>=&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span>+<a name="line-893"></a><span class='definition'>liftMf</span> <span class='varid'>f</span> <span class='varid'>t</span>+<a name="line-894"></a>    <span class='keyglyph'>=</span> <span class='varid'>return</span> <span class='layout'>(</span><span class='varid'>f</span> <span class='varid'>t</span><span class='layout'>)</span>+<a name="line-895"></a>+<a name="line-896"></a><span class='comment'>-- |</span>+<a name="line-897"></a><span class='comment'>-- run an arbitray command on a tree t and return the tree,</span>+<a name="line-898"></a><span class='comment'>-- used for inserting arbitray commands in a filter pipeline</span>+<a name="line-899"></a><span class='comment'>--</span>+<a name="line-900"></a><span class='comment'>--    * 1.parameter cmd :  the command</span>+<a name="line-901"></a><span class='comment'>--</span>+<a name="line-902"></a><span class='comment'>--    - 2.parameter t :  the argument tree</span>+<a name="line-903"></a><span class='comment'>--</span>+<a name="line-904"></a><span class='comment'>--    - returns : the unchanged tree as a single element list</span>+<a name="line-905"></a>+<a name="line-906"></a><a name="performAction"></a><span class='definition'>performAction</span>	<span class='keyglyph'>::</span> <span class='conid'>Monad</span> <span class='varid'>m</span> <span class='keyglyph'>=&gt;</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='varid'>b</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>m</span> <span class='keyglyph'>[</span><span class='varid'>a</span><span class='keyglyph'>]</span>+<a name="line-907"></a><span class='definition'>performAction</span> <span class='varid'>cmd</span> <span class='varid'>t</span>+<a name="line-908"></a>    <span class='keyglyph'>=</span> <span class='keyword'>do</span>+<a name="line-909"></a>      <span class='varid'>cmd</span> <span class='varid'>t</span>+<a name="line-910"></a>      <span class='varid'>return</span> <span class='keyglyph'>[</span><span class='varid'>t</span><span class='keyglyph'>]</span>+<a name="line-911"></a>+<a name="line-912"></a><span class='comment'>-- eof ------------------------------------------------------------</span>+</pre></body>+</html>
doc/hxt-filter/src/Text-XML-HXT-DOM-NamespaceFilter.html view
@@ -24,211 +24,208 @@ <a name="line-16"></a> <a name="line-17"></a><span class='keyword'>module</span> <span class='conid'>Text</span><span class='varop'>.</span><span class='conid'>XML</span><span class='varop'>.</span><span class='conid'>HXT</span><span class='varop'>.</span><span class='conid'>DOM</span><span class='varop'>.</span><span class='conid'>NamespaceFilter</span> <a name="line-18"></a>    <span class='layout'>(</span> <span class='keyword'>module</span> <span class='conid'>Text</span><span class='varop'>.</span><span class='conid'>XML</span><span class='varop'>.</span><span class='conid'>HXT</span><span class='varop'>.</span><span class='conid'>DOM</span><span class='varop'>.</span><span class='conid'>NamespaceFilter</span>-<a name="line-19"></a>    <span class='layout'>,</span> <span class='keyword'>module</span> <span class='conid'>Text</span><span class='varop'>.</span><span class='conid'>XML</span><span class='varop'>.</span><span class='conid'>HXT</span><span class='varop'>.</span><span class='conid'>DOM</span><span class='varop'>.</span><span class='conid'>NamespacePredicates</span>-<a name="line-20"></a>    <span class='layout'>)</span>-<a name="line-21"></a><span class='keyword'>where</span>-<a name="line-22"></a>-<a name="line-23"></a><span class='keyword'>import</span> <span class='conid'>Text</span><span class='varop'>.</span><span class='conid'>XML</span><span class='varop'>.</span><span class='conid'>HXT</span><span class='varop'>.</span><span class='conid'>DOM</span><span class='varop'>.</span><span class='conid'>XmlTree</span>-<a name="line-24"></a>-<a name="line-25"></a><span class='keyword'>import</span> <span class='conid'>Text</span><span class='varop'>.</span><span class='conid'>XML</span><span class='varop'>.</span><span class='conid'>HXT</span><span class='varop'>.</span><span class='conid'>DOM</span><span class='varop'>.</span><span class='conid'>NamespacePredicates</span>+<a name="line-19"></a>    <span class='layout'>)</span>+<a name="line-20"></a><span class='keyword'>where</span>+<a name="line-21"></a>+<a name="line-22"></a><span class='keyword'>import</span> <span class='conid'>Text</span><span class='varop'>.</span><span class='conid'>XML</span><span class='varop'>.</span><span class='conid'>HXT</span><span class='varop'>.</span><span class='conid'>DOM</span><span class='varop'>.</span><span class='conid'>XmlTree</span>+<a name="line-23"></a>+<a name="line-24"></a><span class='keyword'>import</span> <span class='conid'>Text</span><span class='varop'>.</span><span class='conid'>XML</span><span class='varop'>.</span><span class='conid'>HXT</span><span class='varop'>.</span><span class='conid'>DOM</span><span class='varop'>.</span><span class='conid'>Util</span>+<a name="line-25"></a>    <span class='layout'>(</span> <span class='varid'>doubles</span> <span class='layout'>)</span> <a name="line-26"></a>-<a name="line-27"></a><span class='keyword'>import</span> <span class='conid'>Text</span><span class='varop'>.</span><span class='conid'>XML</span><span class='varop'>.</span><span class='conid'>HXT</span><span class='varop'>.</span><span class='conid'>DOM</span><span class='varop'>.</span><span class='conid'>Util</span>-<a name="line-28"></a>    <span class='layout'>(</span> <span class='varid'>doubles</span> <span class='layout'>)</span>+<a name="line-27"></a><span class='comment'>-- -----------------------------------------------------------------------------</span>+<a name="line-28"></a><span class='comment'>--</span> <a name="line-29"></a>-<a name="line-30"></a><span class='comment'>-- -----------------------------------------------------------------------------</span>-<a name="line-31"></a><span class='comment'>--</span>-<a name="line-32"></a>-<a name="line-33"></a><span class='comment'>-- |</span>-<a name="line-34"></a><span class='comment'>-- Type for the namespace association list, used when propagating namespaces by</span>-<a name="line-35"></a><span class='comment'>-- modifying the 'QName' values in a tree</span>-<a name="line-36"></a>-<a name="line-37"></a><a name="NamespaceTable"></a><span class='keyword'>type</span> <span class='conid'>NamespaceTable</span> <span class='keyglyph'>=</span> <span class='conid'>NsEnv</span>-<a name="line-38"></a>-<a name="line-39"></a><span class='comment'>-- -----------------------------------------------------------------------------</span>-<a name="line-40"></a>-<a name="line-41"></a><span class='comment'>-- |</span>-<a name="line-42"></a><span class='comment'>-- propagate all namespace declarations \"xmlns:ns=...\" to all</span>-<a name="line-43"></a><span class='comment'>-- tag and attribute nodes of a document.</span>+<a name="line-30"></a><span class='comment'>-- |</span>+<a name="line-31"></a><span class='comment'>-- Type for the namespace association list, used when propagating namespaces by</span>+<a name="line-32"></a><span class='comment'>-- modifying the 'QName' values in a tree</span>+<a name="line-33"></a>+<a name="line-34"></a><a name="NamespaceTable"></a><span class='keyword'>type</span> <span class='conid'>NamespaceTable</span> <span class='keyglyph'>=</span> <span class='conid'>NsEnv</span>+<a name="line-35"></a>+<a name="line-36"></a><span class='comment'>-- -----------------------------------------------------------------------------</span>+<a name="line-37"></a>+<a name="line-38"></a><span class='comment'>-- |</span>+<a name="line-39"></a><span class='comment'>-- propagate all namespace declarations \"xmlns:ns=...\" to all</span>+<a name="line-40"></a><span class='comment'>-- tag and attribute nodes of a document.</span>+<a name="line-41"></a><span class='comment'>--</span>+<a name="line-42"></a><span class='comment'>-- This filter does not check for illegal use of namespaces.</span>+<a name="line-43"></a><span class='comment'>-- The real work is done by 'propagateNamespaceEnv'.</span> <a name="line-44"></a><span class='comment'>--</span>-<a name="line-45"></a><span class='comment'>-- This filter does not check for illegal use of namespaces.</span>-<a name="line-46"></a><span class='comment'>-- The real work is done by 'propagateNamespaceEnv'.</span>-<a name="line-47"></a><span class='comment'>--</span>-<a name="line-48"></a><span class='comment'>-- The filter may be applied repeatedly if neccessary.</span>+<a name="line-45"></a><span class='comment'>-- The filter may be applied repeatedly if neccessary.</span>+<a name="line-46"></a>+<a name="line-47"></a><a name="propagateNamespaces"></a><span class='definition'>propagateNamespaces</span>	<span class='keyglyph'>::</span> <span class='conid'>XmlFilter</span>+<a name="line-48"></a><span class='definition'>propagateNamespaces</span>	<span class='keyglyph'>=</span> <span class='varid'>propagateNamespaceEnv</span> <span class='varop'>$</span> <span class='varid'>toNsEnv</span> <span class='keyglyph'>[</span> <span class='layout'>(</span><span class='varid'>a_xml</span><span class='layout'>,</span> <span class='varid'>xmlNamespace</span><span class='layout'>)</span><span class='layout'>,</span> <span class='layout'>(</span><span class='varid'>a_xmlns</span><span class='layout'>,</span> <span class='varid'>xmlnsNamespace</span><span class='layout'>)</span> <span class='keyglyph'>]</span> <a name="line-49"></a>-<a name="line-50"></a><a name="propagateNamespaces"></a><span class='definition'>propagateNamespaces</span>	<span class='keyglyph'>::</span> <span class='conid'>XmlFilter</span>-<a name="line-51"></a><span class='definition'>propagateNamespaces</span>	<span class='keyglyph'>=</span> <span class='varid'>propagateNamespaceEnv</span> <span class='keyglyph'>[</span> <span class='layout'>(</span><span class='varid'>a_xml</span><span class='layout'>,</span> <span class='varid'>xmlNamespace</span><span class='layout'>)</span><span class='layout'>,</span> <span class='layout'>(</span><span class='varid'>a_xmlns</span><span class='layout'>,</span> <span class='varid'>xmlnsNamespace</span><span class='layout'>)</span> <span class='keyglyph'>]</span>-<a name="line-52"></a>-<a name="line-53"></a><span class='comment'>-- |</span>-<a name="line-54"></a><span class='comment'>-- attaches the namespace info given by the namespace table</span>-<a name="line-55"></a><span class='comment'>-- to a tag node and its attributes and children.</span>-<a name="line-56"></a>-<a name="line-57"></a><a name="propagateNamespaceEnv"></a><span class='definition'>propagateNamespaceEnv</span>	<span class='keyglyph'>::</span> <span class='conid'>NamespaceTable</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>XmlFilter</span>-<a name="line-58"></a><span class='definition'>propagateNamespaceEnv</span> <span class='varid'>env</span> <span class='varid'>n</span>-<a name="line-59"></a>    <span class='keyglyph'>=</span> <span class='layout'>(</span> <span class='layout'>(</span> <span class='varid'>processAttr</span> <span class='layout'>(</span><span class='varid'>attachNamespaceUrisToAttr</span> <span class='varid'>newEnv</span><span class='layout'>)</span>-<a name="line-60"></a>	  <span class='varop'>.&gt;</span>-<a name="line-61"></a>	  <span class='varid'>processChildren</span> <span class='layout'>(</span><span class='varid'>propagateNamespaceEnv</span> <span class='varid'>newEnv</span><span class='layout'>)</span>-<a name="line-62"></a>	  <span class='varop'>.&gt;</span>-<a name="line-63"></a>	  <span class='varid'>modifyQName</span> <span class='layout'>(</span><span class='varid'>setNamespace</span> <span class='varid'>newEnv</span><span class='layout'>)</span>-<a name="line-64"></a>	<span class='layout'>)</span>-<a name="line-65"></a>	<span class='varop'>`when`</span>-<a name="line-66"></a>	<span class='varid'>isXTag</span>-<a name="line-67"></a>      <span class='layout'>)</span>-<a name="line-68"></a>      <span class='varop'>$</span> <span class='varid'>n</span>-<a name="line-69"></a>    <span class='keyword'>where</span>-<a name="line-70"></a>    <span class='varid'>nsAttrs</span>	<span class='keyglyph'>=</span> <span class='varid'>getAttrl</span>				<span class='comment'>-- scan all attributes</span>-<a name="line-71"></a>		  <span class='varop'>.&gt;</span>-<a name="line-72"></a>		  <span class='varid'>isOfAttr</span> <span class='layout'>(</span> <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='layout'>(</span><span class='varid'>px</span><span class='layout'>,</span> <span class='varid'>lp</span><span class='layout'>)</span>-<a name="line-73"></a>			     <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>px</span> <span class='varop'>==</span> <span class='varid'>a_xmlns</span>		<span class='comment'>-- check for prefix or whole name is "xmlns"</span>-<a name="line-74"></a>				 <span class='varop'>&amp;&amp;</span>-<a name="line-75"></a>				 <span class='varid'>lp</span> <span class='varop'>/=</span> <span class='str'>":"</span>		<span class='comment'>-- check for none empty local part, "xmlns:" is not a legal name</span>-<a name="line-76"></a>				<span class='layout'>)</span>-<a name="line-77"></a>			     <span class='layout'>)</span>-<a name="line-78"></a>			     <span class='varop'>.</span> <span class='varid'>span</span> <span class='layout'>(</span><span class='varop'>/=</span> <span class='chr'>':'</span><span class='layout'>)</span>		<span class='comment'>-- break the name into a pair ("prefix", ":localPart")</span>-<a name="line-79"></a>			     <span class='varop'>.</span> <span class='varid'>qualifiedName</span>		<span class='comment'>-- select attribute name</span>-<a name="line-80"></a>			   <span class='layout'>)</span>-<a name="line-81"></a>		  <span class='varop'>$</span> <span class='varid'>n</span>-<a name="line-82"></a>    <span class='varid'>nsDecl</span>	<span class='keyglyph'>=</span> <span class='varid'>zip</span> <span class='layout'>(</span><span class='varid'>map</span> <span class='layout'>(</span><span class='varid'>drop</span> <span class='num'>1</span>			<span class='comment'>-- drop the ":", empty local part represents default name space</span>-<a name="line-83"></a>			    <span class='varop'>.</span> <span class='varid'>snd</span>			<span class='comment'>-- take the local part with leading ":"</span>-<a name="line-84"></a>			    <span class='varop'>.</span> <span class='varid'>span</span> <span class='layout'>(</span><span class='varop'>/=</span> <span class='chr'>':'</span><span class='layout'>)</span>		<span class='comment'>-- break it like above</span>-<a name="line-85"></a>			    <span class='varop'>.</span> <span class='varid'>nameOf</span>			<span class='comment'>-- select attribute name</span>-<a name="line-86"></a>			   <span class='layout'>)</span> <span class='varid'>nsAttrs</span><span class='layout'>)</span>-<a name="line-87"></a>		      <span class='layout'>(</span><span class='varid'>map</span> <span class='layout'>(</span><span class='varid'>xshow</span>-<a name="line-88"></a>			    <span class='varop'>.</span>-<a name="line-89"></a>			    <span class='varid'>getChildren</span>-<a name="line-90"></a>			   <span class='layout'>)</span> <span class='varid'>nsAttrs</span><span class='layout'>)</span>-<a name="line-91"></a>    <span class='varid'>newEnv</span>	<span class='keyglyph'>=</span> <span class='varid'>addEntries</span> <span class='varid'>nsDecl</span> <span class='varid'>env</span>-<a name="line-92"></a>-<a name="line-93"></a>    <span class='varid'>attachNamespaceUrisToAttr</span>	<span class='keyglyph'>::</span> <span class='conid'>NamespaceTable</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>XmlFilter</span>-<a name="line-94"></a>    <span class='varid'>attachNamespaceUrisToAttr</span> <span class='varid'>attrEnv</span>-<a name="line-95"></a>	<span class='keyglyph'>=</span> <span class='layout'>(</span> <span class='varid'>isOfAttr</span> <span class='layout'>(</span> <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='layout'>(</span><span class='varid'>px</span><span class='layout'>,</span> <span class='varid'>lp</span><span class='layout'>)</span>-<a name="line-96"></a>			<span class='keyglyph'>-&gt;</span> <span class='layout'>(</span> <span class='layout'>(</span><span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>null</span> <span class='varop'>.</span> <span class='varid'>drop</span> <span class='num'>1</span><span class='layout'>)</span> <span class='varid'>lp</span>	<span class='comment'>-- prefix and local part must not be empty</span>-<a name="line-97"></a>			     <span class='varop'>&amp;&amp;</span>-<a name="line-98"></a>			     <span class='layout'>(</span><span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>null</span><span class='layout'>)</span> <span class='varid'>px</span>-<a name="line-99"></a>			   <span class='layout'>)</span>-<a name="line-100"></a>		       <span class='layout'>)</span>-<a name="line-101"></a>		       <span class='varop'>.</span> <span class='varid'>span</span> <span class='layout'>(</span><span class='varop'>/=</span> <span class='chr'>':'</span><span class='layout'>)</span>			<span class='comment'>-- break the name into a pair ("prefix", ":localPart")</span>-<a name="line-102"></a>		       <span class='varop'>.</span> <span class='varid'>qualifiedName</span>			<span class='comment'>-- select attribute name</span>-<a name="line-103"></a>		     <span class='layout'>)</span>-<a name="line-104"></a>	    <span class='varop'>`guards`</span>-<a name="line-105"></a>	    <span class='varid'>modifyQName</span> <span class='layout'>(</span><span class='varid'>setNamespace</span> <span class='varid'>attrEnv</span><span class='layout'>)</span>-<a name="line-106"></a>	  <span class='layout'>)</span>-<a name="line-107"></a>          <span class='varop'>`orElse`</span>-<a name="line-108"></a>	  <span class='layout'>(</span> <span class='varid'>modifyQName</span> <span class='layout'>(</span><span class='varid'>const</span> <span class='varid'>xmlnsQN</span><span class='layout'>)</span>			<span class='comment'>-- "xmlns" ist the only attr name without prefix but with an associated namespace URI</span>-<a name="line-109"></a>	    <span class='varop'>`when`</span>-<a name="line-110"></a>	    <span class='varid'>isAttr</span> <span class='varid'>a_xmlns</span>-<a name="line-111"></a>	  <span class='layout'>)</span>-<a name="line-112"></a>-<a name="line-113"></a><span class='comment'>-- -----------------------------------------------------------------------------</span>-<a name="line-114"></a>-<a name="line-115"></a><span class='comment'>-- |</span>-<a name="line-116"></a><span class='comment'>-- validate the namespace constraints in a whole tree.</span>-<a name="line-117"></a><span class='comment'>-- result is the list of errors concerning namespaces.</span>-<a name="line-118"></a><span class='comment'>-- Work is done by applying 'validate1Namespaces' to all nodes.</span>-<a name="line-119"></a><span class='comment'>-- Predicates 'isWellformedQName', 'isWellformedQualifiedName', 'isDeclaredNamespace'</span>-<a name="line-120"></a><span class='comment'>-- and 'isWellformedNSDecl' are applied to the appropriate tags and attributes.</span>-<a name="line-121"></a>-<a name="line-122"></a><a name="validateNamespaces"></a><span class='definition'>validateNamespaces</span>	<span class='keyglyph'>::</span> <span class='conid'>XmlFilter</span>-<a name="line-123"></a><span class='definition'>validateNamespaces</span>-<a name="line-124"></a>    <span class='keyglyph'>=</span> <span class='varid'>choice</span> <span class='keyglyph'>[</span> <span class='varid'>isRoot</span>-<a name="line-125"></a>               <span class='conop'>:-&gt;</span> <span class='varid'>getChildren</span> <span class='varop'>.&gt;</span> <span class='varid'>validateNamespaces</span>		<span class='comment'>-- root is correct by definition</span>-<a name="line-126"></a>	     <span class='layout'>,</span> <span class='varid'>this</span>-<a name="line-127"></a>	       <span class='conop'>:-&gt;</span> <span class='varid'>multi</span> <span class='varid'>validate1Namespaces</span>-<a name="line-128"></a>	     <span class='keyglyph'>]</span>+<a name="line-50"></a><span class='comment'>-- |</span>+<a name="line-51"></a><span class='comment'>-- attaches the namespace info given by the namespace table</span>+<a name="line-52"></a><span class='comment'>-- to a tag node and its attributes and children.</span>+<a name="line-53"></a>+<a name="line-54"></a><a name="propagateNamespaceEnv"></a><span class='definition'>propagateNamespaceEnv</span>	<span class='keyglyph'>::</span> <span class='conid'>NamespaceTable</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>XmlFilter</span>+<a name="line-55"></a><span class='definition'>propagateNamespaceEnv</span> <span class='varid'>env</span> <span class='varid'>n</span>+<a name="line-56"></a>    <span class='keyglyph'>=</span> <span class='layout'>(</span> <span class='layout'>(</span> <span class='varid'>processAttr</span> <span class='layout'>(</span><span class='varid'>attachNamespaceUrisToAttr</span> <span class='varid'>newEnv</span><span class='layout'>)</span>+<a name="line-57"></a>	  <span class='varop'>.&gt;</span>+<a name="line-58"></a>	  <span class='varid'>processChildren</span> <span class='layout'>(</span><span class='varid'>propagateNamespaceEnv</span> <span class='varid'>newEnv</span><span class='layout'>)</span>+<a name="line-59"></a>	  <span class='varop'>.&gt;</span>+<a name="line-60"></a>	  <span class='varid'>modifyQName</span> <span class='layout'>(</span><span class='varid'>setNamespace</span> <span class='varid'>newEnv</span><span class='layout'>)</span>+<a name="line-61"></a>	<span class='layout'>)</span>+<a name="line-62"></a>	<span class='varop'>`when`</span>+<a name="line-63"></a>	<span class='varid'>isXTag</span>+<a name="line-64"></a>      <span class='layout'>)</span>+<a name="line-65"></a>      <span class='varop'>$</span> <span class='varid'>n</span>+<a name="line-66"></a>    <span class='keyword'>where</span>+<a name="line-67"></a>    <span class='varid'>nsAttrs</span>	<span class='keyglyph'>=</span> <span class='varid'>getAttrl</span>				<span class='comment'>-- scan all attributes</span>+<a name="line-68"></a>		  <span class='varop'>.&gt;</span>+<a name="line-69"></a>		  <span class='varid'>isOfAttr</span> <span class='layout'>(</span> <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='layout'>(</span><span class='varid'>px</span><span class='layout'>,</span> <span class='varid'>lp</span><span class='layout'>)</span>+<a name="line-70"></a>			     <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span><span class='varid'>px</span> <span class='varop'>==</span> <span class='varid'>a_xmlns</span>		<span class='comment'>-- check for prefix or whole name is "xmlns"</span>+<a name="line-71"></a>				 <span class='varop'>&amp;&amp;</span>+<a name="line-72"></a>				 <span class='varid'>lp</span> <span class='varop'>/=</span> <span class='str'>":"</span>		<span class='comment'>-- check for none empty local part, "xmlns:" is not a legal name</span>+<a name="line-73"></a>				<span class='layout'>)</span>+<a name="line-74"></a>			     <span class='layout'>)</span>+<a name="line-75"></a>			     <span class='varop'>.</span> <span class='varid'>span</span> <span class='layout'>(</span><span class='varop'>/=</span> <span class='chr'>':'</span><span class='layout'>)</span>		<span class='comment'>-- break the name into a pair ("prefix", ":localPart")</span>+<a name="line-76"></a>			     <span class='varop'>.</span> <span class='varid'>qualifiedName</span>		<span class='comment'>-- select attribute name</span>+<a name="line-77"></a>			   <span class='layout'>)</span>+<a name="line-78"></a>		  <span class='varop'>$</span> <span class='varid'>n</span>+<a name="line-79"></a>    <span class='varid'>nsDecl</span>	<span class='keyglyph'>=</span> <span class='varid'>zip</span> <span class='layout'>(</span><span class='varid'>map</span> <span class='layout'>(</span><span class='varid'>drop</span> <span class='num'>1</span>			<span class='comment'>-- drop the ":", empty local part represents default name space</span>+<a name="line-80"></a>			    <span class='varop'>.</span> <span class='varid'>snd</span>			<span class='comment'>-- take the local part with leading ":"</span>+<a name="line-81"></a>			    <span class='varop'>.</span> <span class='varid'>span</span> <span class='layout'>(</span><span class='varop'>/=</span> <span class='chr'>':'</span><span class='layout'>)</span>		<span class='comment'>-- break it like above</span>+<a name="line-82"></a>			    <span class='varop'>.</span> <span class='varid'>nameOf</span>			<span class='comment'>-- select attribute name</span>+<a name="line-83"></a>			   <span class='layout'>)</span> <span class='varid'>nsAttrs</span><span class='layout'>)</span>+<a name="line-84"></a>		      <span class='layout'>(</span><span class='varid'>map</span> <span class='layout'>(</span><span class='varid'>xshow</span>+<a name="line-85"></a>			    <span class='varop'>.</span>+<a name="line-86"></a>			    <span class='varid'>getChildren</span>+<a name="line-87"></a>			   <span class='layout'>)</span> <span class='varid'>nsAttrs</span><span class='layout'>)</span>+<a name="line-88"></a>    <span class='varid'>newEnv</span>	<span class='keyglyph'>=</span> <span class='varid'>addEntries</span> <span class='layout'>(</span><span class='varid'>toNsEnv</span> <span class='varid'>nsDecl</span><span class='layout'>)</span> <span class='varid'>env</span>+<a name="line-89"></a>+<a name="line-90"></a>    <span class='varid'>attachNamespaceUrisToAttr</span>	<span class='keyglyph'>::</span> <span class='conid'>NamespaceTable</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>XmlFilter</span>+<a name="line-91"></a>    <span class='varid'>attachNamespaceUrisToAttr</span> <span class='varid'>attrEnv</span>+<a name="line-92"></a>	<span class='keyglyph'>=</span> <span class='layout'>(</span> <span class='varid'>isOfAttr</span> <span class='layout'>(</span> <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='layout'>(</span><span class='varid'>px</span><span class='layout'>,</span> <span class='varid'>lp</span><span class='layout'>)</span>+<a name="line-93"></a>			<span class='keyglyph'>-&gt;</span> <span class='layout'>(</span> <span class='layout'>(</span><span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>null</span> <span class='varop'>.</span> <span class='varid'>drop</span> <span class='num'>1</span><span class='layout'>)</span> <span class='varid'>lp</span>	<span class='comment'>-- prefix and local part must not be empty</span>+<a name="line-94"></a>			     <span class='varop'>&amp;&amp;</span>+<a name="line-95"></a>			     <span class='layout'>(</span><span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>null</span><span class='layout'>)</span> <span class='varid'>px</span>+<a name="line-96"></a>			   <span class='layout'>)</span>+<a name="line-97"></a>		       <span class='layout'>)</span>+<a name="line-98"></a>		       <span class='varop'>.</span> <span class='varid'>span</span> <span class='layout'>(</span><span class='varop'>/=</span> <span class='chr'>':'</span><span class='layout'>)</span>			<span class='comment'>-- break the name into a pair ("prefix", ":localPart")</span>+<a name="line-99"></a>		       <span class='varop'>.</span> <span class='varid'>qualifiedName</span>			<span class='comment'>-- select attribute name</span>+<a name="line-100"></a>		     <span class='layout'>)</span>+<a name="line-101"></a>	    <span class='varop'>`guards`</span>+<a name="line-102"></a>	    <span class='varid'>modifyQName</span> <span class='layout'>(</span><span class='varid'>setNamespace</span> <span class='varid'>attrEnv</span><span class='layout'>)</span>+<a name="line-103"></a>	  <span class='layout'>)</span>+<a name="line-104"></a>          <span class='varop'>`orElse`</span>+<a name="line-105"></a>	  <span class='layout'>(</span> <span class='varid'>modifyQName</span> <span class='layout'>(</span><span class='varid'>const</span> <span class='varid'>xmlnsQN</span><span class='layout'>)</span>			<span class='comment'>-- "xmlns" ist the only attr name without prefix but with an associated namespace URI</span>+<a name="line-106"></a>	    <span class='varop'>`when`</span>+<a name="line-107"></a>	    <span class='varid'>isAttr</span> <span class='varid'>a_xmlns</span>+<a name="line-108"></a>	  <span class='layout'>)</span>+<a name="line-109"></a>+<a name="line-110"></a><span class='comment'>-- -----------------------------------------------------------------------------</span>+<a name="line-111"></a>+<a name="line-112"></a><span class='comment'>-- |</span>+<a name="line-113"></a><span class='comment'>-- validate the namespace constraints in a whole tree.</span>+<a name="line-114"></a><span class='comment'>-- result is the list of errors concerning namespaces.</span>+<a name="line-115"></a><span class='comment'>-- Work is done by applying 'validate1Namespaces' to all nodes.</span>+<a name="line-116"></a><span class='comment'>-- Predicates 'isWellformedQName', 'isWellformedQualifiedName', 'isDeclaredNamespace'</span>+<a name="line-117"></a><span class='comment'>-- and 'isWellformedNSDecl' are applied to the appropriate tags and attributes.</span>+<a name="line-118"></a>+<a name="line-119"></a><a name="validateNamespaces"></a><span class='definition'>validateNamespaces</span>	<span class='keyglyph'>::</span> <span class='conid'>XmlFilter</span>+<a name="line-120"></a><span class='definition'>validateNamespaces</span>+<a name="line-121"></a>    <span class='keyglyph'>=</span> <span class='varid'>choice</span> <span class='keyglyph'>[</span> <span class='varid'>isRoot</span>+<a name="line-122"></a>               <span class='conop'>:-&gt;</span> <span class='varid'>getChildren</span> <span class='varop'>.&gt;</span> <span class='varid'>validateNamespaces</span>		<span class='comment'>-- root is correct by definition</span>+<a name="line-123"></a>	     <span class='layout'>,</span> <span class='varid'>this</span>+<a name="line-124"></a>	       <span class='conop'>:-&gt;</span> <span class='varid'>multi</span> <span class='varid'>validate1Namespaces</span>+<a name="line-125"></a>	     <span class='keyglyph'>]</span>+<a name="line-126"></a>+<a name="line-127"></a><span class='comment'>-- |</span>+<a name="line-128"></a><span class='comment'>-- a single node for namespace constrains.</span> <a name="line-129"></a>-<a name="line-130"></a><span class='comment'>-- |</span>-<a name="line-131"></a><span class='comment'>-- a single node for namespace constrains.</span>-<a name="line-132"></a>-<a name="line-133"></a><a name="validate1Namespaces"></a><span class='definition'>validate1Namespaces</span>	<span class='keyglyph'>::</span> <span class='conid'>XmlFilter</span>-<a name="line-134"></a><span class='definition'>validate1Namespaces</span>-<a name="line-135"></a>    <span class='keyglyph'>=</span> <span class='varid'>choice</span> <span class='keyglyph'>[</span> <span class='varid'>isXTag</span>-<a name="line-136"></a>	       <span class='conop'>:-&gt;</span>-<a name="line-137"></a>	       <span class='varid'>cat</span> <span class='keyglyph'>[</span> <span class='varid'>isOfTag</span> <span class='layout'>(</span> <span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>isWellformedQName</span> <span class='layout'>)</span>-<a name="line-138"></a>		     <span class='varop'>`guards`</span>-<a name="line-139"></a>		     <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='varid'>n</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>err</span> <span class='layout'>(</span><span class='str'>"tag name "</span> <span class='varop'>++</span> <span class='varid'>show</span> <span class='layout'>(</span><span class='varid'>nameOf</span> <span class='varid'>n</span><span class='layout'>)</span> <span class='varop'>++</span> <span class='str'>" is not a wellformed qualified name"</span><span class='layout'>)</span> <span class='varid'>n</span> <span class='layout'>)</span>-<a name="line-140"></a>-<a name="line-141"></a>		   <span class='layout'>,</span> <span class='varid'>isOfTag</span> <span class='layout'>(</span> <span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>isDeclaredNamespace</span> <span class='layout'>)</span>-<a name="line-142"></a>		     <span class='varop'>`guards`</span>-<a name="line-143"></a>		     <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='varid'>n</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>err</span> <span class='layout'>(</span><span class='str'>"namespace for prefix in tag name "</span> <span class='varop'>++</span> <span class='varid'>show</span> <span class='layout'>(</span><span class='varid'>nameOf</span> <span class='varid'>n</span><span class='layout'>)</span> <span class='varop'>++</span> <span class='str'>" is undefined"</span><span class='layout'>)</span> <span class='varid'>n</span> <span class='layout'>)</span>-<a name="line-144"></a>-<a name="line-145"></a>                   <span class='layout'>,</span> <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='varid'>n</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span> <span class='keyword'>let</span>-<a name="line-146"></a>		               <span class='varid'>dbls</span> <span class='keyglyph'>=</span> <span class='varid'>doubles</span> <span class='layout'>(</span><span class='layout'>(</span><span class='varid'>map</span> <span class='varid'>universalNameOf</span> <span class='varop'>.</span> <span class='varid'>getAttrl</span><span class='layout'>)</span> <span class='varid'>n</span><span class='layout'>)</span>-<a name="line-147"></a>		               <span class='keyword'>in</span>-<a name="line-148"></a>		               <span class='keyword'>if</span> <span class='varid'>null</span> <span class='varid'>dbls</span>-<a name="line-149"></a>		               <span class='keyword'>then</span> <span class='varid'>none</span>-<a name="line-150"></a>                               <span class='keyword'>else</span> <span class='varid'>err</span> <span class='layout'>(</span> <span class='str'>"multiple occurences of universal names for attributes of tag "</span>-<a name="line-151"></a>					  <span class='varop'>++</span> <span class='varid'>show</span> <span class='layout'>(</span><span class='varid'>nameOf</span> <span class='varid'>n</span><span class='layout'>)</span>-<a name="line-152"></a>					  <span class='varop'>++</span> <span class='str'>" : "</span> <span class='varop'>++</span> <span class='varid'>foldr1</span> <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='varid'>x</span> <span class='varid'>y</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>x</span> <span class='varop'>++</span> <span class='str'>", "</span> <span class='varop'>++</span> <span class='varid'>y</span><span class='layout'>)</span> <span class='layout'>(</span><span class='varid'>map</span> <span class='varid'>show</span> <span class='varid'>dbls</span><span class='layout'>)</span>-<a name="line-153"></a>					<span class='layout'>)</span>-<a name="line-154"></a>			     <span class='layout'>)</span> <span class='varop'>$</span> <span class='varid'>n</span>-<a name="line-155"></a>		     <span class='layout'>)</span>+<a name="line-130"></a><a name="validate1Namespaces"></a><span class='definition'>validate1Namespaces</span>	<span class='keyglyph'>::</span> <span class='conid'>XmlFilter</span>+<a name="line-131"></a><span class='definition'>validate1Namespaces</span>+<a name="line-132"></a>    <span class='keyglyph'>=</span> <span class='varid'>choice</span> <span class='keyglyph'>[</span> <span class='varid'>isXTag</span>+<a name="line-133"></a>	       <span class='conop'>:-&gt;</span>+<a name="line-134"></a>	       <span class='varid'>cat</span> <span class='keyglyph'>[</span> <span class='varid'>isOfTag</span> <span class='layout'>(</span> <span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>isWellformedQName</span> <span class='layout'>)</span>+<a name="line-135"></a>		     <span class='varop'>`guards`</span>+<a name="line-136"></a>		     <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='varid'>n</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>err</span> <span class='layout'>(</span><span class='str'>"tag name "</span> <span class='varop'>++</span> <span class='varid'>show</span> <span class='layout'>(</span><span class='varid'>nameOf</span> <span class='varid'>n</span><span class='layout'>)</span> <span class='varop'>++</span> <span class='str'>" is not a wellformed qualified name"</span><span class='layout'>)</span> <span class='varid'>n</span> <span class='layout'>)</span>+<a name="line-137"></a>+<a name="line-138"></a>		   <span class='layout'>,</span> <span class='varid'>isOfTag</span> <span class='layout'>(</span> <span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>isDeclaredNamespace</span> <span class='layout'>)</span>+<a name="line-139"></a>		     <span class='varop'>`guards`</span>+<a name="line-140"></a>		     <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='varid'>n</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>err</span> <span class='layout'>(</span><span class='str'>"namespace for prefix in tag name "</span> <span class='varop'>++</span> <span class='varid'>show</span> <span class='layout'>(</span><span class='varid'>nameOf</span> <span class='varid'>n</span><span class='layout'>)</span> <span class='varop'>++</span> <span class='str'>" is undefined"</span><span class='layout'>)</span> <span class='varid'>n</span> <span class='layout'>)</span>+<a name="line-141"></a>+<a name="line-142"></a>                   <span class='layout'>,</span> <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='varid'>n</span> <span class='keyglyph'>-&gt;</span> <span class='layout'>(</span> <span class='keyword'>let</span>+<a name="line-143"></a>		               <span class='varid'>dbls</span> <span class='keyglyph'>=</span> <span class='varid'>doubles</span> <span class='layout'>(</span><span class='layout'>(</span><span class='varid'>map</span> <span class='varid'>universalNameOf</span> <span class='varop'>.</span> <span class='varid'>getAttrl</span><span class='layout'>)</span> <span class='varid'>n</span><span class='layout'>)</span>+<a name="line-144"></a>		               <span class='keyword'>in</span>+<a name="line-145"></a>		               <span class='keyword'>if</span> <span class='varid'>null</span> <span class='varid'>dbls</span>+<a name="line-146"></a>		               <span class='keyword'>then</span> <span class='varid'>none</span>+<a name="line-147"></a>                               <span class='keyword'>else</span> <span class='varid'>err</span> <span class='layout'>(</span> <span class='str'>"multiple occurences of universal names for attributes of tag "</span>+<a name="line-148"></a>					  <span class='varop'>++</span> <span class='varid'>show</span> <span class='layout'>(</span><span class='varid'>nameOf</span> <span class='varid'>n</span><span class='layout'>)</span>+<a name="line-149"></a>					  <span class='varop'>++</span> <span class='str'>" : "</span> <span class='varop'>++</span> <span class='varid'>foldr1</span> <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='varid'>x</span> <span class='varid'>y</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>x</span> <span class='varop'>++</span> <span class='str'>", "</span> <span class='varop'>++</span> <span class='varid'>y</span><span class='layout'>)</span> <span class='layout'>(</span><span class='varid'>map</span> <span class='varid'>show</span> <span class='varid'>dbls</span><span class='layout'>)</span>+<a name="line-150"></a>					<span class='layout'>)</span>+<a name="line-151"></a>			     <span class='layout'>)</span> <span class='varop'>$</span> <span class='varid'>n</span>+<a name="line-152"></a>		     <span class='layout'>)</span>+<a name="line-153"></a>+<a name="line-154"></a>		   <span class='layout'>,</span> <span class='varid'>getAttrl</span> <span class='varop'>.&gt;</span> <span class='varid'>validate1Namespaces</span>+<a name="line-155"></a>		   <span class='keyglyph'>]</span> <a name="line-156"></a>-<a name="line-157"></a>		   <span class='layout'>,</span> <span class='varid'>getAttrl</span> <span class='varop'>.&gt;</span> <span class='varid'>validate1Namespaces</span>-<a name="line-158"></a>		   <span class='keyglyph'>]</span>-<a name="line-159"></a>-<a name="line-160"></a>	     <span class='layout'>,</span> <span class='varid'>isXAttr</span>-<a name="line-161"></a>	       <span class='conop'>:-&gt;</span>-<a name="line-162"></a>	       <span class='varid'>cat</span> <span class='keyglyph'>[</span> <span class='varid'>isOfAttr</span> <span class='layout'>(</span> <span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>isWellformedQName</span> <span class='layout'>)</span>-<a name="line-163"></a>		     <span class='varop'>`guards`</span>-<a name="line-164"></a>		     <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='varid'>n</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>err</span> <span class='layout'>(</span><span class='str'>"attribute name "</span> <span class='varop'>++</span> <span class='varid'>show</span> <span class='layout'>(</span><span class='varid'>nameOf</span> <span class='varid'>n</span><span class='layout'>)</span> <span class='varop'>++</span> <span class='str'>" is not a wellformed qualified name"</span><span class='layout'>)</span> <span class='varid'>n</span> <span class='layout'>)</span>-<a name="line-165"></a>-<a name="line-166"></a>		   <span class='layout'>,</span> <span class='varid'>isOfAttr</span> <span class='layout'>(</span> <span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>isDeclaredNamespace</span> <span class='layout'>)</span>-<a name="line-167"></a>	             <span class='varop'>`guards`</span>-<a name="line-168"></a>		     <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='varid'>n</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>err</span> <span class='layout'>(</span><span class='str'>"namespace for prefix in attribute name "</span> <span class='varop'>++</span> <span class='varid'>show</span> <span class='layout'>(</span><span class='varid'>nameOf</span> <span class='varid'>n</span><span class='layout'>)</span> <span class='varop'>++</span> <span class='str'>" is undefined"</span><span class='layout'>)</span> <span class='varid'>n</span> <span class='layout'>)</span>-<a name="line-169"></a>-<a name="line-170"></a>                   <span class='layout'>,</span> <span class='layout'>(</span> <span class='varid'>hasPrefix</span> <span class='varid'>a_xmlns</span> <span class='varop'>.&gt;</span> <span class='varid'>neg</span> <span class='layout'>(</span><span class='varid'>xmlTreesToText</span> <span class='varop'>.</span> <span class='varid'>getChildren</span><span class='layout'>)</span> <span class='layout'>)</span>-<a name="line-171"></a>		     <span class='varop'>`guards`</span>-<a name="line-172"></a>		     <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='varid'>n</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>err</span> <span class='layout'>(</span><span class='str'>"namespace value of namespace declaration for "</span> <span class='varop'>++</span> <span class='varid'>show</span> <span class='layout'>(</span><span class='varid'>nameOf</span> <span class='varid'>n</span><span class='layout'>)</span> <span class='varop'>++</span> <span class='str'>" has no value"</span><span class='layout'>)</span> <span class='varid'>n</span> <span class='layout'>)</span>-<a name="line-173"></a>-<a name="line-174"></a>                   <span class='layout'>,</span> <span class='varid'>isOfAttr</span> <span class='layout'>(</span> <span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>isWellformedNSDecl</span> <span class='layout'>)</span>-<a name="line-175"></a>		     <span class='varop'>`guards`</span>-<a name="line-176"></a>		     <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='varid'>n</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>err</span> <span class='layout'>(</span><span class='str'>"illegal namespace declaration with reserved prefix "</span> <span class='varop'>++</span> <span class='varid'>show</span> <span class='layout'>(</span><span class='varid'>localPartOf</span> <span class='varid'>n</span><span class='layout'>)</span> <span class='varop'>++</span> <span class='str'>" starting with \"xml\""</span><span class='layout'>)</span> <span class='varid'>n</span> <span class='layout'>)</span>-<a name="line-177"></a>	           <span class='keyglyph'>]</span>-<a name="line-178"></a>-<a name="line-179"></a>             <span class='layout'>,</span> <span class='varid'>isXDTD</span>-<a name="line-180"></a>	       <span class='conop'>:-&gt;</span>-<a name="line-181"></a>	       <span class='varid'>cat</span> <span class='keyglyph'>[</span> <span class='layout'>(</span> <span class='layout'>(</span> <span class='varid'>isDoctype</span> <span class='varop'>+++</span> <span class='varid'>isAttlist</span> <span class='varop'>+++</span> <span class='varid'>isElement</span> <span class='varop'>+++</span> <span class='varid'>isDTDName</span> <span class='layout'>)</span>-<a name="line-182"></a>		       <span class='varop'>.&gt;</span>-<a name="line-183"></a>		       <span class='varid'>isOf</span> <span class='layout'>(</span> <span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>isWellformedQualifiedName</span> <span class='varop'>.</span> <span class='varid'>valueOfDTD</span> <span class='varid'>a_name</span> <span class='layout'>)</span>-<a name="line-184"></a>		     <span class='layout'>)</span>-<a name="line-185"></a>		     <span class='varop'>`guards`</span>-<a name="line-186"></a>                     <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='varid'>n</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>err</span> <span class='layout'>(</span><span class='str'>"a DTD part contains a not wellformed qualified Name: "</span> <span class='varop'>++</span> <span class='varid'>show</span> <span class='layout'>(</span><span class='varid'>valueOfDTD</span> <span class='varid'>a_name</span> <span class='varid'>n</span><span class='layout'>)</span><span class='layout'>)</span> <span class='varid'>n</span> <span class='layout'>)</span>-<a name="line-187"></a>-<a name="line-188"></a>		   <span class='layout'>,</span> <span class='layout'>(</span> <span class='varid'>isAttlist</span>-<a name="line-189"></a>		       <span class='varop'>.&gt;</span>-<a name="line-190"></a>		       <span class='varid'>isOf</span> <span class='layout'>(</span> <span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>isWellformedQualifiedName</span> <span class='varop'>.</span> <span class='varid'>valueOfDTD</span> <span class='varid'>a_value</span> <span class='layout'>)</span>-<a name="line-191"></a>		     <span class='layout'>)</span>-<a name="line-192"></a>		     <span class='varop'>`guards`</span>-<a name="line-193"></a>                     <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='varid'>n</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>err</span> <span class='layout'>(</span><span class='str'>"an ATTLIST declaration contains as attribute name a not wellformed qualified Name: "</span> <span class='varop'>++</span> <span class='varid'>show</span> <span class='layout'>(</span><span class='varid'>valueOfDTD</span> <span class='varid'>a_value</span> <span class='varid'>n</span><span class='layout'>)</span><span class='layout'>)</span> <span class='varid'>n</span> <span class='layout'>)</span>-<a name="line-194"></a>-<a name="line-195"></a>                   <span class='layout'>,</span> <span class='layout'>(</span> <span class='layout'>(</span> <span class='varid'>isEntity</span> <span class='varop'>+++</span> <span class='varid'>isParameterEntity</span> <span class='varop'>+++</span> <span class='varid'>isNotation</span> <span class='layout'>)</span>-<a name="line-196"></a>		       <span class='varop'>.&gt;</span>-<a name="line-197"></a>		       <span class='varid'>isOf</span> <span class='layout'>(</span> <span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>isNCName</span> <span class='varop'>.</span> <span class='varid'>valueOfDTD</span> <span class='varid'>a_name</span> <span class='layout'>)</span>-<a name="line-198"></a>		     <span class='layout'>)</span>-<a name="line-199"></a>                     <span class='varop'>`guards`</span>-<a name="line-200"></a>                     <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='varid'>n</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>err</span> <span class='layout'>(</span><span class='str'>"an entity or notation declaration contains a not wellformed NCName: "</span> <span class='varop'>++</span> <span class='varid'>show</span> <span class='layout'>(</span><span class='varid'>valueOfDTD</span> <span class='varid'>a_name</span> <span class='varid'>n</span><span class='layout'>)</span><span class='layout'>)</span> <span class='varid'>n</span> <span class='layout'>)</span>-<a name="line-201"></a>		   <span class='keyglyph'>]</span>-<a name="line-202"></a>             <span class='layout'>,</span> <span class='varid'>isXPi</span>-<a name="line-203"></a>	       <span class='conop'>:-&gt;</span>-<a name="line-204"></a>	       <span class='layout'>(</span> <span class='varid'>isOf</span> <span class='layout'>(</span> <span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>isNCName</span> <span class='varop'>.</span> <span class='varid'>nameOf</span> <span class='layout'>)</span>-<a name="line-205"></a>	         <span class='varop'>`guards`</span>-<a name="line-206"></a>                 <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='varid'>n</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>err</span> <span class='layout'>(</span><span class='str'>"a PI contains a not wellformed NCName: "</span> <span class='varop'>++</span> <span class='varid'>show</span> <span class='layout'>(</span><span class='varid'>nameOf</span> <span class='varid'>n</span><span class='layout'>)</span><span class='layout'>)</span> <span class='varid'>n</span> <span class='layout'>)</span>-<a name="line-207"></a>	       <span class='layout'>)</span>-<a name="line-208"></a>	     <span class='keyglyph'>]</span>-<a name="line-209"></a>-<a name="line-210"></a><span class='comment'>-- -----------------------------------------------------------------------------</span>-<a name="line-211"></a>-<a name="line-212"></a><a name="isNamespaceDecl"></a><span class='definition'>isNamespaceDecl</span>	<span class='keyglyph'>::</span> <span class='conid'>XmlFilter</span>-<a name="line-213"></a><span class='definition'>isNamespaceDecl</span>-<a name="line-214"></a>    <span class='keyglyph'>=</span> <span class='varid'>isOfAttr</span> <span class='varid'>xmlnsName</span>-<a name="line-215"></a>      <span class='keyword'>where</span>-<a name="line-216"></a>      <span class='varid'>xmlnsName</span>	<span class='keyglyph'>::</span> <span class='conid'>AttrName</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>Bool</span>-<a name="line-217"></a>      <span class='varid'>xmlnsName</span> <span class='varid'>a</span>-<a name="line-218"></a>	  <span class='keyglyph'>=</span> <span class='varid'>px</span> <span class='varop'>==</span> <span class='varid'>a_xmlns</span>-<a name="line-219"></a>	    <span class='varop'>&amp;&amp;</span>-<a name="line-220"></a>	    <span class='layout'>(</span> <span class='varid'>null</span> <span class='varid'>ln</span> <span class='varop'>||</span> <span class='varid'>head</span> <span class='varid'>ln</span> <span class='varop'>==</span> <span class='chr'>':'</span><span class='layout'>)</span>-<a name="line-221"></a>	  <span class='keyword'>where</span>-<a name="line-222"></a>	  <span class='layout'>(</span><span class='varid'>px</span><span class='layout'>,</span> <span class='varid'>ln</span><span class='layout'>)</span> <span class='keyglyph'>=</span> <span class='varid'>splitAt</span> <span class='num'>5</span> <span class='varop'>.</span> <span class='varid'>qualifiedName</span> <span class='varop'>$</span> <span class='varid'>a</span>-<a name="line-223"></a>-<a name="line-224"></a><span class='comment'>-- -----------------------------------------------------------------------------</span>+<a name="line-157"></a>	     <span class='layout'>,</span> <span class='varid'>isXAttr</span>+<a name="line-158"></a>	       <span class='conop'>:-&gt;</span>+<a name="line-159"></a>	       <span class='varid'>cat</span> <span class='keyglyph'>[</span> <span class='varid'>isOfAttr</span> <span class='layout'>(</span> <span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>isWellformedQName</span> <span class='layout'>)</span>+<a name="line-160"></a>		     <span class='varop'>`guards`</span>+<a name="line-161"></a>		     <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='varid'>n</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>err</span> <span class='layout'>(</span><span class='str'>"attribute name "</span> <span class='varop'>++</span> <span class='varid'>show</span> <span class='layout'>(</span><span class='varid'>nameOf</span> <span class='varid'>n</span><span class='layout'>)</span> <span class='varop'>++</span> <span class='str'>" is not a wellformed qualified name"</span><span class='layout'>)</span> <span class='varid'>n</span> <span class='layout'>)</span>+<a name="line-162"></a>+<a name="line-163"></a>		   <span class='layout'>,</span> <span class='varid'>isOfAttr</span> <span class='layout'>(</span> <span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>isDeclaredNamespace</span> <span class='layout'>)</span>+<a name="line-164"></a>	             <span class='varop'>`guards`</span>+<a name="line-165"></a>		     <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='varid'>n</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>err</span> <span class='layout'>(</span><span class='str'>"namespace for prefix in attribute name "</span> <span class='varop'>++</span> <span class='varid'>show</span> <span class='layout'>(</span><span class='varid'>nameOf</span> <span class='varid'>n</span><span class='layout'>)</span> <span class='varop'>++</span> <span class='str'>" is undefined"</span><span class='layout'>)</span> <span class='varid'>n</span> <span class='layout'>)</span>+<a name="line-166"></a>+<a name="line-167"></a>                   <span class='layout'>,</span> <span class='layout'>(</span> <span class='varid'>hasPrefix</span> <span class='varid'>a_xmlns</span> <span class='varop'>.&gt;</span> <span class='varid'>neg</span> <span class='layout'>(</span><span class='varid'>xmlTreesToText</span> <span class='varop'>.</span> <span class='varid'>getChildren</span><span class='layout'>)</span> <span class='layout'>)</span>+<a name="line-168"></a>		     <span class='varop'>`guards`</span>+<a name="line-169"></a>		     <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='varid'>n</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>err</span> <span class='layout'>(</span><span class='str'>"namespace value of namespace declaration for "</span> <span class='varop'>++</span> <span class='varid'>show</span> <span class='layout'>(</span><span class='varid'>nameOf</span> <span class='varid'>n</span><span class='layout'>)</span> <span class='varop'>++</span> <span class='str'>" has no value"</span><span class='layout'>)</span> <span class='varid'>n</span> <span class='layout'>)</span>+<a name="line-170"></a>+<a name="line-171"></a>                   <span class='layout'>,</span> <span class='varid'>isOfAttr</span> <span class='layout'>(</span> <span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>isWellformedNSDecl</span> <span class='layout'>)</span>+<a name="line-172"></a>		     <span class='varop'>`guards`</span>+<a name="line-173"></a>		     <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='varid'>n</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>err</span> <span class='layout'>(</span><span class='str'>"illegal namespace declaration with reserved prefix "</span> <span class='varop'>++</span> <span class='varid'>show</span> <span class='layout'>(</span><span class='varid'>localPartOf</span> <span class='varid'>n</span><span class='layout'>)</span> <span class='varop'>++</span> <span class='str'>" starting with \"xml\""</span><span class='layout'>)</span> <span class='varid'>n</span> <span class='layout'>)</span>+<a name="line-174"></a>	           <span class='keyglyph'>]</span>+<a name="line-175"></a>+<a name="line-176"></a>             <span class='layout'>,</span> <span class='varid'>isXDTD</span>+<a name="line-177"></a>	       <span class='conop'>:-&gt;</span>+<a name="line-178"></a>	       <span class='varid'>cat</span> <span class='keyglyph'>[</span> <span class='layout'>(</span> <span class='layout'>(</span> <span class='varid'>isDoctype</span> <span class='varop'>+++</span> <span class='varid'>isAttlist</span> <span class='varop'>+++</span> <span class='varid'>isElement</span> <span class='varop'>+++</span> <span class='varid'>isDTDName</span> <span class='layout'>)</span>+<a name="line-179"></a>		       <span class='varop'>.&gt;</span>+<a name="line-180"></a>		       <span class='varid'>isOf</span> <span class='layout'>(</span> <span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>isWellformedQualifiedName</span> <span class='varop'>.</span> <span class='varid'>valueOfDTD</span> <span class='varid'>a_name</span> <span class='layout'>)</span>+<a name="line-181"></a>		     <span class='layout'>)</span>+<a name="line-182"></a>		     <span class='varop'>`guards`</span>+<a name="line-183"></a>                     <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='varid'>n</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>err</span> <span class='layout'>(</span><span class='str'>"a DTD part contains a not wellformed qualified Name: "</span> <span class='varop'>++</span> <span class='varid'>show</span> <span class='layout'>(</span><span class='varid'>valueOfDTD</span> <span class='varid'>a_name</span> <span class='varid'>n</span><span class='layout'>)</span><span class='layout'>)</span> <span class='varid'>n</span> <span class='layout'>)</span>+<a name="line-184"></a>+<a name="line-185"></a>		   <span class='layout'>,</span> <span class='layout'>(</span> <span class='varid'>isAttlist</span>+<a name="line-186"></a>		       <span class='varop'>.&gt;</span>+<a name="line-187"></a>		       <span class='varid'>isOf</span> <span class='layout'>(</span> <span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>isWellformedQualifiedName</span> <span class='varop'>.</span> <span class='varid'>valueOfDTD</span> <span class='varid'>a_value</span> <span class='layout'>)</span>+<a name="line-188"></a>		     <span class='layout'>)</span>+<a name="line-189"></a>		     <span class='varop'>`guards`</span>+<a name="line-190"></a>                     <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='varid'>n</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>err</span> <span class='layout'>(</span><span class='str'>"an ATTLIST declaration contains as attribute name a not wellformed qualified Name: "</span> <span class='varop'>++</span> <span class='varid'>show</span> <span class='layout'>(</span><span class='varid'>valueOfDTD</span> <span class='varid'>a_value</span> <span class='varid'>n</span><span class='layout'>)</span><span class='layout'>)</span> <span class='varid'>n</span> <span class='layout'>)</span>+<a name="line-191"></a>+<a name="line-192"></a>                   <span class='layout'>,</span> <span class='layout'>(</span> <span class='layout'>(</span> <span class='varid'>isEntity</span> <span class='varop'>+++</span> <span class='varid'>isParameterEntity</span> <span class='varop'>+++</span> <span class='varid'>isNotation</span> <span class='layout'>)</span>+<a name="line-193"></a>		       <span class='varop'>.&gt;</span>+<a name="line-194"></a>		       <span class='varid'>isOf</span> <span class='layout'>(</span> <span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>isNCName</span> <span class='varop'>.</span> <span class='varid'>valueOfDTD</span> <span class='varid'>a_name</span> <span class='layout'>)</span>+<a name="line-195"></a>		     <span class='layout'>)</span>+<a name="line-196"></a>                     <span class='varop'>`guards`</span>+<a name="line-197"></a>                     <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='varid'>n</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>err</span> <span class='layout'>(</span><span class='str'>"an entity or notation declaration contains a not wellformed NCName: "</span> <span class='varop'>++</span> <span class='varid'>show</span> <span class='layout'>(</span><span class='varid'>valueOfDTD</span> <span class='varid'>a_name</span> <span class='varid'>n</span><span class='layout'>)</span><span class='layout'>)</span> <span class='varid'>n</span> <span class='layout'>)</span>+<a name="line-198"></a>		   <span class='keyglyph'>]</span>+<a name="line-199"></a>             <span class='layout'>,</span> <span class='varid'>isXPi</span>+<a name="line-200"></a>	       <span class='conop'>:-&gt;</span>+<a name="line-201"></a>	       <span class='layout'>(</span> <span class='varid'>isOf</span> <span class='layout'>(</span> <span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>isNCName</span> <span class='varop'>.</span> <span class='varid'>nameOf</span> <span class='layout'>)</span>+<a name="line-202"></a>	         <span class='varop'>`guards`</span>+<a name="line-203"></a>                 <span class='layout'>(</span><span class='keyglyph'>\</span> <span class='varid'>n</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>err</span> <span class='layout'>(</span><span class='str'>"a PI contains a not wellformed NCName: "</span> <span class='varop'>++</span> <span class='varid'>show</span> <span class='layout'>(</span><span class='varid'>nameOf</span> <span class='varid'>n</span><span class='layout'>)</span><span class='layout'>)</span> <span class='varid'>n</span> <span class='layout'>)</span>+<a name="line-204"></a>	       <span class='layout'>)</span>+<a name="line-205"></a>	     <span class='keyglyph'>]</span>+<a name="line-206"></a>+<a name="line-207"></a><span class='comment'>-- -----------------------------------------------------------------------------</span>+<a name="line-208"></a>+<a name="line-209"></a><a name="isNamespaceDecl"></a><span class='definition'>isNamespaceDecl</span>	<span class='keyglyph'>::</span> <span class='conid'>XmlFilter</span>+<a name="line-210"></a><span class='definition'>isNamespaceDecl</span>+<a name="line-211"></a>    <span class='keyglyph'>=</span> <span class='varid'>isOfAttr</span> <span class='varid'>xmlnsName</span>+<a name="line-212"></a>      <span class='keyword'>where</span>+<a name="line-213"></a>      <span class='varid'>xmlnsName</span>	<span class='keyglyph'>::</span> <span class='conid'>AttrName</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>Bool</span>+<a name="line-214"></a>      <span class='varid'>xmlnsName</span> <span class='varid'>a</span>+<a name="line-215"></a>	  <span class='keyglyph'>=</span> <span class='varid'>px</span> <span class='varop'>==</span> <span class='varid'>a_xmlns</span>+<a name="line-216"></a>	    <span class='varop'>&amp;&amp;</span>+<a name="line-217"></a>	    <span class='layout'>(</span> <span class='varid'>null</span> <span class='varid'>ln</span> <span class='varop'>||</span> <span class='varid'>head</span> <span class='varid'>ln</span> <span class='varop'>==</span> <span class='chr'>':'</span><span class='layout'>)</span>+<a name="line-218"></a>	  <span class='keyword'>where</span>+<a name="line-219"></a>	  <span class='layout'>(</span><span class='varid'>px</span><span class='layout'>,</span> <span class='varid'>ln</span><span class='layout'>)</span> <span class='keyglyph'>=</span> <span class='varid'>splitAt</span> <span class='num'>5</span> <span class='varop'>.</span> <span class='varid'>qualifiedName</span> <span class='varop'>$</span> <span class='varid'>a</span>+<a name="line-220"></a>+<a name="line-221"></a><span class='comment'>-- -----------------------------------------------------------------------------</span> </pre></body> </html>
+ doc/hxt-filter/src/Text-XML-HXT-DOM-XmlTreeTypes.html view
@@ -0,0 +1,87 @@+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">+<html>+<head>+<!-- Generated by HsColour, http://www.cs.york.ac.uk/fp/darcs/hscolour/ -->+<title>Haskell Code by HsColour</title>+<link type='text/css' rel='stylesheet' href='hscolour.css' />+</head>+<body>+<pre><a name="line-1"></a><span class='comment'>-- |</span>+<a name="line-2"></a><span class='comment'>-- exports the core data types</span>+<a name="line-3"></a><span class='comment'>-- and some additional types and functions</span>+<a name="line-4"></a><span class='comment'>-- for compatibility with none arrow modules</span>+<a name="line-5"></a><span class='comment'>--</span>+<a name="line-6"></a><span class='comment'>-- Version : $Id: XmlTreeTypes.hs,v 1.6 2006/05/09 15:30:43 hxml Exp $</span>+<a name="line-7"></a>+<a name="line-8"></a><span class='keyword'>module</span> <span class='conid'>Text</span><span class='varop'>.</span><span class='conid'>XML</span><span class='varop'>.</span><span class='conid'>HXT</span><span class='varop'>.</span><span class='conid'>DOM</span><span class='varop'>.</span><span class='conid'>XmlTreeTypes</span>+<a name="line-9"></a>    <span class='layout'>(</span> <span class='keyword'>module</span> <span class='conid'>Data</span><span class='varop'>.</span><span class='conid'>Tree</span><span class='varop'>.</span><span class='conid'>NTree</span><span class='varop'>.</span><span class='conid'>Filter</span>+<a name="line-10"></a>    <span class='layout'>,</span> <span class='keyword'>module</span> <span class='conid'>Text</span><span class='varop'>.</span><span class='conid'>XML</span><span class='varop'>.</span><span class='conid'>HXT</span><span class='varop'>.</span><span class='conid'>DOM</span><span class='varop'>.</span><span class='conid'>TypeDefs</span>+<a name="line-11"></a>    <span class='layout'>,</span> <span class='keyword'>module</span> <span class='conid'>Text</span><span class='varop'>.</span><span class='conid'>XML</span><span class='varop'>.</span><span class='conid'>HXT</span><span class='varop'>.</span><span class='conid'>DOM</span><span class='varop'>.</span><span class='conid'>XmlTreeTypes</span>+<a name="line-12"></a>    <span class='layout'>)</span>+<a name="line-13"></a>+<a name="line-14"></a><span class='keyword'>where</span>+<a name="line-15"></a>+<a name="line-16"></a><span class='keyword'>import</span> <span class='conid'>Data</span><span class='varop'>.</span><span class='conid'>Tree</span><span class='varop'>.</span><span class='conid'>NTree</span><span class='varop'>.</span><span class='conid'>Filter</span>+<a name="line-17"></a><span class='keyword'>import</span> <span class='conid'>Text</span><span class='varop'>.</span><span class='conid'>XML</span><span class='varop'>.</span><span class='conid'>HXT</span><span class='varop'>.</span><span class='conid'>DOM</span><span class='varop'>.</span><span class='conid'>TypeDefs</span>+<a name="line-18"></a>+<a name="line-19"></a><span class='comment'>-- aliases for compatiblility reasons</span>+<a name="line-20"></a>+<a name="line-21"></a><a name="mkNode"></a><span class='definition'>mkNode</span>		<span class='keyglyph'>::</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>NTrees</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>NTree</span> <span class='varid'>node</span>+<a name="line-22"></a><span class='definition'>mkNode</span>		<span class='keyglyph'>=</span> <span class='varid'>mkTree</span>+<a name="line-23"></a>+<a name="line-24"></a><a name="formatNTree"></a><span class='definition'>formatNTree</span>	<span class='keyglyph'>::</span> <span class='layout'>(</span><span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>String</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>NTree</span> <span class='varid'>node</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>String</span>+<a name="line-25"></a><span class='definition'>formatNTree</span>	<span class='keyglyph'>=</span> <span class='varid'>formatTree</span>+<a name="line-26"></a>+<a name="line-27"></a><a name="foldNTree"></a><span class='definition'>foldNTree</span>	<span class='keyglyph'>::</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>b</span><span class='keyglyph'>]</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>b</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>NTree</span> <span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>b</span>+<a name="line-28"></a><span class='definition'>foldNTree</span> 	<span class='keyglyph'>=</span> <span class='varid'>foldTree</span>+<a name="line-29"></a>+<a name="line-30"></a><a name="mapNTree"></a><span class='definition'>mapNTree</span>	<span class='keyglyph'>::</span> <span class='layout'>(</span><span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>b</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>NTree</span> <span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>NTree</span> <span class='varid'>b</span>+<a name="line-31"></a><span class='definition'>mapNTree</span> 	<span class='keyglyph'>=</span> <span class='varid'>fmap</span>+<a name="line-32"></a>+<a name="line-33"></a><a name="nTreeToList"></a><span class='definition'>nTreeToList</span>	<span class='keyglyph'>::</span> <span class='conid'>NTree</span> <span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='keyglyph'>[</span><span class='varid'>a</span><span class='keyglyph'>]</span>+<a name="line-34"></a><span class='definition'>nTreeToList</span>	<span class='keyglyph'>=</span> <span class='varid'>nodesTree</span>+<a name="line-35"></a>+<a name="line-36"></a><a name="depthNTree"></a><span class='definition'>depthNTree</span>	<span class='keyglyph'>::</span> <span class='conid'>NTree</span> <span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>Int</span>+<a name="line-37"></a><span class='definition'>depthNTree</span>	<span class='keyglyph'>=</span> <span class='varid'>depthTree</span>+<a name="line-38"></a>+<a name="line-39"></a><a name="cardNTree"></a><span class='definition'>cardNTree</span>	<span class='keyglyph'>::</span> <span class='conid'>NTree</span> <span class='varid'>a</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>Int</span>+<a name="line-40"></a><span class='definition'>cardNTree</span>	<span class='keyglyph'>=</span> <span class='varid'>cardNTree</span>+<a name="line-41"></a>+<a name="line-42"></a><span class='comment'>-- -----------------------------------------------------------------------------</span>+<a name="line-43"></a><span class='comment'>--</span>+<a name="line-44"></a><span class='comment'>-- Basic types for filters</span>+<a name="line-45"></a>+<a name="line-46"></a><span class='comment'>-- | A functions that takes a node and returns a list of nodes</span>+<a name="line-47"></a>+<a name="line-48"></a><a name="XmlFilter"></a><span class='keyword'>type</span> <span class='conid'>XmlFilter</span>	<span class='keyglyph'>=</span> <span class='conid'>TFilter</span>  <span class='conid'>XNode</span>+<a name="line-49"></a>+<a name="line-50"></a><span class='comment'>-- | A function that takes a list of nodes and returns a list of nodes</span>+<a name="line-51"></a>+<a name="line-52"></a><a name="XmlSFilter"></a><span class='keyword'>type</span> <span class='conid'>XmlSFilter</span>	<span class='keyglyph'>=</span> <span class='conid'>TSFilter</span> <span class='conid'>XNode</span>+<a name="line-53"></a>+<a name="line-54"></a>+<a name="line-55"></a><span class='comment'>-- -----------------------------------------------------------------------------</span>+<a name="line-56"></a><span class='comment'>--</span>+<a name="line-57"></a>+<a name="line-58"></a><a name="TagName"></a><span class='comment'>-- | Tag name</span>+<a name="line-59"></a><a name="TagName"></a><span class='keyword'>type</span> <span class='conid'>TagName</span>	<span class='keyglyph'>=</span> <span class='conid'>QName</span>+<a name="line-60"></a>+<a name="line-61"></a><a name="AttrName"></a><span class='comment'>-- | Attribute name</span>+<a name="line-62"></a><a name="AttrName"></a><span class='keyword'>type</span> <span class='conid'>AttrName</span>	<span class='keyglyph'>=</span> <span class='conid'>QName</span>+<a name="line-63"></a>+<a name="line-64"></a><span class='comment'>-- -----------------------------------------------------------------------------</span>+<a name="line-65"></a>+<a name="line-66"></a><span class='comment'>-- | shortcut for 'qualifiedName'</span>+<a name="line-67"></a>+<a name="line-68"></a><a name="tName"></a><span class='definition'>tName</span>	<span class='keyglyph'>::</span> <span class='conid'>QName</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>String</span>+<a name="line-69"></a><span class='definition'>tName</span>	<span class='keyglyph'>=</span> <span class='varid'>qualifiedName</span>+<a name="line-70"></a>+<a name="line-71"></a><span class='comment'>-- | shortcut for 'qualifiedName'</span>+<a name="line-72"></a>+<a name="line-73"></a><a name="aName"></a><span class='definition'>aName</span>	<span class='keyglyph'>::</span> <span class='conid'>QName</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>String</span>+<a name="line-74"></a><span class='definition'>aName</span>	<span class='keyglyph'>=</span> <span class='varid'>qualifiedName</span>+<a name="line-75"></a>+<a name="line-76"></a><span class='comment'>-- -----------------------------------------------------------------------------</span>+<a name="line-77"></a>+</pre></body>+</html>
doc/hxt-filter/src/Text-XML-HXT-Parser-ProtocolHandlerHttpNative.html view
@@ -51,109 +51,111 @@ <a name="line-43"></a><span class='comment'>--</span> <a name="line-44"></a><span class='comment'>-- the native http protocol handler</span> <a name="line-45"></a>-<a name="line-46"></a><span class='comment'>-- ------------------------------------------------------------</span>-<a name="line-47"></a><span class='comment'>--</span>-<a name="line-48"></a><span class='comment'>-- the http protocol handler, haskell implementation</span>-<a name="line-49"></a>-<a name="line-50"></a><a name="getHttpContentsWithHttp"></a><span class='definition'>getHttpContentsWithHttp</span>	<span class='keyglyph'>::</span> <span class='conid'>URI</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>XmlStateFilter</span> <span class='varid'>a</span>-<a name="line-51"></a><span class='definition'>getHttpContentsWithHttp</span> <span class='varid'>uri</span> <span class='varid'>n</span>-<a name="line-52"></a>    <span class='keyglyph'>=</span> <span class='keyword'>do</span>-<a name="line-53"></a>      <span class='varid'>traceLevel</span> <span class='keyglyph'>&lt;-</span> <span class='varid'>getTraceLevel</span>-<a name="line-54"></a>      <span class='varid'>trace</span> <span class='num'>2</span> <span class='layout'>(</span><span class='str'>"getHttpContent: reading from URL "</span> <span class='varop'>++</span> <span class='varid'>show</span> <span class='varid'>uri</span><span class='layout'>)</span>-<a name="line-55"></a>      <span class='varid'>proxy</span> <span class='keyglyph'>&lt;-</span> <span class='varid'>getSysParam</span> <span class='varid'>a_proxy</span>-<a name="line-56"></a>      <span class='varid'>res</span> <span class='keyglyph'>&lt;-</span> <span class='varid'>io</span> <span class='varop'>$</span>  <span class='varid'>try</span> <span class='layout'>(</span><span class='varid'>getHttp</span> <span class='varid'>traceLevel</span> <span class='varid'>uri</span> <span class='varid'>proxy</span><span class='layout'>)</span>-<a name="line-57"></a>      <span class='keyword'>case</span> <span class='varid'>res</span> <span class='keyword'>of</span>-<a name="line-58"></a>	       <span class='conid'>Left</span> <span class='varid'>e</span>-<a name="line-59"></a>		   <span class='keyglyph'>-&gt;</span> <span class='varid'>readErr</span> <span class='layout'>(</span> <span class='str'>"http error when requesting URI "</span>-<a name="line-60"></a>				<span class='varop'>++</span> <span class='varid'>show</span> <span class='varid'>uri</span>-<a name="line-61"></a>				<span class='varop'>++</span> <span class='str'>": "</span>-<a name="line-62"></a>				<span class='varop'>++</span> <span class='varid'>ioeGetErrorString</span> <span class='varid'>e</span>-<a name="line-63"></a>				<span class='varop'>++</span> <span class='str'>" (perhaps server does not understand HTTP/1.1) "</span>-<a name="line-64"></a>			      <span class='layout'>)</span>-<a name="line-65"></a>	       <span class='conid'>Right</span> <span class='varid'>response</span>-<a name="line-66"></a>		   <span class='keyglyph'>-&gt;</span> <span class='keyword'>let</span>-<a name="line-67"></a>		      <span class='varid'>al</span> <span class='keyglyph'>=</span> <span class='varid'>convertResponseHeaders</span> <span class='varid'>response</span>-<a name="line-68"></a>		      <span class='varid'>cs</span> <span class='keyglyph'>=</span> <span class='varid'>xtext</span> <span class='layout'>(</span><span class='varid'>rspBody</span> <span class='varid'>response</span><span class='layout'>)</span>-<a name="line-69"></a>		      <span class='varid'>st</span> <span class='keyglyph'>=</span> <span class='varid'>convertResponseStatus</span> <span class='layout'>(</span><span class='varid'>rspCode</span> <span class='varid'>response</span><span class='layout'>)</span>-<a name="line-70"></a>		      <span class='keyword'>in</span>-<a name="line-71"></a>		      <span class='keyword'>if</span> <span class='varid'>st</span> <span class='varop'>&gt;=</span> <span class='num'>200</span> <span class='varop'>&amp;&amp;</span> <span class='varid'>st</span> <span class='varop'>&lt;</span> <span class='num'>300</span>-<a name="line-72"></a>			 <span class='keyword'>then</span>-<a name="line-73"></a>			 <span class='varid'>return</span> <span class='varop'>$</span> <span class='layout'>(</span><span class='varid'>addAttrl</span> <span class='layout'>(</span><span class='varid'>const</span> <span class='varid'>al</span><span class='layout'>)</span> <span class='varop'>.&gt;</span> <span class='varid'>replaceChildren</span> <span class='varid'>cs</span><span class='layout'>)</span> <span class='varid'>n</span>-<a name="line-74"></a>			 <span class='keyword'>else</span> -<a name="line-75"></a>			 <span class='varid'>readErr</span> <span class='layout'>(</span> <span class='str'>"http error when accessing URI "</span>-<a name="line-76"></a>				   <span class='varop'>++</span> <span class='varid'>show</span> <span class='layout'>(</span><span class='varid'>show</span> <span class='varid'>uri</span><span class='layout'>)</span>-<a name="line-77"></a>				   <span class='varop'>++</span> <span class='str'>": "</span>-<a name="line-78"></a>				   <span class='varop'>++</span> <span class='varid'>show</span> <span class='varid'>st</span>-<a name="line-79"></a>				   <span class='varop'>++</span> <span class='str'>" "</span>-<a name="line-80"></a>				   <span class='varop'>++</span> <span class='varid'>rspReason</span> <span class='varid'>response</span>-<a name="line-81"></a>				 <span class='layout'>)</span>-<a name="line-82"></a>    <span class='keyword'>where</span>-<a name="line-83"></a>    <span class='varid'>readErr</span> <span class='varid'>msg</span>	<span class='keyglyph'>=</span> <span class='varid'>addFatal</span> <span class='varid'>msg</span> <span class='varid'>n</span>-<a name="line-84"></a>-<a name="line-85"></a>    <span class='varid'>getHttp</span>		<span class='keyglyph'>::</span> <span class='conid'>Int</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>URI</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>String</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>IO</span> <span class='conid'>Response</span>-<a name="line-86"></a>    <span class='varid'>getHttp</span> <span class='varid'>trc'</span> <span class='varid'>uri'</span> <span class='varid'>proxy'</span>-<a name="line-87"></a>	<span class='keyglyph'>=</span> <span class='varid'>withSocketsDo</span> <span class='varop'>$</span>-<a name="line-88"></a>	  <span class='varid'>browse</span> <span class='layout'>(</span> <span class='keyword'>do</span>-<a name="line-89"></a>		   <span class='varid'>setOutHandler</span> <span class='layout'>(</span><span class='varid'>trcFct</span><span class='layout'>)</span>-<a name="line-90"></a>		   <span class='varid'>setErrHandler</span> <span class='layout'>(</span><span class='varid'>trcFct</span><span class='layout'>)</span>-<a name="line-91"></a>-<a name="line-92"></a>		   <span class='varid'>setProxy'</span> <span class='varid'>proxy'</span>-<a name="line-93"></a>		   <span class='layout'>(</span><span class='sel'>_ruri</span><span class='layout'>,</span> <span class='varid'>rsp</span><span class='layout'>)</span> <span class='keyglyph'>&lt;-</span> <span class='varid'>request</span> <span class='varid'>rq</span>-<a name="line-94"></a>		   <span class='varid'>return</span> <span class='varid'>rsp</span>-<a name="line-95"></a>		 <span class='layout'>)</span>-<a name="line-96"></a>	<span class='keyword'>where</span>-<a name="line-97"></a>	<span class='varid'>trcFct</span> <span class='varid'>s</span>-<a name="line-98"></a>	    <span class='keyglyph'>|</span> <span class='varid'>trc'</span> <span class='varop'>&gt;=</span> <span class='num'>5</span>-<a name="line-99"></a>		<span class='keyglyph'>=</span> <span class='varid'>hPutStrLn</span> <span class='varid'>stderr</span> <span class='layout'>(</span><span class='str'>"-- ("</span> <span class='varop'>++</span> <span class='varid'>show</span> <span class='varid'>trc'</span> <span class='varop'>++</span> <span class='str'>") http: "</span> <span class='varop'>++</span> <span class='varid'>s</span><span class='layout'>)</span>-<a name="line-100"></a>	    <span class='keyglyph'>|</span> <span class='varid'>otherwise</span>-<a name="line-101"></a>		<span class='keyglyph'>=</span> <span class='varid'>return</span> <span class='conid'>()</span>-<a name="line-102"></a>-<a name="line-103"></a>	<span class='varid'>rq</span> <span class='keyglyph'>=</span> <span class='varid'>defaultGETRequest</span> <span class='varid'>uri'</span>-<a name="line-104"></a>	-<a name="line-105"></a>	<span class='varid'>setProxy'</span> <span class='str'>""</span>	<span class='keyglyph'>=</span> <span class='varid'>return</span> <span class='conid'>()</span>-<a name="line-106"></a>	<span class='varid'>setProxy'</span> <span class='varid'>p</span>	<span class='keyglyph'>=</span> <span class='varid'>setProxy</span> <span class='layout'>(</span><span class='conid'>Proxy</span> <span class='varid'>p</span> <span class='conid'>Nothing</span><span class='layout'>)</span>-<a name="line-107"></a>-<a name="line-108"></a>    <span class='varid'>convertResponseStatus</span>	<span class='keyglyph'>::</span> <span class='layout'>(</span><span class='conid'>Int</span><span class='layout'>,</span> <span class='conid'>Int</span><span class='layout'>,</span> <span class='conid'>Int</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>Int</span>-<a name="line-109"></a>    <span class='varid'>convertResponseStatus</span> <span class='layout'>(</span><span class='varid'>a</span><span class='layout'>,</span> <span class='varid'>b</span><span class='layout'>,</span> <span class='varid'>c</span><span class='layout'>)</span>-<a name="line-110"></a>	<span class='keyglyph'>=</span> <span class='num'>100</span> <span class='varop'>*</span> <span class='varid'>a</span> <span class='varop'>+</span> <span class='num'>10</span> <span class='varop'>*</span> <span class='varid'>b</span> <span class='varop'>+</span> <span class='varid'>c</span>-<a name="line-111"></a>-<a name="line-112"></a>    <span class='varid'>convertResponseHeaders</span>	<span class='keyglyph'>::</span> <span class='conid'>Response</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>XmlTrees</span>-<a name="line-113"></a>    <span class='varid'>convertResponseHeaders</span> <span class='varid'>r'</span>-<a name="line-114"></a>	<span class='keyglyph'>=</span> <span class='varid'>cvResponseCode</span> <span class='layout'>(</span><span class='varid'>rspCode</span> <span class='varid'>r'</span><span class='layout'>)</span>-<a name="line-115"></a>	  <span class='varop'>++</span>-<a name="line-116"></a>	  <span class='varid'>cvResponseReason</span> <span class='layout'>(</span><span class='varid'>rspReason</span> <span class='varid'>r'</span><span class='layout'>)</span>-<a name="line-117"></a>          <span class='varop'>++</span>-<a name="line-118"></a>	  <span class='varid'>cvResponseHeaders</span> <span class='layout'>(</span><span class='varid'>rspHeaders</span> <span class='varid'>r'</span><span class='layout'>)</span>-<a name="line-119"></a>	<span class='keyword'>where</span>-<a name="line-120"></a>	<span class='varid'>cvResponseCode</span>	<span class='keyglyph'>::</span> <span class='layout'>(</span><span class='conid'>Int</span><span class='layout'>,</span> <span class='conid'>Int</span><span class='layout'>,</span> <span class='conid'>Int</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>XmlTrees</span>-<a name="line-121"></a>	<span class='varid'>cvResponseCode</span> <span class='varid'>st'</span>-<a name="line-122"></a>	    <span class='keyglyph'>=</span> <span class='varid'>xattr</span> <span class='varid'>transferStatus</span> <span class='layout'>(</span><span class='varid'>show</span> <span class='layout'>(</span><span class='varid'>convertResponseStatus</span> <span class='varid'>st'</span><span class='layout'>)</span><span class='layout'>)</span>-<a name="line-123"></a>	      <span class='varop'>++</span>-<a name="line-124"></a>	      <span class='varid'>xattr</span> <span class='varid'>transferVersion</span> <span class='varid'>httpVersion</span>-<a name="line-125"></a>-<a name="line-126"></a>	<span class='varid'>cvResponseReason</span>	<span class='keyglyph'>::</span> <span class='conid'>String</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>XmlTrees</span>-<a name="line-127"></a>	<span class='varid'>cvResponseReason</span> <span class='varid'>r''</span>-<a name="line-128"></a>	    <span class='keyglyph'>=</span> <span class='varid'>xattr</span> <span class='varid'>transferMessage</span> <span class='layout'>(</span><span class='varid'>stringTrim</span> <span class='varid'>r''</span><span class='layout'>)</span>-<a name="line-129"></a>-<a name="line-130"></a>	<span class='varid'>cvResponseHeaders</span>	<span class='keyglyph'>::</span> <span class='keyglyph'>[</span><span class='conid'>Header</span><span class='keyglyph'>]</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>XmlTrees</span>-<a name="line-131"></a>	<span class='varid'>cvResponseHeaders</span>-<a name="line-132"></a>	    <span class='keyglyph'>=</span> <span class='varid'>concatMap</span> <span class='varid'>cvResponseHeader</span>-<a name="line-133"></a>-<a name="line-134"></a>	<span class='varid'>cvResponseHeader</span>	<span class='keyglyph'>::</span> <span class='conid'>Header</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>XmlTrees</span>-<a name="line-135"></a>	<span class='varid'>cvResponseHeader</span> <span class='layout'>(</span><span class='conid'>Header</span> <span class='varid'>name</span> <span class='varid'>value</span><span class='layout'>)</span>-<a name="line-136"></a>	    <span class='keyglyph'>|</span> <span class='varid'>name</span> <span class='varop'>==</span> <span class='conid'>HdrContentType</span>-<a name="line-137"></a>		<span class='keyglyph'>=</span> <span class='layout'>(</span> <span class='keyword'>case</span> <span class='layout'>(</span><span class='varid'>parse</span> <span class='varid'>parseContentType</span> <span class='layout'>(</span><span class='varid'>show</span> <span class='conid'>HdrContentType</span><span class='layout'>)</span> <span class='varid'>value</span><span class='layout'>)</span> <span class='keyword'>of</span>-<a name="line-138"></a>		    <span class='conid'>Right</span> <span class='varid'>res</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>concatMap</span> <span class='layout'>(</span><span class='varid'>uncurry</span> <span class='varid'>xattr</span><span class='layout'>)</span> <span class='varid'>res</span>-<a name="line-139"></a>		    <span class='conid'>Left</span>  <span class='keyword'>_</span>   <span class='keyglyph'>-&gt;</span> <span class='conid'>[]</span>-<a name="line-140"></a>		  <span class='layout'>)</span>-<a name="line-141"></a>                  <span class='varop'>++</span>-<a name="line-142"></a>		  <span class='varid'>addHttpAttr</span>-<a name="line-143"></a>	    <span class='keyglyph'>|</span> <span class='varid'>otherwise</span>-<a name="line-144"></a>		<span class='keyglyph'>=</span> <span class='varid'>addHttpAttr</span>-<a name="line-145"></a>	    <span class='keyword'>where</span>-<a name="line-146"></a>	    <span class='varid'>addHttpAttr</span> <span class='keyglyph'>=</span> <span class='varid'>xattr</span> <span class='layout'>(</span><span class='varid'>httpPrefix</span> <span class='varop'>++</span> <span class='layout'>(</span><span class='varid'>show</span> <span class='varid'>name</span><span class='layout'>)</span><span class='layout'>)</span> <span class='varid'>value</span>-<a name="line-147"></a>-<a name="line-148"></a>-<a name="line-149"></a><span class='comment'>-- ------------------------------------------------------------</span>+<a name="line-46"></a><a name="ResponseString"></a><span class='keyword'>type</span> <span class='conid'>ResponseString</span>	<span class='keyglyph'>=</span> <span class='conid'>Response</span> <span class='conid'>String</span>+<a name="line-47"></a>+<a name="line-48"></a><span class='comment'>-- ------------------------------------------------------------</span>+<a name="line-49"></a><span class='comment'>--</span>+<a name="line-50"></a><span class='comment'>-- the http protocol handler, haskell implementation</span>+<a name="line-51"></a>+<a name="line-52"></a><a name="getHttpContentsWithHttp"></a><span class='definition'>getHttpContentsWithHttp</span>	<span class='keyglyph'>::</span> <span class='conid'>URI</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>XmlStateFilter</span> <span class='varid'>a</span>+<a name="line-53"></a><span class='definition'>getHttpContentsWithHttp</span> <span class='varid'>uri</span> <span class='varid'>n</span>+<a name="line-54"></a>    <span class='keyglyph'>=</span> <span class='keyword'>do</span>+<a name="line-55"></a>      <span class='varid'>traceLevel</span> <span class='keyglyph'>&lt;-</span> <span class='varid'>getTraceLevel</span>+<a name="line-56"></a>      <span class='varid'>trace</span> <span class='num'>2</span> <span class='layout'>(</span><span class='str'>"getHttpContent: reading from URL "</span> <span class='varop'>++</span> <span class='varid'>show</span> <span class='varid'>uri</span><span class='layout'>)</span>+<a name="line-57"></a>      <span class='varid'>proxy</span> <span class='keyglyph'>&lt;-</span> <span class='varid'>getSysParam</span> <span class='varid'>a_proxy</span>+<a name="line-58"></a>      <span class='varid'>res</span> <span class='keyglyph'>&lt;-</span> <span class='varid'>io</span> <span class='varop'>$</span>  <span class='varid'>try</span> <span class='layout'>(</span><span class='varid'>getHttp</span> <span class='varid'>traceLevel</span> <span class='varid'>uri</span> <span class='varid'>proxy</span><span class='layout'>)</span>+<a name="line-59"></a>      <span class='keyword'>case</span> <span class='varid'>res</span> <span class='keyword'>of</span>+<a name="line-60"></a>	       <span class='conid'>Left</span> <span class='varid'>e</span>+<a name="line-61"></a>		   <span class='keyglyph'>-&gt;</span> <span class='varid'>readErr</span> <span class='layout'>(</span> <span class='str'>"http error when requesting URI "</span>+<a name="line-62"></a>				<span class='varop'>++</span> <span class='varid'>show</span> <span class='varid'>uri</span>+<a name="line-63"></a>				<span class='varop'>++</span> <span class='str'>": "</span>+<a name="line-64"></a>				<span class='varop'>++</span> <span class='varid'>ioeGetErrorString</span> <span class='varid'>e</span>+<a name="line-65"></a>				<span class='varop'>++</span> <span class='str'>" (perhaps server does not understand HTTP/1.1) "</span>+<a name="line-66"></a>			      <span class='layout'>)</span>+<a name="line-67"></a>	       <span class='conid'>Right</span> <span class='varid'>response</span>+<a name="line-68"></a>		   <span class='keyglyph'>-&gt;</span> <span class='keyword'>let</span>+<a name="line-69"></a>		      <span class='varid'>al</span> <span class='keyglyph'>=</span> <span class='varid'>convertResponseHeaders</span> <span class='varid'>response</span>+<a name="line-70"></a>		      <span class='varid'>cs</span> <span class='keyglyph'>=</span> <span class='varid'>xtext</span> <span class='layout'>(</span><span class='varid'>rspBody</span> <span class='varid'>response</span><span class='layout'>)</span>+<a name="line-71"></a>		      <span class='varid'>st</span> <span class='keyglyph'>=</span> <span class='varid'>convertResponseStatus</span> <span class='layout'>(</span><span class='varid'>rspCode</span> <span class='varid'>response</span><span class='layout'>)</span>+<a name="line-72"></a>		      <span class='keyword'>in</span>+<a name="line-73"></a>		      <span class='keyword'>if</span> <span class='varid'>st</span> <span class='varop'>&gt;=</span> <span class='num'>200</span> <span class='varop'>&amp;&amp;</span> <span class='varid'>st</span> <span class='varop'>&lt;</span> <span class='num'>300</span>+<a name="line-74"></a>			 <span class='keyword'>then</span>+<a name="line-75"></a>			 <span class='varid'>return</span> <span class='varop'>$</span> <span class='layout'>(</span><span class='varid'>addAttrl</span> <span class='layout'>(</span><span class='varid'>const</span> <span class='varid'>al</span><span class='layout'>)</span> <span class='varop'>.&gt;</span> <span class='varid'>replaceChildren</span> <span class='varid'>cs</span><span class='layout'>)</span> <span class='varid'>n</span>+<a name="line-76"></a>			 <span class='keyword'>else</span> +<a name="line-77"></a>			 <span class='varid'>readErr</span> <span class='layout'>(</span> <span class='str'>"http error when accessing URI "</span>+<a name="line-78"></a>				   <span class='varop'>++</span> <span class='varid'>show</span> <span class='layout'>(</span><span class='varid'>show</span> <span class='varid'>uri</span><span class='layout'>)</span>+<a name="line-79"></a>				   <span class='varop'>++</span> <span class='str'>": "</span>+<a name="line-80"></a>				   <span class='varop'>++</span> <span class='varid'>show</span> <span class='varid'>st</span>+<a name="line-81"></a>				   <span class='varop'>++</span> <span class='str'>" "</span>+<a name="line-82"></a>				   <span class='varop'>++</span> <span class='varid'>rspReason</span> <span class='varid'>response</span>+<a name="line-83"></a>				 <span class='layout'>)</span>+<a name="line-84"></a>    <span class='keyword'>where</span>+<a name="line-85"></a>    <span class='varid'>readErr</span> <span class='varid'>msg</span>	<span class='keyglyph'>=</span> <span class='varid'>addFatal</span> <span class='varid'>msg</span> <span class='varid'>n</span>+<a name="line-86"></a>+<a name="line-87"></a>    <span class='varid'>getHttp</span>		<span class='keyglyph'>::</span> <span class='conid'>Int</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>URI</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>String</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>IO</span> <span class='conid'>ResponseString</span>+<a name="line-88"></a>    <span class='varid'>getHttp</span> <span class='varid'>trc'</span> <span class='varid'>uri'</span> <span class='varid'>proxy'</span>+<a name="line-89"></a>	<span class='keyglyph'>=</span> <span class='varid'>withSocketsDo</span> <span class='varop'>$</span>+<a name="line-90"></a>	  <span class='varid'>browse</span> <span class='layout'>(</span> <span class='keyword'>do</span>+<a name="line-91"></a>		   <span class='varid'>setOutHandler</span> <span class='layout'>(</span><span class='varid'>trcFct</span><span class='layout'>)</span>+<a name="line-92"></a>		   <span class='varid'>setErrHandler</span> <span class='layout'>(</span><span class='varid'>trcFct</span><span class='layout'>)</span>+<a name="line-93"></a>+<a name="line-94"></a>		   <span class='varid'>setProxy'</span> <span class='varid'>proxy'</span>+<a name="line-95"></a>		   <span class='layout'>(</span><span class='sel'>_ruri</span><span class='layout'>,</span> <span class='varid'>rsp</span><span class='layout'>)</span> <span class='keyglyph'>&lt;-</span> <span class='varid'>request</span> <span class='varid'>rq</span>+<a name="line-96"></a>		   <span class='varid'>return</span> <span class='varid'>rsp</span>+<a name="line-97"></a>		 <span class='layout'>)</span>+<a name="line-98"></a>	<span class='keyword'>where</span>+<a name="line-99"></a>	<span class='varid'>trcFct</span> <span class='varid'>s</span>+<a name="line-100"></a>	    <span class='keyglyph'>|</span> <span class='varid'>trc'</span> <span class='varop'>&gt;=</span> <span class='num'>5</span>+<a name="line-101"></a>		<span class='keyglyph'>=</span> <span class='varid'>hPutStrLn</span> <span class='varid'>stderr</span> <span class='layout'>(</span><span class='str'>"-- ("</span> <span class='varop'>++</span> <span class='varid'>show</span> <span class='varid'>trc'</span> <span class='varop'>++</span> <span class='str'>") http: "</span> <span class='varop'>++</span> <span class='varid'>s</span><span class='layout'>)</span>+<a name="line-102"></a>	    <span class='keyglyph'>|</span> <span class='varid'>otherwise</span>+<a name="line-103"></a>		<span class='keyglyph'>=</span> <span class='varid'>return</span> <span class='conid'>()</span>+<a name="line-104"></a>+<a name="line-105"></a>	<span class='varid'>rq</span> <span class='keyglyph'>=</span> <span class='varid'>defaultGETRequest</span> <span class='varid'>uri'</span>+<a name="line-106"></a>	+<a name="line-107"></a>	<span class='varid'>setProxy'</span> <span class='str'>""</span>	<span class='keyglyph'>=</span> <span class='varid'>return</span> <span class='conid'>()</span>+<a name="line-108"></a>	<span class='varid'>setProxy'</span> <span class='varid'>p</span>	<span class='keyglyph'>=</span> <span class='varid'>setProxy</span> <span class='layout'>(</span><span class='conid'>Proxy</span> <span class='varid'>p</span> <span class='conid'>Nothing</span><span class='layout'>)</span>+<a name="line-109"></a>+<a name="line-110"></a>    <span class='varid'>convertResponseStatus</span>	<span class='keyglyph'>::</span> <span class='layout'>(</span><span class='conid'>Int</span><span class='layout'>,</span> <span class='conid'>Int</span><span class='layout'>,</span> <span class='conid'>Int</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>Int</span>+<a name="line-111"></a>    <span class='varid'>convertResponseStatus</span> <span class='layout'>(</span><span class='varid'>a</span><span class='layout'>,</span> <span class='varid'>b</span><span class='layout'>,</span> <span class='varid'>c</span><span class='layout'>)</span>+<a name="line-112"></a>	<span class='keyglyph'>=</span> <span class='num'>100</span> <span class='varop'>*</span> <span class='varid'>a</span> <span class='varop'>+</span> <span class='num'>10</span> <span class='varop'>*</span> <span class='varid'>b</span> <span class='varop'>+</span> <span class='varid'>c</span>+<a name="line-113"></a>+<a name="line-114"></a>    <span class='varid'>convertResponseHeaders</span>	<span class='keyglyph'>::</span> <span class='conid'>ResponseString</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>XmlTrees</span>+<a name="line-115"></a>    <span class='varid'>convertResponseHeaders</span> <span class='varid'>r'</span>+<a name="line-116"></a>	<span class='keyglyph'>=</span> <span class='varid'>cvResponseCode</span> <span class='layout'>(</span><span class='varid'>rspCode</span> <span class='varid'>r'</span><span class='layout'>)</span>+<a name="line-117"></a>	  <span class='varop'>++</span>+<a name="line-118"></a>	  <span class='varid'>cvResponseReason</span> <span class='layout'>(</span><span class='varid'>rspReason</span> <span class='varid'>r'</span><span class='layout'>)</span>+<a name="line-119"></a>          <span class='varop'>++</span>+<a name="line-120"></a>	  <span class='varid'>cvResponseHeaders</span> <span class='layout'>(</span><span class='varid'>rspHeaders</span> <span class='varid'>r'</span><span class='layout'>)</span>+<a name="line-121"></a>	<span class='keyword'>where</span>+<a name="line-122"></a>	<span class='varid'>cvResponseCode</span>	<span class='keyglyph'>::</span> <span class='layout'>(</span><span class='conid'>Int</span><span class='layout'>,</span> <span class='conid'>Int</span><span class='layout'>,</span> <span class='conid'>Int</span><span class='layout'>)</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>XmlTrees</span>+<a name="line-123"></a>	<span class='varid'>cvResponseCode</span> <span class='varid'>st'</span>+<a name="line-124"></a>	    <span class='keyglyph'>=</span> <span class='varid'>xattr</span> <span class='varid'>transferStatus</span> <span class='layout'>(</span><span class='varid'>show</span> <span class='layout'>(</span><span class='varid'>convertResponseStatus</span> <span class='varid'>st'</span><span class='layout'>)</span><span class='layout'>)</span>+<a name="line-125"></a>	      <span class='varop'>++</span>+<a name="line-126"></a>	      <span class='varid'>xattr</span> <span class='varid'>transferVersion</span> <span class='varid'>httpVersion</span>+<a name="line-127"></a>+<a name="line-128"></a>	<span class='varid'>cvResponseReason</span>	<span class='keyglyph'>::</span> <span class='conid'>String</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>XmlTrees</span>+<a name="line-129"></a>	<span class='varid'>cvResponseReason</span> <span class='varid'>r''</span>+<a name="line-130"></a>	    <span class='keyglyph'>=</span> <span class='varid'>xattr</span> <span class='varid'>transferMessage</span> <span class='layout'>(</span><span class='varid'>stringTrim</span> <span class='varid'>r''</span><span class='layout'>)</span>+<a name="line-131"></a>+<a name="line-132"></a>	<span class='varid'>cvResponseHeaders</span>	<span class='keyglyph'>::</span> <span class='keyglyph'>[</span><span class='conid'>Header</span><span class='keyglyph'>]</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>XmlTrees</span>+<a name="line-133"></a>	<span class='varid'>cvResponseHeaders</span>+<a name="line-134"></a>	    <span class='keyglyph'>=</span> <span class='varid'>concatMap</span> <span class='varid'>cvResponseHeader</span>+<a name="line-135"></a>+<a name="line-136"></a>	<span class='varid'>cvResponseHeader</span>	<span class='keyglyph'>::</span> <span class='conid'>Header</span> <span class='keyglyph'>-&gt;</span> <span class='conid'>XmlTrees</span>+<a name="line-137"></a>	<span class='varid'>cvResponseHeader</span> <span class='layout'>(</span><span class='conid'>Header</span> <span class='varid'>name</span> <span class='varid'>value</span><span class='layout'>)</span>+<a name="line-138"></a>	    <span class='keyglyph'>|</span> <span class='varid'>name</span> <span class='varop'>==</span> <span class='conid'>HdrContentType</span>+<a name="line-139"></a>		<span class='keyglyph'>=</span> <span class='layout'>(</span> <span class='keyword'>case</span> <span class='layout'>(</span><span class='varid'>parse</span> <span class='varid'>parseContentType</span> <span class='layout'>(</span><span class='varid'>show</span> <span class='conid'>HdrContentType</span><span class='layout'>)</span> <span class='varid'>value</span><span class='layout'>)</span> <span class='keyword'>of</span>+<a name="line-140"></a>		    <span class='conid'>Right</span> <span class='varid'>res</span> <span class='keyglyph'>-&gt;</span> <span class='varid'>concatMap</span> <span class='layout'>(</span><span class='varid'>uncurry</span> <span class='varid'>xattr</span><span class='layout'>)</span> <span class='varid'>res</span>+<a name="line-141"></a>		    <span class='conid'>Left</span>  <span class='keyword'>_</span>   <span class='keyglyph'>-&gt;</span> <span class='conid'>[]</span>+<a name="line-142"></a>		  <span class='layout'>)</span>+<a name="line-143"></a>                  <span class='varop'>++</span>+<a name="line-144"></a>		  <span class='varid'>addHttpAttr</span>+<a name="line-145"></a>	    <span class='keyglyph'>|</span> <span class='varid'>otherwise</span>+<a name="line-146"></a>		<span class='keyglyph'>=</span> <span class='varid'>addHttpAttr</span>+<a name="line-147"></a>	    <span class='keyword'>where</span>+<a name="line-148"></a>	    <span class='varid'>addHttpAttr</span> <span class='keyglyph'>=</span> <span class='varid'>xattr</span> <span class='layout'>(</span><span class='varid'>httpPrefix</span> <span class='varop'>++</span> <span class='layout'>(</span><span class='varid'>show</span> <span class='varid'>name</span><span class='layout'>)</span><span class='layout'>)</span> <span class='varid'>value</span>+<a name="line-149"></a>+<a name="line-150"></a>+<a name="line-151"></a><span class='comment'>-- ------------------------------------------------------------</span> </pre></body> </html>
hxt-filter.cabal view
@@ -1,6 +1,6 @@ -- arch-tag: Haskell XML Toolbox main description file name: hxt-filter-version: 8.2.0+version: 8.3.0 license: OtherLicense license-file: LICENCE maintainer: Uwe Schmidt <uwe@fh-wedel.de>@@ -9,13 +9,14 @@ synopsis: A collection of tools for processing XML with Haskell (Filter variant).  description:  The Haskell XML Toolbox bases on the ideas of HaXml and HXML. This package is a compatibitlity package for old software working with the filter approach like in HaXml. For new projects it's recomended to use the arrow based library (hxt). homepage: http://www.fh-wedel.de/~si/HXmlToolbox/index.html-copyright: Copyright (c) 2005-8 Uwe Schmidt+copyright: Copyright (c) 2005-2009 Uwe Schmidt build-type: Simple cabal-version: >=1.6  library  exposed-modules:   Control.Monad.MonadStateIO,+  Data.Tree.NTree.Filter,   System.PipeOpen,   Text.XML.HXT.DOM,   Text.XML.HXT.DOM.EditFilters,@@ -25,6 +26,7 @@   Text.XML.HXT.DOM.XmlTree,   Text.XML.HXT.DOM.XmlTreeFilter,   Text.XML.HXT.DOM.XmlTreeFunctions,+  Text.XML.HXT.DOM.XmlTreeTypes,   Text.XML.HXT.Parser,   Text.XML.HXT.Parser.DTDProcessing,   Text.XML.HXT.Parser.DefaultURI,@@ -59,7 +61,7 @@                 parsec     >= 2.1 && < 3,                 HUnit      >= 1.2,                 network    >= 2.1,-                HTTP       >= 3001.1,+                HTTP       >= 4000.0.4 && < 5000,                 process    >= 1.0.1,-                hxt        >= 8.2+                hxt        >= 8.3 
+ src/Data/Tree/NTree/Filter.hs view
@@ -0,0 +1,912 @@+-- ------------------------------------------------------------++{- |+   Module     : Data.Tree.NTree.Filter+   Copyright  : Copyright (C) 2005 Uwe Schmidt+   License    : MIT++   Maintainer : Uwe Schmidt (uwe\@fh-wedel.de)+   Stability  : stable+   Portability: portable++   Filter for n-ary tree structure with filter combinators+   copied and modified from HaXml (<http://www.cs.york.ac.uk/fp/HaXml/>)++   Similar but more flexible functions for tree processing are defined in the+   arrow classes "Control.Arrow.ArrowList", "Control.Arrow.ArrowIf", "Control.Arrow.ArrowTree" and "Control.Arrow.ArrowState".+   For new applications, especially for XML processing, it's recommended to use the arrow interface+   "Text.XML.HXT.Arrow" instead of this filter approach as part of the api "Text.XML.HXT.Parser"++-}++-- ------------------------------------------------------------++module Data.Tree.NTree.Filter+    ( module Data.Tree.NTree.TypeDefs+    , TFilter+    , TSFilter+    , satisfies++    -- * Filter+    , none		-- simple filter+    , this++    , isOf+    , isOfNode		-- predicate filter++    , mkNTree		-- contructor filter++    , replaceNode	-- simple editing+    , replaceChildren++    , modifyNode+    , modifyNode0+    , modifyChildren+    , substChildren+    , processChildren	-- filter combinators++    , o+    , (.>)+    , seqF+    , (..>)+    , (+++)+    , cat++    , orElse		-- choices+    , iff		-- if then else filter+    , choice+    , IfThen(..)+    , when+    , whenNot+    , guards+    , neg		-- negation+    , containing	-- previous: with, but with is keyword in haskell extensions+    , notContaining	-- previous: without++    , (/>)		-- selectors+    , (</)+    , deep		-- recursive search+    , deepest+    , multi+    , processBottomUp	-- recursive editing+    , processBottomUpIfNot+    , processTopDown+    , processTopDownUntil+    , insertChildrenAt+    , insertChildrenAfter++      -- * Monadic Filter+    , thisM		-- monadic filter+    , noneM+    , (.>>)		-- monadic composition+    , seqM		-- generalisation of .>>+    , (+++>>)		-- monadic parallel combination, monadic ++++    , catM		-- monadic form of cat+    , ifM		-- monadic if then else+    , choiceM		-- monadic choice+    , whenM		-- special monadic ifs+    , whenNotM+    , guardsM+    , containingM+    , processChildrenM	-- monadic versions of recursive editing+    , processTopDownM+    , processBottomUpM+    , liftMf		-- lift a normal filter to a monadic filter+    , ($$)		-- apply a filter to a list+    , ($$<)		-- apply a monad filter to a list+    , performAction	-- run a command within a filter+    )++where+++import Data.Tree.NTree.TypeDefs++infixl 6 `containing`, `notContaining`, `containingM`+infixr 5 `o`, +++, +++>>+infixl 5 />, </, `orElse`, .>, ..>, .>>+infixr 4 `when`, `whenNot`, `guards`, `whenM`, `whenNotM`, `guardsM`+infixr 3 :->+infixr 0 $$, $$<++-- |+-- tree filter type: a function mapping a tree onto a list of trees+--+-- filter can be used in various ways, as predicates, selectors, transformers, ...++type TFilter  node	= NTree  node -> NTrees node++-- |+-- a filter for sequences++type TSFilter node	= NTrees node -> NTrees node++-- ------------------------------------------------------------++-- |+-- satisfies converts a result of a predicate filter into a boolean+--+-- is a shortcut for not . null+--+-- typical use in guards or ifs: @if (satisfies f) t then ... else ... @+--+--    * 1.parameter f :  the predicate filter+--+--    - 2.parameter t :  the tree to be tested+--+--    - returns : @b = not (null (f t))@++satisfies	:: (a -> [b]) -> a -> Bool+satisfies f	= not . null . f++-- ------------------------------------------------------------+--+-- simple filter++-- |+-- the null filter, returns the empty list++none		:: a -> [b]+none _		= []++-- |+-- the unit filter, returns the single element list containing the argument++this		:: a -> [a]+this n		= [n]++-- ------------------------------------------------------------+--+-- selecting filter++-- |+-- conversion from predicate function to filter+--+--    * 1.parameter p :  the predicate for testing the tree+--+--    - returns : 'this' or 'none' depending on the predicate++isOf		:: (a -> Bool) -> (a -> [a])+isOf p t+    = if p t then [t] else []++-- |+-- select filter, selects trees with node values with a specific property+--+--    * 1.parameter p :  the predicate for testing the node value+--+--    - returns : @[]@ or @[t]@ depending on @p t@+--+-- a special case of 'isOf' filter++isOfNode	:: (node -> Bool) -> TFilter node+isOfNode p	= isOf (p . getNode)++-- ------------------------------------------------------------+--+-- simple editing filters++-- |+-- filter for substituting an arbitray tree by a constant+--+--    * 1.parameter t :  the result tree, the input tree is ignored+--+--    - returns : the filter++mkNTree		:: NTree node -> TFilter node+mkNTree t	= const [t]++-- |+-- filter for replacing the node+--+--    * 1.parameter n :  the new node+--+--    - returns : the editing filter++replaceNode	:: node -> TFilter node+replaceNode n (NTree _ cs)+    = [NTree n cs]++-- |+-- filter for replacing the children+--+--    * 1.parameter cs :  cs the list of children+--+--    - returns : the filter++replaceChildren	:: NTrees node -> TFilter node+replaceChildren cs (NTree n _)+    = [NTree n cs]++modifyNode	:: (node -> Maybe node) -> TFilter node+modifyNode tf (NTree n cs)+    = maybe [] (\ n' -> [NTree n' cs]) (tf n)++-- |+-- filter for editing the node+--+--    * 1.parameter nf :  the XNode editing funtion+--+--    - returns : the filter++modifyNode0	:: (node -> node) -> TFilter node+modifyNode0 tf	= modifyNode (Just . tf)++-- |+-- filter for editing the children+--+-- all children are processed with a filter mapping lists to lists,+-- this enables not only elementwise editing by lifting a normal+-- filter to a list filter with @(f $$)@ (see '($$)') but also manipulation+-- of the order of the elements, e.g. "reverse" is an appropriate childen+-- editing function.+--+--    * 1.parameter csf :  the children editing function+--+--    - returns : the filter+--+-- see also : 'processChildren'++modifyChildren	:: TSFilter node -> TFilter node+modifyChildren f -- (NTree n cs)+    -- = [NTree n (f cs)]+    = substChildren (f . getChildren)++-- |+-- filter for substituting the children of a tree by+-- a new list of childen computed by applying a filter to the input tree.+-- 'modifyChildren' can be expressed by 'substChildren':+-- @modifyChildren f t@ is equal to @substChildren (f . getChildren)@++substChildren	:: TFilter node -> TFilter node+substChildren f t@(NTree n _cs)+    = [NTree n (f t)]++-- ------------------------------------------------------------+--+-- combinators (copied from HaXml)+--++-- |+-- sequential composition of filters, usually written in infix notation f2 `o` f1.+--+-- for predicate filter the logical AND+--+--    * 1.parameter f2 :  the 2. filter+--+--    - 2.parameter f1 :  the 1. filter+--+--    - returns : the fiter applying first f1 to n and then f2 to the result (like function composition)++o		:: (a -> [b]) -> (c -> [a]) -> (c -> [b])+f `o` g		= concatMap f . g++-- |+-- pronounced \"followed by\", defined as: @f .> g = g \`o\` f@.+--+-- allows filter composition in a more readable way from left to right+--+--    * 1.parameter f1 :  the 1. filter+--+--    - 2.parameter f2 :  the 2. filter+--+--    - returns : the composition of f1 and f2+--+-- see also : 'o', '(..>)'++(.>)		:: (a -> [b]) -> (b -> [c]) -> (a -> [c])+f .> g		= g `o` f++-- |+-- apply a list of filters sequentially with '(.>)', for predicate filters the generalized AND+--+-- see also : '(.>)'++seqF		:: [a -> [a]] -> (a -> [a])+seqF		= foldl (.>) this++-- |+-- binary parallel composition, the logical OR for predicate filter+--+--    * 1.parameter f1 :  the 1. filter+--+--    - 2.parameter f2 :  the 2. filter+--+--    - returns : the filter for applying f1 and f2 both to an argument tree and concatenating the results++(+++)		:: (a -> [b]) -> (a -> [b]) -> (a -> [b])+f +++ g		= \ t -> f t ++ g t++-- |+-- special sequential composition.+--+-- filter f is applied to an argument t.+-- then filter g is applied to all elements of the result list,+-- but the argument t is also passed as extra parameter to g.+--+-- This allows for step by step transformations of a tree+-- with access to the original tree in every+-- transformation step.+--+-- see also : '(.>)', 'o'++(..>)		:: (a -> [b]) -> (a -> b -> [d]) -> (a -> [d])+f ..> g		= \ t -> (g t `o` f) t++-- |+-- apply a list of filters, a \"union\" for lists, for predicate filters the generalized OR+--+--    * 1.parameter fs :  the list of filters+--+--    - returns : the composing filter++cat		:: [a -> [b]] -> (a -> [b])+cat fs  t+    = concat [ f t | f <- fs ]++-- |+-- Filter for editing the children of a tree element wise+--+--    * 1.parameter cf :  the filter applied to the children+--+--    - returns : the editing filter+--+-- see also : 'modifyChildren'++processChildren	:: TFilter node -> TFilter node+processChildren ft (NTree n cs)+    = [NTree n (ft $$ cs)]++-- |+-- infix operator for applying a filter to a list of trees+--+--    * 1.parameter f :  the filter+--+--    - 2.parameter ts :  the list of trees+--+--    - returns : the concatenated list of results++($$)		:: (a -> [b]) -> [a] -> [b]+f $$ l+    = concatMap f l++-- ------------------------------------------------------------+--+-- choices+--++-- |+-- directional choice, usually written in infix notation as f `orElse` g+--+--    * 1.parameter f :  the 1. filter+--+--    - 2.parameter g :  the 2. filter+--+--    - 3.parameter t :  the tree+--+--    - returns : the filter, that applies f to t, if the result is not the empty list, the result is found, else g t is the result++orElse		:: (a -> [b]) -> (a -> [b]) -> (a -> [b])+f `orElse` g+    = \ t-> let+	    res = f t+	    in+	    if null res+	    then g t+	    else res++-- |+-- if then else lifted to filters+--+--    * 1.parameter p :  the predicate filter+--+--    - 2.parameter t :  the \"then\" filter+--+--    - 3.parameter e :  the \"else\" filter+--+--    - returns : the resulting conditional filter++iff		:: (a -> [c]) -> (a -> [b]) -> (a -> [b]) -> (a -> [b])+iff p f g	= \ c -> if (satisfies p) c then f c else g c++-- |+-- when the predicate p holds, f is applied, else the identity filter this+--+--    * 1.parameter f :  the conditinally applied filter+--+--    - 2.parameter p :  the predicate+--+--    - returns : the conditional filter+--+-- see also : 'iff', 'whenNot', 'guards', 'whenM'++when		:: (a -> [a]) -> (a -> [a]) -> (a -> [a])+f `when` g	= iff g f this++-- |+-- the complementary filter of when+--+-- shortcut for f `when` neg g+--+-- see also : 'iff', 'when', 'whenNotM', 'neg'++whenNot		:: (a -> [a]) -> (a -> [a]) -> (a -> [a])+f `whenNot` g	= iff g this f++-- |+-- when the predicate p holds, f is applied, else the null filter none+--+--    * 1.parameter p :  the predicate filter+--+--    - 2.parameter f :  the conditionally applied filter+--+--    - returns : the conditional filter+--+-- see also : 'iff', 'when', 'guardsM'++guards		:: (a -> [b]) -> (a -> [b]) -> (a -> [b])+g `guards` f	= iff g f none+++-- |+-- negation lifted to filters+--+--    * 1.parameter f :  the predicate filter+--+--    - returns : the filter, that succeeds, when f failed++neg		:: (a -> [c]) -> a -> [a]+neg f		= iff f none this++-- |+-- auxiliary datatype for cases within choice filter++data IfThen a b = a :-> b++-- |+-- multiway branch. The list of cases @f :-> g@ is processed sequentially,+-- in the first case for that f holds g is applied, if no case matches, 'none' is+-- applied.+-- This filter can be used like a case expression: @choice [ p1 :-> f1, p2 :-> f2, ... , this :-> defaultFilter]@+--+-- see also : 'iff', 'choiceM'++choice	:: [IfThen (a -> [c]) (a -> [b])] -> (a -> [b])+choice []+    = none++choice ((g :-> f) : cs)+    = iff g f (choice cs)++-- |+-- pruning: keep only those results from f for which g holds, usually written in infix notation as f `containing` g+--+--    * 1.parameter f :  the processing filter+--+--    - 2.parameter g :  the predicate filter+--+--    - 3.parameter t :  the tree+--+--    - returns : all trees r from f t, for which g r holds (is not the empty list)+--+-- see also : 'notContaining'++containing		:: (a -> [b]) -> (b -> [c]) -> a -> [b]+f `containing` g+    = filter (satisfies g) . f++-- |+-- pruning: keep only those results from f for which g does not hold+--+-- see also : 'containing'++notContaining		:: (a -> [b]) -> (b -> [c]) -> a -> [b]+f `notContaining` g+    = filter (null . g) . f++-- |+-- pruning: monadic version of containing, usually written in infix notation as f `containingM` g+--+--    * 1.parameter f :  the monadic processing filter+--+--    - 2.parameter g :  the predicate filter+--+--    - 3.parameter t :  the tree+--+--    - returns : all trees r from f t, for which g r holds (is not the empty list)+--+-- see also : 'notContaining'++containingM		:: Monad m => (a -> m [b]) -> (b -> [c]) -> a -> m [b]+f `containingM` g+    = \ t -> do+             res <- f t+             return $ filter (satisfies g) res++-- |+-- pronounced \"slash\", meaning g inside f++(/>)		:: TFilter node -> TFilter node -> TFilter node+f /> g+    = g `o` getChildren `o` f++-- |+-- pronounced \"outside\" meaning f containing g++(</)		:: TFilter node -> TFilter node -> TFilter node+f </ g+    = f `containing` (g `o` getChildren)++-- ------------------------------------------------------------+--+-- recursive search filters++-- |+-- top down search.+--+-- search terminates, when filter f succeeds+-- can e.g. be used for finding all outermost tag node of a specific kind++deep		:: TFilter node -> TFilter node+deep f+    = f `orElse` (deep f `o` getChildren)++-- |+-- bottom up search.+--+-- first the children are processed,+-- if this does not succeed, the node itself is processed+-- can e.g. be used for finding all innermost tag nodes of a specific kind++deepest		:: TFilter node -> TFilter node+deepest f+    = (getChildren .> deepest f) `orElse` f++-- |+-- process all nodes of the whole tree.+--+-- can e.g. be used for finding all nodes of a specific kind++multi		:: TFilter node -> TFilter node+multi f+    = f +++ (getChildren .> multi f)++-- ------------------------------------------------------------+--+-- recursive transformation filters+--++-- |+-- bottom up transformation+--+--    * 1.parameter f :  the /simple/ transforming filter+--+--    - returns : the filter that applies f to all subtrees and the tree itself in a deepth first left to right manner+--+-- see also : 'processTopDown', 'processBottomUpIfNot'++processBottomUp	:: TFilter node -> TFilter node+processBottomUp f+    = processChildren (processBottomUp f) .> f++-- |+-- top down transformation+--+--    * 1.parameter f :  the /simple/ transforming filter+--+--    - returns : the filter that applies f first to the tree and then recursively to all subtrees of the result+--+-- see also : 'processBottomUp'++processTopDown	:: TFilter node -> TFilter node+processTopDown f+    = f .> processChildren (processTopDown f)++-- |+-- guarded bottom up transformation, stops at subtrees for which a predicate p holds+--+--    * 1.parameter f :  the transforming filter+--+--    - 2.parameter p :  the predicate filter for the guard+--+--    - returns : the filter for processing all (sub-)trees+--+-- see also : 'processBottomUp'++processBottomUpIfNot	:: TFilter node -> TFilter node -> TFilter node+processBottomUpIfNot f p+    = (processChildren (processBottomUpIfNot f p) .> f) `whenNot` p++-- |+-- top down transformation until a node to be transformed is found+--+--    * 1.parameter f :  the /simple/ transforming filter+--+--    - returns : the filter that applies f first to the tree and, if the filter does not succeed,+--		  recursively to all children of the input tree.+--+-- Example:+--+-- @processTopDownUntil none@+--+-- is the identity filter (maybe a bit more inefficient).+--+-- Example:+--+-- @processTopDownUntil (add1Attr \"border\" \"2\" \`containing\` isTag \"table\")@+--+-- is a filter for adding an attribute border=\"2\" in all top level table tags.+--		  The content of table tags will remain unchanged.+--+-- see also : 'processTopDown', 'processBottomUp'++processTopDownUntil	:: TFilter node -> TFilter node+processTopDownUntil f t+    | null res+	= processChildren (processTopDownUntil f) t+    | otherwise+	= res+    where+    res = f t++-- ------------------------------------------------------------+--++-- |+-- insertion of trees into the list of children at a given position+--+-- useful for inserting something into the list of children at a given position+-- the list of children is split with the @splitAt@ function+-- the nodes are inserted between these two sublists.+--+-- examples: @insertChildrenAt 0 ins t@ inserts all elements computed with @ins t@ in front+-- of the childen of @t@, @insertChildrenAt 1 ins t@ behind the first child+--+-- see also: 'insertChildrenAfter'+++insertChildrenAt	:: Int -> TFilter node -> TFilter node+insertChildrenAt i ins t+    = replaceChildren (cl1 ++ ins t ++ cl2) t+    where+    (cl1, cl2) = splitAt i $ getChildren t++-- |+-- insertion of trees into the list of children after specific elements+--+-- useful for inserting something into the list of children of a node+-- the list of children is split with the @span@ function and the filter p as predicate+-- the nodes are inserted between these two sublists+--+-- examples: @insertChildrenAfter none ins t@ inserts all elements computed with @ins t@ in front+-- of the childen of @t@, @insertChildrenAfter this ins t@ appends the elements to the children+--+-- see also: 'insertChildrenAt'++insertChildrenAfter	:: TFilter node -> TFilter node -> TFilter node+insertChildrenAfter p ins t+    = replaceChildren (cl1 ++ ins t ++ cl2) t+    where+    (cl1, cl2) = span (not . null . p) $ getChildren t++-- ------------------------------------------------------------+--+-- monadic filter++-- |+-- the monadic version of the identity filter this.+--+-- see also : 'this'++thisM		:: Monad m => (a -> m [a])+thisM		= liftMf this++-- |+-- the monadic version of the null filter none.+--+-- see also : 'none'++noneM		:: Monad m => (a -> m [b])+noneM		= liftMf none++-- |+-- sequential composition of monadic filters, monadic version of \".>\".+--+--    * 1.parameter f1 :  the 1. monadic filter+--+--    - 2.parameter f2 :  the 2. monadic filter+--+--    - returns : the monadic fiter applying first f1 to n and then f2 to the result (like function composition)+--+-- see also : '(.>)'++(.>>)	:: Monad m => (a -> m[b]) -> (b -> m [c]) -> (a -> m[c])+cmd1 .>> cmd2+    = \ t ->+      do+      r1 <- cmd1 t+      r2 <- mapM cmd2 r1+      return (concat r2)++-- |+-- generalized sequential composition of monadic filters++seqM	:: Monad m => [a -> m[a]] -> (a -> m[a])+seqM+    = foldr (.>>) thisM++-- |+-- binary parallel composition, the logical OR for predicate filter+--+--    * 1.parameter f1 :  the 1. filter+--+--    - 2.parameter f2 :  the 2. filter+--+--    - returns : the filter for applying f1 and f2 both to an argument tree and concatenating the results+-- see also: 'cat', '+++', 'catM'++(+++>>)		:: Monad m => (a -> m [b]) -> (a -> m [b]) -> (a -> m [b])+f +++>> g	= \ t -> do+			 r1 <- f t+			 r2 <- g t+			 return (r1 ++ r2)++-- |+-- apply a list of monadic filters+--+--    * 1.parameter fs :  the list of filters+--+--    - returns : the composing filter+-- see also: 'cat', '+++', '+++>>'++catM	:: Monad m => [a -> m [b]] -> (a -> m [b])+catM fs  t+    = do+      res <- sequence (map ($ t) fs)+      return $ concat res++-- |+-- monadic if-then-else.+--+--    * 1.parameter p :  the predicate+--+--    - 2.parameter thenP :  the then part: the monadic filter, that is applied if p holds for the input tree+--+--    - 3.parameter elseP :  the else part+--+--    - returns : the monadic filter for the conditional++ifM		:: Monad m => (a -> [b]) -> (a -> m [c]) -> (a -> m [c]) -> (a -> m [c])+ifM p thenPart elsePart+    = \ t ->+      if (satisfies p) t+      then thenPart t+      else elsePart t++-- |+-- monadic version of multiway branch. The list of cases @f :-> g@ is processed sequentially,+-- in the first case for that f holds g is applied, if no case matches, 'noneM' is+-- applied.+-- This filter can be used like a case expression: @choiceM [ p1 :-> f1, p2 :-> f2, ... , thisM :-> defaultFilter]@+--+-- see also : 'choice', 'ifM'++choiceM		:: Monad m => [IfThen (a -> [c]) (a -> m [b])] -> (a -> m [b])+choiceM []+    = noneM++choiceM ((g :-> f) : cs)+    = ifM g f (choiceM cs)+++-- |+-- when the predicate p holds, the monadic filter f is applied, else the identity filter.+--+--    * 1.parameter f :  the conditinally applied monadic filter+--+--    - 2.parameter p :  the simple predicate+--+--    - returns : the conditional filter+--+-- see also : 'ifM', 'when', 'guardsM', 'whenNotM'++whenM		:: Monad m => (a -> m [a]) -> (a -> [b]) -> (a -> m [a])+f `whenM` g	= ifM g f thisM++-- |+-- the complementary filter of whenM.+--+-- see also : 'ifM', 'whenM', 'whenNot'++whenNotM	:: Monad m => (a -> m [a]) -> (a -> [b]) -> (a -> m [a])+f `whenNotM` g	= ifM g thisM f++-- |+-- when the predicate p holds, the monadic filter f is applied, else the null filter.+--+--    * 1.parameter p :  the simple predicate filter+--+--    - 2.parameter f :  the conditionally applied monadic filter+--+--    - returns : the conditional filter+--+-- see also : 'ifM', 'guards', 'whenM'++guardsM		:: Monad m => (a -> [b]) -> (a -> m [c]) -> (a -> m [c])+g `guardsM` f	= ifM g f noneM++-- |+-- Filter for editing the children of a tree with a monadic filter+--+--    * 1.parameter cf :  the monadic filter applied to the children+--+--    - returns : the monadic editing filter+--+-- see also : 'processChildren'++processChildrenM	:: Monad m => (NTree node -> m [NTree node]) -> (NTree node -> m [NTree node])+processChildrenM ft (NTree n cs)+    = do+      res <- ft $$< cs+      return [NTree n res]++-- |+-- monadic variant of 'processTopDown'++processTopDownM		:: Monad m => (NTree node -> m [NTree node]) -> (NTree node -> m [NTree node])+processTopDownM f+    = f .>> processChildrenM (processTopDownM f)++-- |+-- monadic variant of 'processBottomUp'++processBottomUpM	:: Monad m => (NTree node -> m [NTree node]) -> (NTree node -> m [NTree node])+processBottomUpM f+    = processChildrenM (processBottomUpM f) .>> f++-- |+-- infix operator for applying a monadic filter to a list of trees,+-- typically used in do-notation for processing of intermediate results.+--+--    * 1.parameter f :  the monadic filter+--+--    - 2.parameter ts :  the list of trees+--+--    - returns : the concatenated list of results+--+-- see also : '($$)'++($$<)	:: Monad m => (a -> m [b]) -> [a] -> m [b]+cmd $$< l+    = do+      r <- mapM cmd l+      return (concat r)++-- |+-- lift a filter to a monadic filter+--+--    * 1.parameter f :  the /simple/ filter+--+--    - returns : the lifted monadic version++liftMf	:: Monad m => (a -> [b]) -> a -> m [b]+liftMf f t+    = return (f t)++-- |+-- run an arbitray command on a tree t and return the tree,+-- used for inserting arbitray commands in a filter pipeline+--+--    * 1.parameter cmd :  the command+--+--    - 2.parameter t :  the argument tree+--+--    - returns : the unchanged tree as a single element list++performAction	:: Monad m => (a -> m b) -> a -> m [a]+performAction cmd t+    = do+      cmd t+      return [t]++-- eof ------------------------------------------------------------
src/Makefile view
@@ -40,6 +40,7 @@  HXT_SRC	= \ 	$(wildcard Control/Monad/*.hs) \+	$(wildcard Data/Tree/NTree/*.hs) \         $(wildcard System/*.hs) \ 	$(wildcard Text/XML/HXT/*.hs) \ 	$(wildcard Text/XML/HXT/DOM/*.hs) \@@ -53,7 +54,7 @@ HXT_LIBA	= libHS$(HXT_PACKAGE).a HXT_LIBO	= HS$(HXT_PACKAGE).o HXT_LIB		= $(HXT_LIBA) $(HXT_LIBO)-HXT_REQ_PKG	= -package parsec -package HTTP -package hxt+HXT_REQ_PKG	= -package parsec -package HTTP -package hxt-8.3.0  $(HXT_LIBA)	: $(HXT_SRC) 		$(GHC) -package-name $(HXT_PACKAGE_NAME) $(HXT_REQ_PKG) --make $(HXT_DRIVER:.o=.hs)
src/Text/XML/HXT/DOM/NamespaceFilter.hs view
@@ -16,14 +16,11 @@  module Text.XML.HXT.DOM.NamespaceFilter     ( module Text.XML.HXT.DOM.NamespaceFilter-    , module Text.XML.HXT.DOM.NamespacePredicates     ) where  import Text.XML.HXT.DOM.XmlTree -import Text.XML.HXT.DOM.NamespacePredicates- import Text.XML.HXT.DOM.Util     ( doubles ) @@ -48,7 +45,7 @@ -- The filter may be applied repeatedly if neccessary.  propagateNamespaces	:: XmlFilter-propagateNamespaces	= propagateNamespaceEnv [ (a_xml, xmlNamespace), (a_xmlns, xmlnsNamespace) ]+propagateNamespaces	= propagateNamespaceEnv $ toNsEnv [ (a_xml, xmlNamespace), (a_xmlns, xmlnsNamespace) ]  -- | -- attaches the namespace info given by the namespace table@@ -88,7 +85,7 @@ 			    . 			    getChildren 			   ) nsAttrs)-    newEnv	= addEntries nsDecl env+    newEnv	= addEntries (toNsEnv nsDecl) env      attachNamespaceUrisToAttr	:: NamespaceTable -> XmlFilter     attachNamespaceUrisToAttr attrEnv
+ src/Text/XML/HXT/DOM/XmlTreeTypes.hs view
@@ -0,0 +1,77 @@+-- |+-- exports the core data types+-- and some additional types and functions+-- for compatibility with none arrow modules+--+-- Version : $Id: XmlTreeTypes.hs,v 1.6 2006/05/09 15:30:43 hxml Exp $++module Text.XML.HXT.DOM.XmlTreeTypes+    ( module Data.Tree.NTree.Filter+    , module Text.XML.HXT.DOM.TypeDefs+    , module Text.XML.HXT.DOM.XmlTreeTypes+    )++where++import Data.Tree.NTree.Filter+import Text.XML.HXT.DOM.TypeDefs++-- aliases for compatiblility reasons++mkNode		:: node -> NTrees node -> NTree node+mkNode		= mkTree++formatNTree	:: (node -> String) -> NTree node -> String+formatNTree	= formatTree++foldNTree	:: (a -> [b] -> b) -> NTree a -> b+foldNTree 	= foldTree++mapNTree	:: (a -> b) -> NTree a -> NTree b+mapNTree 	= fmap++nTreeToList	:: NTree a -> [a]+nTreeToList	= nodesTree++depthNTree	:: NTree a -> Int+depthNTree	= depthTree++cardNTree	:: NTree a -> Int+cardNTree	= cardNTree++-- -----------------------------------------------------------------------------+--+-- Basic types for filters++-- | A functions that takes a node and returns a list of nodes++type XmlFilter	= TFilter  XNode++-- | A function that takes a list of nodes and returns a list of nodes++type XmlSFilter	= TSFilter XNode+++-- -----------------------------------------------------------------------------+--++-- | Tag name+type TagName	= QName++-- | Attribute name+type AttrName	= QName++-- -----------------------------------------------------------------------------++-- | shortcut for 'qualifiedName'++tName	:: QName -> String+tName	= qualifiedName++-- | shortcut for 'qualifiedName'++aName	:: QName -> String+aName	= qualifiedName++-- -----------------------------------------------------------------------------+
src/Text/XML/HXT/Parser/ProtocolHandlerHttpNative.hs view
@@ -43,6 +43,8 @@ -- -- the native http protocol handler +type ResponseString	= Response String+ -- ------------------------------------------------------------ -- -- the http protocol handler, haskell implementation@@ -82,7 +84,7 @@     where     readErr msg	= addFatal msg n -    getHttp		:: Int -> URI -> String -> IO Response+    getHttp		:: Int -> URI -> String -> IO ResponseString     getHttp trc' uri' proxy' 	= withSocketsDo $ 	  browse ( do@@ -109,7 +111,7 @@     convertResponseStatus (a, b, c) 	= 100 * a + 10 * b + c -    convertResponseHeaders	:: Response -> XmlTrees+    convertResponseHeaders	:: ResponseString -> XmlTrees     convertResponseHeaders r' 	= cvResponseCode (rspCode r') 	  ++
src/hxt-filter-package.hs view
@@ -26,7 +26,7 @@ 	" This package is a compatibitlity package for old software working with the filter approach like in HaXml." ++ 	" For new projects it's recomended to use the arrow based library (hxt)."       , "homepage: http://www.fh-wedel.de/~si/HXmlToolbox/index.html"-      , "copyright: Copyright (c) 2005-8 Uwe Schmidt"+      , "copyright: Copyright (c) 2005-2009 Uwe Schmidt"       ]  part3a	:: [String]@@ -61,7 +61,7 @@       , "         containers-0.2.0.0,"       , "         directory-1.0.0.2,"       , "         process-1.0.1.0,"-      , "         hxt-8.2.0"+      , "         hxt-8.3.0"       ]  part4b :: [String]@@ -78,9 +78,9 @@       , "                parsec     >= 2.1 && < 3,"       , "                HUnit      >= 1.2,"       , "                network    >= 2.1,"-      , "                HTTP       >= 3001.1,"+      , "                HTTP       >= 4000.0.4 && < 5000,"       , "                process    >= 1.0.1,"-      , "                hxt        >= 8.2"+      , "                hxt        >= 8.3"       ]  main	:: IO()