diff --git a/Text/XML/Light/Lexer.hs b/Text/XML/Light/Lexer.hs
--- a/Text/XML/Light/Lexer.hs
+++ b/Text/XML/Light/Lexer.hs
@@ -8,6 +8,8 @@
 import Numeric (readHex)
 import qualified Data.ByteString      as S
 import qualified Data.ByteString.Lazy as L
+import qualified Data.Text            as TS
+import qualified Data.Text.Lazy       as TL
 
 
 class XmlSource s where
@@ -24,6 +26,12 @@
 instance XmlSource L.ByteString where
   uncons bs = f `fmap` L.uncons bs
     where f (c,s) = (chr (fromEnum c), s)
+
+instance XmlSource TS.Text where
+  uncons = TS.uncons
+
+instance XmlSource TL.Text where
+  uncons = TL.uncons
 
 linenumber :: XmlSource s => Integer -> s -> LString
 linenumber n s = case uncons s of
diff --git a/xml.cabal b/xml.cabal
--- a/xml.cabal
+++ b/xml.cabal
@@ -1,5 +1,5 @@
 Name:            xml
-Version:         1.3.9
+Version:         1.3.10
 Homepage:        http://code.galois.com
 Synopsis:        A simple XML library.
 Description:     A simple XML library.
@@ -9,7 +9,7 @@
 Author:          Galois Inc.
 Maintainer:      diatchki@galois.com
 Copyright:       (c) 2007-2008 Galois Inc.
-Build-depends:   base >= 3 && < 5, bytestring
+Build-depends:   base >= 3 && < 5, bytestring, text
 Ghc-options:     -Wall -O2
 Exposed-modules: Text.XML.Light,
                  Text.XML.Light.Types,
