| hxt-8.5.4: A collection of tools for processing XML with Haskell. | Source code | Contents | Index
Text.XML.HXT.Arrow.Edit |
Portability | portable
Stability | stable
Maintainer | Uwe Schmidt (uwe@fh-wedel.de)
Description
common edit arrows
Synopsis
canonicalizeAllNodes :: ArrowList a => a XmlTree XmlTree
canonicalizeForXPath :: ArrowList a => a XmlTree XmlTree
canonicalizeContents :: ArrowList a => a XmlTree XmlTree
collapseAllXText :: ArrowList a => a XmlTree XmlTree
collapseXText :: ArrowList a => a XmlTree XmlTree
xshowEscapeXml :: ArrowXml a => a n XmlTree -> a n String
escapeXmlDoc :: ArrowList a => a XmlTree XmlTree
escapeHtmlDoc :: ArrowList a => a XmlTree XmlTree
haskellRepOfXmlDoc :: ArrowList a => a XmlTree XmlTree
treeRepOfXmlDoc :: ArrowList a => a XmlTree XmlTree
addHeadlineToXmlDoc :: ArrowXml a => a XmlTree XmlTree
indentDoc :: ArrowXml a => a XmlTree XmlTree
numberLinesInXmlDoc :: ArrowList a => a XmlTree XmlTree
preventEmptyElements :: ArrowList a => [String] -> Bool -> a XmlTree XmlTree
removeComment :: ArrowXml a => a XmlTree XmlTree
removeAllComment :: ArrowXml a => a XmlTree XmlTree
removeWhiteSpace :: ArrowXml a => a XmlTree XmlTree
removeAllWhiteSpace :: ArrowXml a => a XmlTree XmlTree
removeDocWhiteSpace :: ArrowXml a => a XmlTree XmlTree
transfCdata :: ArrowXml a => a XmlTree XmlTree
transfAllCdata :: ArrowXml a => a XmlTree XmlTree
transfCharRef :: ArrowXml a => a XmlTree XmlTree
transfAllCharRef :: ArrowXml a => a XmlTree XmlTree
rememberDTDAttrl :: ArrowList a => a XmlTree XmlTree
addDefaultDTDecl :: ArrowList a => a XmlTree XmlTree
hasXmlPi :: ArrowXml a => a XmlTree XmlTree
addXmlPi :: ArrowXml a => a XmlTree XmlTree
addXmlPiEncoding :: ArrowXml a => String -> a XmlTree XmlTree
addDoctypeDecl :: ArrowXml a => String -> String -> String -> a XmlTree XmlTree
addXHtmlDoctypeStrict :: ArrowXml a => a XmlTree XmlTree
addXHtmlDoctypeTransitional :: ArrowXml a => a XmlTree XmlTree
addXHtmlDoctypeFrameset :: ArrowXml a => a XmlTree XmlTree
Documentation
canonicalizeAllNodes :: ArrowList a => a XmlTree XmlTree | Source
Applies some Canonical XML rules to a document tree. The rule differ slightly for canonical XML and XPath in handling of comments Note: This is not the whole canonicalization as it is specified by the W3C Recommendation. Adding attribute defaults or sorting attributes in lexicographic order is done by the `transform` function of module `Text.XML.HXT.Validator.Validation`. Replacing entities or line feed normalization is done by the parser. Rules: remove DTD parts, processing instructions, comments and substitute char refs in attribute values and text Not implemented yet: Whitespace within start and end tags is normalized Special characters in attribute values and character content are replaced by character references
canonicalizeForXPath :: ArrowList a => a XmlTree XmlTree | Source
Canonicalize a tree for XPath Like `canonicalizeAllNodes` but comment nodes are not removed see `canonicalizeAllNodes`
canonicalizeContents :: ArrowList a => a XmlTree XmlTree | Source
Canonicalize the contents of a document substitutes all char refs in text and attribute values, removes CDATA section and combines all sequences of resulting text nodes into a single text node see `canonicalizeAllNodes`
collapseAllXText :: ArrowList a => a XmlTree XmlTree | Source
Applies collapseXText recursively. see also : `collapseXText`
collapseXText :: ArrowList a => a XmlTree XmlTree | Source
Collects sequences of text nodes in the list of children of a node into one single text node. This is useful, e.g. after char and entity reference substitution
xshowEscapeXml :: ArrowXml a => a n XmlTree -> a n String | Source
apply an arrow to the input and convert the resulting XML trees into an XML escaped string This is a save variant for converting a tree into an XML string representation that is parsable with Text.XML.HXT.Arrow.ReadDocument. It is implemented with `xshow`, but xshow does no XML escaping. The XML escaping is done with `escapeXmlDoc` before xshow is applied. So the following law holds
     xshowEscape f >>> xread == f
escapeXmlDoc :: ArrowList a => a XmlTree XmlTree | Source
escape all special XML chars into XML entity references or char references convert the special XML chars < and & in text nodes into prefefiened XML entity references, in attribute values also ', ", >, \n, \r and \t are converted into entity or char references, in comments nothing is converted (see XML standard 2.4, useful e.g. for JavaScript).
escapeHtmlDoc :: ArrowList a => a XmlTree XmlTree | Source
escape all special HTML chars into XHTML entity references or char references convert the special XML chars < and & and all none ASCII chars in text nodes into prefefiened XML or XHTML entity references, in attribute values also ', ", >, \n, \r and \t are converted into entity or char references, in comments nothing is converted
haskellRepOfXmlDoc :: ArrowList a => a XmlTree XmlTree | Source
convert a document into a Haskell representation (with show). Useful for debugging and trace output. see also : `treeRepOfXmlDoc`, `numberLinesInXmlDoc`
treeRepOfXmlDoc :: ArrowList a => a XmlTree XmlTree | Source
convert a document into a text representation in tree form. Useful for debugging and trace output. see also : `haskellRepOfXmlDoc`, `numberLinesInXmlDoc`
addHeadlineToXmlDoc :: ArrowXml a => a XmlTree XmlTree | Source
indentDoc :: ArrowXml a => a XmlTree XmlTree | Source
filter for indenting a document tree for pretty printing. the tree is traversed for inserting whitespace for tag indentation. whitespace is only inserted or changed at places, where it isn't significant, is's not inserted between tags and text containing non whitespace chars. whitespace is only inserted or changed at places, where it's not significant. preserving whitespace may be controlled in a document tree by a tag attribute `xml:space` allowed values for this attribute are `default | preserve`. input is a complete document tree or a document fragment result is the semantically equivalent formatted tree. see also : `removeDocWhiteSpace`
numberLinesInXmlDoc :: ArrowList a => a XmlTree XmlTree | Source
convert a document into a text and add line numbers to the text representation. Result is a root node with a single text node as child. Useful for debugging and trace output. see also : `haskellRepOfXmlDoc`, `treeRepOfXmlDoc`
preventEmptyElements :: ArrowList a => [String] -> Bool -> a XmlTree XmlTree | Source
removeComment :: ArrowXml a => a XmlTree XmlTree | Source
remove Comments: `none `when` isCmt`
removeAllComment :: ArrowXml a => a XmlTree XmlTree | Source
remove all comments recursively
removeWhiteSpace :: ArrowXml a => a XmlTree XmlTree | Source
simple filter for removing whitespace. no check on sigificant whitespace, e.g. in HTML <pre>-elements, is done. see also : `removeAllWhiteSpace`, `removeDocWhiteSpace`
removeAllWhiteSpace :: ArrowXml a => a XmlTree XmlTree | Source
simple recursive filter for removing all whitespace. removes all text nodes in a tree that consist only of whitespace. see also : `removeWhiteSpace`, `removeDocWhiteSpace`
removeDocWhiteSpace :: ArrowXml a => a XmlTree XmlTree | Source
filter for removing all not significant whitespace. the tree traversed for removing whitespace between elements, that was inserted for indentation and readability. whitespace is only removed at places, where it's not significat preserving whitespace may be controlled in a document tree by a tag attribute `xml:space` allowed values for this attribute are `default | preserve` input is root node of the document to be cleaned up, output the semantically equivalent simplified tree see also : `indentDoc`, `removeAllWhiteSpace`
transfCdata :: ArrowXml a => a XmlTree XmlTree | Source
converts a CDATA section node into a normal text node
transfAllCdata :: ArrowXml a => a XmlTree XmlTree | Source
converts CDATA sections in whole document tree into normal text nodes
transfCharRef :: ArrowXml a => a XmlTree XmlTree | Source
converts character references to normal text
transfAllCharRef :: ArrowXml a => a XmlTree XmlTree | Source
recursively converts all character references to normal text
rememberDTDAttrl :: ArrowList a => a XmlTree XmlTree | Source
addDefaultDTDecl :: ArrowList a => a XmlTree XmlTree | Source
hasXmlPi :: ArrowXml a => a XmlTree XmlTree | Source
addXmlPi :: ArrowXml a => a XmlTree XmlTree | Source
add an <?xml version="1.0"?> processing instruction if it's not already there
addXmlPiEncoding :: ArrowXml a => String -> a XmlTree XmlTree | Source
add an encoding spec to the <?xml version="1.0"?> processing instruction
addDoctypeDecl :: ArrowXml a => String -> String -> String -> a XmlTree XmlTree | Source
add an XHTML strict doctype declaration to a document add an XHTML transitional doctype declaration to a document add an XHTML frameset doctype declaration to a document add a doctype declaration to a document The arguments are the root element name, the PUBLIC id and the SYSTEM id
addXHtmlDoctypeStrict :: ArrowXml a => a XmlTree XmlTree | Source
addXHtmlDoctypeTransitional :: ArrowXml a => a XmlTree XmlTree | Source
add an XHTML strict doctype declaration to a document
addXHtmlDoctypeFrameset :: ArrowXml a => a XmlTree XmlTree | Source
Produced by Haddock version 2.4.2