htmlのパースで苦戦中

HXT - HaskellWikiを読みつつ、htmlをパースしたいなぁといろいろいじっていた今日。

まぁ、まじめに読むのはあれなので、コード片やタイトルで6.1 Selecting text from an HTML documentが、僕のやりたいことに近いかと思って、

selectAllText	:: ArrowXml a => a XmlTree XmlTree
selectAllText
    = deep isXText

というのを、試そうと思ってghciでやったんだけど、以下みたいにエラーがでた。

Prelude Data.Tree.NTree.TypeDefs Data.Maybe Control.Arrow.ArrowTree Control.Arrow Text.XML.HXT.DOM.XmlTreeFilter Text.XML.HXT.DOM.XmlKeywords Text.XML.HXT.Arrow.XmlIOStateArr
ow
Text.XML.HXT.Arrow.XmlArrow Text.XML.HXT.Arrow.ReadDocument> :t deep
deep :: (ArrowTree a, Tree t) => a (t b) (t b) -> a (t b) (t b)
Prelude Data.Tree.NTree.TypeDefs Data.Maybe Control.Arrow.ArrowTree Control.Arrow Text.XML.HXT.DOM.XmlTreeFilter Text.XML.HXT.DOM.XmlKeywords Text.XML.HXT.Arrow.XmlIOStateArrow 
Text.XML.HXT.Arrow.XmlArrow Text.XML.HXT.Arrow.ReadDocument> :t isXText
isXText :: NTree Text.XML.HXT.DOM.TypeDefs.XNode
-> NTrees Text.XML.HXT.DOM.TypeDefs.XNode
Prelude Data.Tree.NTree.TypeDefs Data.Maybe Control.Arrow.ArrowTree Control.Arrow Text.XML.HXT.DOM.XmlTreeFilter Text.XML.HXT.DOM.XmlKeywords Text.XML.HXT.Arrow.XmlIOStateArrow 
Text.XML.HXT.Arrow.XmlArrow Text.XML.HXT.Arrow.ReadDocument> let hoge = deep isXText                                                                                        
<interactive>:1:16:
    Couldn't match expected type `NTree' against inferred type `[]'
      Expected type: NTree Text.XML.HXT.DOM.TypeDefs.XNode
                     -> NTree Text.XML.HXT.DOM.TypeDefs.XNode
      Inferred type: Text.XML.HXT.DOM.XmlTreeTypes.XmlFilter
    In the first argument of `deep', namely `isXText'
    In the expression: deep isXText

なんなんだ、もう。isXTextの型みるかぎり、deep isXTextがアウトになる意味がわからない。

途中をすっとばした俺が悪いのか。もーちょい、ちゃんと読んでみよう。