hxt

A collection of tools for processing XML with Haskell.

https://github.com/UweSchmidt/hxt

Version on this page:9.3.1.16
LTS Haskell 22.14:9.3.1.22
Stackage Nightly 2024-03-28:9.3.1.22
Latest on Hackage:9.3.1.22

See all snapshots hxt appears in

MIT licensed by Uwe Schmidt, Martin Schmidt, Torben Kuseler
Maintained by Uwe Schmidt
This version can be pinned in stack with:hxt-9.3.1.16@sha256:0a59d7e4b2002823f82695039c13dc9eba7d9b3e8e131f1b8ccd4b66c8d364e3,9451

Module documentation for 9.3.1.16

  • Control
    • Control.Arrow
      • Control.Arrow.ArrowExc
      • Control.Arrow.ArrowIO
      • Control.Arrow.ArrowIf
      • Control.Arrow.ArrowList
      • Control.Arrow.ArrowNF
      • Control.Arrow.ArrowNavigatableTree
      • Control.Arrow.ArrowState
      • Control.Arrow.ArrowTree
      • Control.Arrow.IOListArrow
      • Control.Arrow.IOStateListArrow
      • Control.Arrow.ListArrow
      • Control.Arrow.ListArrows
      • Control.Arrow.NTreeEdit
      • Control.Arrow.StateListArrow
    • Control.FlatSeq
  • Data
    • Data.AssocList
    • Data.Atom
    • Data.Function
      • Data.Function.Selector
    • Data.Tree
      • Data.Tree.Class
      • Data.Tree.NTree
        • Data.Tree.NTree.Edit
        • Data.Tree.NTree.TypeDefs
        • Data.Tree.NTree.Zipper
          • Data.Tree.NTree.Zipper.TypeDefs
      • Data.Tree.NavigatableTree
        • Data.Tree.NavigatableTree.Class
        • Data.Tree.NavigatableTree.XPathAxis
  • Text
    • Text.XML
      • Text.XML.HXT
        • Text.XML.HXT.Arrow
          • Text.XML.HXT.Arrow.Binary
          • Text.XML.HXT.Arrow.DTDProcessing
          • Text.XML.HXT.Arrow.DocumentInput
          • Text.XML.HXT.Arrow.DocumentOutput
          • Text.XML.HXT.Arrow.Edit
          • Text.XML.HXT.Arrow.GeneralEntitySubstitution
          • Text.XML.HXT.Arrow.Namespace
          • Text.XML.HXT.Arrow.ParserInterface
          • Text.XML.HXT.Arrow.Pickle
            • Text.XML.HXT.Arrow.Pickle.DTD
            • Text.XML.HXT.Arrow.Pickle.Schema
            • Text.XML.HXT.Arrow.Pickle.Xml
          • Text.XML.HXT.Arrow.ProcessDocument
          • Text.XML.HXT.Arrow.ReadDocument
          • Text.XML.HXT.Arrow.WriteDocument
          • Text.XML.HXT.Arrow.XmlArrow
          • Text.XML.HXT.Arrow.XmlOptions
          • Text.XML.HXT.Arrow.XmlRegex
          • Text.XML.HXT.Arrow.XmlState
            • Text.XML.HXT.Arrow.XmlState.ErrorHandling
            • Text.XML.HXT.Arrow.XmlState.MimeTypeTable
            • Text.XML.HXT.Arrow.XmlState.RunIOStateArrow
            • Text.XML.HXT.Arrow.XmlState.SystemConfig
            • Text.XML.HXT.Arrow.XmlState.TraceHandling
            • Text.XML.HXT.Arrow.XmlState.TypeDefs
            • Text.XML.HXT.Arrow.XmlState.URIHandling
        • Text.XML.HXT.Core
        • Text.XML.HXT.DOM
          • Text.XML.HXT.DOM.FormatXmlTree
          • Text.XML.HXT.DOM.Interface
          • Text.XML.HXT.DOM.MimeTypeDefaults
          • Text.XML.HXT.DOM.MimeTypes
          • Text.XML.HXT.DOM.QualifiedName
          • Text.XML.HXT.DOM.ShowXml
          • Text.XML.HXT.DOM.TypeDefs
          • Text.XML.HXT.DOM.Util
          • Text.XML.HXT.DOM.XmlKeywords
          • Text.XML.HXT.DOM.XmlNode
        • Text.XML.HXT.DTDValidation
          • Text.XML.HXT.DTDValidation.AttributeValueValidation
          • Text.XML.HXT.DTDValidation.DTDValidation
          • Text.XML.HXT.DTDValidation.DocTransformation
          • Text.XML.HXT.DTDValidation.DocValidation
          • Text.XML.HXT.DTDValidation.IdValidation
          • Text.XML.HXT.DTDValidation.RE
          • Text.XML.HXT.DTDValidation.TypeDefs
          • Text.XML.HXT.DTDValidation.Validation
          • Text.XML.HXT.DTDValidation.XmlRE
        • Text.XML.HXT.IO
          • Text.XML.HXT.IO.GetFILE
        • Text.XML.HXT.Parser
          • Text.XML.HXT.Parser.HtmlParsec
          • Text.XML.HXT.Parser.ProtocolHandlerUtil
          • Text.XML.HXT.Parser.XhtmlEntities
          • Text.XML.HXT.Parser.XmlCharParser
          • Text.XML.HXT.Parser.XmlDTDParser
          • Text.XML.HXT.Parser.XmlDTDTokenParser
          • Text.XML.HXT.Parser.XmlEntities
          • Text.XML.HXT.Parser.XmlParsec
          • Text.XML.HXT.Parser.XmlTokenParser
        • Text.XML.HXT.Version
        • Text.XML.HXT.XMLSchema
          • Text.XML.HXT.XMLSchema.DataTypeLibW3CNames

The Haskell XML Toolbox bases on the ideas of HaXml and HXML, but introduces a more general approach for processing XML with Haskell. The Haskell XML Toolbox uses a generic data model for representing XML documents, including the DTD subset and the document subset, in Haskell. It contains a validating XML parser, a HTML parser, namespace support, an XPath expression evaluator, an XSLT library, a RelaxNG schema validator and funtions for serialization and deserialization of user defined data. The library makes extensive use of the arrow approach for processing XML. Since version 9 the toolbox is partitioned into various (sub-)packages. This package contains the core functionality, hxt-curl, hxt-tagsoup, hxt-relaxng, hxt-xpath, hxt-xslt, hxt-regex-xmlschema contain the extensions. hxt-unicode contains encoding and decoding functions, hxt-charproperties char properties for unicode and XML.

Changes from 9.3.1.15: Bug in quoting PI instructions in showXmlTrees fixed

Changes from 9.3.1.14: For ghc-7.10 network-uri is automatically selected

Changes from 9.3.1.13: ghc-7.10 compatibility

Changes from 9.3.1.12: Bug when unpickling an empty attribute value removed

Changes from 9.3.1.11: Bug fix in haddock comments

Changes from 9.3.1.10: Bug in DTD validation, space and time leak in delta removed

Changes from 9.3.1.9: lower bound of mtl dependency lowered to 2.0.1

Changes from 9.3.1.8: Bug in hread removed

Changes from 9.3.1.7: Foldable and Traversable instances for NTree added Control.Except used instead of deprecated Control.Error

Changes from 9.3.1.6: canonicalize added in hread and hreadDoc

Changes from 9.3.1.4: conditionally (no default) dependency from networt changed to network-uri with flag "network-uri"

Changes from 9.3.1.3: warnings from ghc-7.8.1 removed

Changes from 9.3.1.2: https as protocol added

Changes from 9.3.1.1: new parser xreadDoc

Changes from 9.3.1.0: in readString all input decoding switched off

Changes from 9.3.0.1: lower bound for network set to be >= 2.4

Changes from 9.3.0: upper bound for network set to be < 2.4 (URI signatures changed in 2.4)

Changes from 9.2.2: XMLSchema validation integrated

Changes from 9.2.1: user defined mime type handlers added

Changes from 9.2.0: New warnings from ghc-7.4 removed