hxt- A collection of tools for processing XML with Haskell.

CopyrightCopyright (C) 2008 Uwe Schmidt
MaintainerUwe Schmidt (uwe@fh-wedel.de)
Safe HaskellNone



This module provides functions for validating the DTD of XML documents represented as XmlTree.

Unlike other popular XML validation tools the validation process returns a list of errors instead of aborting after the first error was found.

Unlike validation of the document, the DTD branch is traversed four times:

  • Validation of Notations

    • Validation of Unparsed Entities
    • Validation of Element declarations
    • Validation of Attribute declarations



removeDoublicateDefs :: XmlArrow Source

Removes doublicate declarations from the DTD, which first declaration is binding. This is the case for ATTLIST and ENTITY declarations.

  • returns : A function that replaces the children of DOCTYPE nodes by a list where all multiple declarations are removed.

validateDTD :: XmlArrow Source

Validate a DTD.

  • returns : a functions which takes the DTD subset of the XmlTree, checks if the DTD is valid and returns a list of errors