HaXml: Utilities for manipulating XML documents

[ lgpl, library, program, text, xml ] [ Propose Tags ] [ Report a vulnerability ]

Haskell utilities for parsing, filtering, transforming and generating XML documents.


[Skip to Readme]

Downloads

Note: This package has metadata revisions in the cabal description newer than included in the tarball. To unpack the package including the revisions, use 'cabal get'.

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 1.13.2, 1.13.3, 1.19, 1.19.1, 1.19.2, 1.19.3, 1.19.4, 1.19.5, 1.19.6, 1.19.7, 1.20, 1.20.1, 1.20.2, 1.22, 1.22.1, 1.22.2, 1.22.3, 1.22.4, 1.22.5, 1.23, 1.23.1, 1.23.2, 1.23.3, 1.24, 1.24.1, 1.25, 1.25.1, 1.25.2, 1.25.3, 1.25.4, 1.25.5, 1.25.6, 1.25.7, 1.25.8, 1.25.9, 1.25.10, 1.25.11, 1.25.12, 1.25.13, 1.25.14 (info)
Change log Changelog.md
Dependencies base (>=4.3.1.0 && <4.22), bytestring (>=0.9.1.10 && <0.13), containers (>=0.4.0.0 && <0.8), directory, filepath (>=1.2.0.0 && <1.6), HaXml, polyparse (>=1.12.1 && <1.14), pretty (>=1.0.1.2 && <1.2), random (>=1.0 && <1.4), semigroups (>=0.18.5 && <0.19) [details]
Tested with ghc ==9.8.2 || ==9.6.6 || ==9.4.8 || ==9.2.8 || ==9.0.2 || ==8.10.7 || ==8.8.4 || ==8.6.5 || ==8.4.4 || ==8.2.2 || ==8.0.2 || ==7.10.3
License LGPL-2.1-only[multiple license files]
Author Malcolm Wallace <Malcolm.Wallace@me.com>
Maintainer Jens Petersen <juhpetersen@gmail.com>
Revised Revision 1 made by JensPetersen at 2025-01-11T10:28:13Z
Category Text, XML
Home page https://github.com/HaXml/HaXml
Bug tracker https://github.com/HaXml/HaXml/issues
Source repo head: git clone https://github.com/HaXml/HaXml.git
Uploaded by JensPetersen at 2024-12-12T12:36:15Z
Distributions Debian:1.25.5, Fedora:1.25.14, FreeBSD:1.25.3, LTSHaskell:1.25.14, NixOS:1.25.14, Stackage:1.25.14
Reverse Dependencies 53 direct, 2174 indirect [details]
Executables FpMLToHaskell, XsdToHaskell, DtdToHaskell, MkOneOf, Validate, Xtract, CanonicaliseLazy, Canonicalise
Downloads 54035 total (42 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2024-12-12 [all 1 reports]

Readme for HaXml-1.25.14

[back to package description]
 HaXml - Haskell utilities for processing XML -------------------------------------------- Installation instructions: We currently support nhc98, ghc, and Hugs. The automatic configuration detects which compilers/interpreters you have, and prepares a build tree for each. Installation requires write-permission on the system directories of the compiler/interpreter - the libraries and interfaces can then be used as "-package HaXml" (for ghc/nhc98 - no extra options required for Hugs). The standalone tools are installed to a directory of your choice. For newer compilers, use Cabal to build and install: cabal install or runhaskell Setup.hs configure runhaskell Setup.hs build runhaskell Setup.hs install For older compilers, use the traditional sequence: ./configure make make install Options to configure are: --buildwith=... e.g. ghc-6.2, to build for a specific compiler --prefix=... e.g. /usr/local/bin, installation location for HaXml tools Complaints to: :-) Malcolm.Wallace@me.com P.S. For those building on Windows /without/ Cygwin, you can avoid the need for configure/make steps by simply running the minimal build script in Build.bat You will need to edit it for the location of your compiler etc. ---- What this package contains: docs/	Some rudimentary HTML documentation about the libraries. docs/HaXml/	Haddock-generated API documentation. examples/	Some small examples of how the libraries/tools are used. src/Text/XML/HaXml/	Numerous support modules for processing XML.	(The main APIs are as follows:)	Types.hs	Defines a (generic) representation for any XML document.	Parse.hs	Parses an XML document into the generic representation.	ParseLazy.hs	A more space-efficient parser.	Pretty.hs	Pretty-prints an XML document.	Validate.hs	Validates an XML document against a DTD.	Combinators.hs	Provides the combinators described in the ICFP'99 paper	together with some other useful functions.	SAX.hs	A simple SAX-like stream-event-parser.	Wrappers.hs	Simple top-level wrappers for processing a single	document using the combinators.	XmlContent.hs	A replacement class for Show/Read, to translate Haskell	values to/from XML documents. Can be derived by DrIFT	and/or DtdToHaskell.	TypeMapping.hs	Defines an explicit representation for Haskell types,	allowing generation of a DTD from a Haskell value.	OneOfN.hs	Some support types (OneOf2 - OneOf20) for code	generated by tools/DtdToHaskell. src/Text/XML/HaXml/Html	Extra support modules for processing HTML.	Parse.hs	An error-correcting HTML parser, produces the generic	XML representation.	Pretty.hs	An HTML-specific pretty-printer.	Generate.hs	Some useful combinators for generating HTML content. src/Text/XML/HaXml/Schema	Extra support modules for processing Schema.	XSDTypeModel.hs	A representation of the datatype model of	Xml Schema in terms of XSD concepts.	HaskellTypeModel.hs	A representation of the datatype model of	Xml Schema in terms of Haskell datatypes.	Parse.hs	Parser from an XSD document to the XSD	type model above.	TypeConversion.hs	Translate from the XSD model to the Haskell	model.	PrettyHaskell.hs	Generate Haskell sourcecode from the Haskell	type model. src/tools/	Standalone tools based on the library above.	DtdToHaskell	Translates an XML doc containing a DTD into a Haskell	module containing data/newtype definitions.	Xtract	A structured 'grep' for XML docs, loosely based on	the XPath and XQL query languages.	Validate	A simple validation tool for XML docs. Give it a DTD	file and an XML file, and it reports all validation	errors it can find.	Canonicalise	A 'cat' filter for XML docs, shows our "standard"	parsing and pretty-printing behaviour.	MkOneOf	Generates a OneOfN type, given an N, together with	its required instance of XmlContent. Sometimes types	larger than OneOf20 are required in code generated by	DtdToHaskell.	XsdToHaskell	Translates an XSD schema into a Haskell module.	FpMLToHaskell	Translates the set of XSD schemas defining the FpML	language into a set of Haskell modules. src/Text/XML/HaXml/Xtract	Internal APIs of the Xtract tool.	Parse.hs	Parse an XPath query to produce a filter.	Combinators.hs	Modified version of the standard combinators. src/Text/XML/HaXml/DtdToHaskell	Internal APIs of the DtdToHaskell tool.	TypeDef.hs	A representation of the Haskell types corresponding	to an XML DTD, and a pretty printer for them.	Convert.hs	Convert the standard DTD representation to the	Haskell-like TypeDef representation.	Instance.hs	Generate appropriate XmlContent class instances for	the TypeDefs. ----