hxt-8.0.0: doc/hdoc/src/Text-XML-HXT-DTDValidation-TypeDefs.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<head>
<!-- Generated by HsColour, http://www.cs.york.ac.uk/fp/darcs/hscolour/ -->
<title>Haskell Code by HsColour</title>
<link type='text/css' rel='stylesheet' href='hscolour.css' />
</head>
<body>
<pre><a name="line-1"></a><span class='comment'>-- ------------------------------------------------------------</span>
<a name="line-2"></a>
<a name="line-3"></a><span class='comment'>{- |
<a name="line-4"></a> Module : Text.XML.HXT.DTDValidation.TypeDefs
<a name="line-5"></a> Copyright : Copyright (C) 2008 Uwe Schmidt
<a name="line-6"></a> License : MIT
<a name="line-7"></a>
<a name="line-8"></a> Maintainer : Uwe Schmidt (uwe@fh-wedel.de)
<a name="line-9"></a> Stability : experimental
<a name="line-10"></a> Portability: portable
<a name="line-11"></a>
<a name="line-12"></a> This module provides all datatypes for DTD validation
<a name="line-13"></a>
<a name="line-14"></a>-}</span>
<a name="line-15"></a>
<a name="line-16"></a><span class='comment'>-- ------------------------------------------------------------</span>
<a name="line-17"></a>
<a name="line-18"></a><span class='keyword'>module</span> <span class='conid'>Text</span><span class='varop'>.</span><span class='conid'>XML</span><span class='varop'>.</span><span class='conid'>HXT</span><span class='varop'>.</span><span class='conid'>DTDValidation</span><span class='varop'>.</span><span class='conid'>TypeDefs</span>
<a name="line-19"></a> <span class='layout'>(</span> <span class='keyword'>module</span> <span class='conid'>Text</span><span class='varop'>.</span><span class='conid'>XML</span><span class='varop'>.</span><span class='conid'>HXT</span><span class='varop'>.</span><span class='conid'>DTDValidation</span><span class='varop'>.</span><span class='conid'>TypeDefs</span>
<a name="line-20"></a> <span class='layout'>,</span> <span class='keyword'>module</span> <span class='conid'>Text</span><span class='varop'>.</span><span class='conid'>XML</span><span class='varop'>.</span><span class='conid'>HXT</span><span class='varop'>.</span><span class='conid'>DOM</span><span class='varop'>.</span><span class='conid'>Interface</span>
<a name="line-21"></a> <span class='layout'>,</span> <span class='keyword'>module</span> <span class='conid'>Text</span><span class='varop'>.</span><span class='conid'>XML</span><span class='varop'>.</span><span class='conid'>HXT</span><span class='varop'>.</span><span class='conid'>Arrow</span><span class='varop'>.</span><span class='conid'>XmlArrow</span>
<a name="line-22"></a> <span class='layout'>,</span> <span class='keyword'>module</span> <span class='conid'>Control</span><span class='varop'>.</span><span class='conid'>Arrow</span>
<a name="line-23"></a> <span class='layout'>,</span> <span class='keyword'>module</span> <span class='conid'>Control</span><span class='varop'>.</span><span class='conid'>Arrow</span><span class='varop'>.</span><span class='conid'>ArrowList</span>
<a name="line-24"></a> <span class='layout'>,</span> <span class='keyword'>module</span> <span class='conid'>Control</span><span class='varop'>.</span><span class='conid'>Arrow</span><span class='varop'>.</span><span class='conid'>ArrowIf</span>
<a name="line-25"></a> <span class='layout'>,</span> <span class='keyword'>module</span> <span class='conid'>Control</span><span class='varop'>.</span><span class='conid'>Arrow</span><span class='varop'>.</span><span class='conid'>ArrowState</span>
<a name="line-26"></a> <span class='layout'>,</span> <span class='keyword'>module</span> <span class='conid'>Control</span><span class='varop'>.</span><span class='conid'>Arrow</span><span class='varop'>.</span><span class='conid'>ArrowTree</span>
<a name="line-27"></a> <span class='layout'>,</span> <span class='keyword'>module</span> <span class='conid'>Control</span><span class='varop'>.</span><span class='conid'>Arrow</span><span class='varop'>.</span><span class='conid'>ListArrow</span>
<a name="line-28"></a> <span class='layout'>,</span> <span class='keyword'>module</span> <span class='conid'>Control</span><span class='varop'>.</span><span class='conid'>Arrow</span><span class='varop'>.</span><span class='conid'>StateListArrow</span>
<a name="line-29"></a> <span class='layout'>)</span>
<a name="line-30"></a><span class='keyword'>where</span>
<a name="line-31"></a>
<a name="line-32"></a><span class='keyword'>import</span> <span class='conid'>Control</span><span class='varop'>.</span><span class='conid'>Arrow</span> <span class='comment'>-- classes</span>
<a name="line-33"></a><span class='keyword'>import</span> <span class='conid'>Control</span><span class='varop'>.</span><span class='conid'>Arrow</span><span class='varop'>.</span><span class='conid'>ArrowList</span>
<a name="line-34"></a><span class='keyword'>import</span> <span class='conid'>Control</span><span class='varop'>.</span><span class='conid'>Arrow</span><span class='varop'>.</span><span class='conid'>ArrowIf</span>
<a name="line-35"></a><span class='keyword'>import</span> <span class='conid'>Control</span><span class='varop'>.</span><span class='conid'>Arrow</span><span class='varop'>.</span><span class='conid'>ArrowState</span>
<a name="line-36"></a><span class='keyword'>import</span> <span class='conid'>Control</span><span class='varop'>.</span><span class='conid'>Arrow</span><span class='varop'>.</span><span class='conid'>ArrowTree</span>
<a name="line-37"></a>
<a name="line-38"></a><span class='keyword'>import</span> <span class='conid'>Control</span><span class='varop'>.</span><span class='conid'>Arrow</span><span class='varop'>.</span><span class='conid'>ListArrow</span> <span class='comment'>-- arrow types</span>
<a name="line-39"></a><span class='keyword'>import</span> <span class='conid'>Control</span><span class='varop'>.</span><span class='conid'>Arrow</span><span class='varop'>.</span><span class='conid'>StateListArrow</span>
<a name="line-40"></a>
<a name="line-41"></a><span class='keyword'>import</span> <span class='conid'>Text</span><span class='varop'>.</span><span class='conid'>XML</span><span class='varop'>.</span><span class='conid'>HXT</span><span class='varop'>.</span><span class='conid'>Arrow</span><span class='varop'>.</span><span class='conid'>XmlArrow</span>
<a name="line-42"></a>
<a name="line-43"></a><span class='keyword'>import</span> <span class='conid'>Text</span><span class='varop'>.</span><span class='conid'>XML</span><span class='varop'>.</span><span class='conid'>HXT</span><span class='varop'>.</span><span class='conid'>DOM</span><span class='varop'>.</span><span class='conid'>Interface</span>
<a name="line-44"></a><span class='keyword'>import</span> <span class='keyword'>qualified</span> <span class='conid'>Text</span><span class='varop'>.</span><span class='conid'>XML</span><span class='varop'>.</span><span class='conid'>HXT</span><span class='varop'>.</span><span class='conid'>DOM</span><span class='varop'>.</span><span class='conid'>XmlNode</span> <span class='keyword'>as</span> <span class='conid'>XN</span>
<a name="line-45"></a>
<a name="line-46"></a><span class='comment'>-- ------------------------------------------------------------</span>
<a name="line-47"></a>
<a name="line-48"></a><span class='keyword'>infixr</span> <span class='num'>0</span> <span class='varop'>$$</span>
<a name="line-49"></a>
<a name="line-50"></a><a name="XmlArrow"></a><span class='keyword'>type</span> <span class='conid'>XmlArrow</span> <span class='keyglyph'>=</span> <span class='conid'>LA</span> <span class='conid'>XmlTree</span> <span class='conid'>XmlTree</span>
<a name="line-51"></a><a name="XmlArrowS"></a><span class='keyword'>type</span> <span class='conid'>XmlArrowS</span> <span class='keyglyph'>=</span> <span class='conid'>LA</span> <span class='conid'>XmlTree</span> <span class='conid'>XmlTrees</span>
<a name="line-52"></a>
<a name="line-53"></a><span class='comment'>-- ------------------------------------------------------------</span>
<a name="line-54"></a>
<a name="line-55"></a><a name="dtd_name"></a><span class='definition'>dtd_name</span>
<a name="line-56"></a> <span class='layout'>,</span> <span class='varid'>dtd_value</span>
<a name="line-57"></a> <span class='layout'>,</span> <span class='varid'>dtd_type</span>
<a name="line-58"></a> <span class='layout'>,</span> <span class='varid'>dtd_kind</span>
<a name="line-59"></a> <span class='layout'>,</span> <span class='varid'>dtd_modifier</span>
<a name="line-60"></a> <span class='layout'>,</span> <span class='varid'>dtd_default</span> <span class='keyglyph'>::</span> <span class='conid'>Attributes</span> <span class='keyglyph'>-></span> <span class='conid'>String</span>
<a name="line-61"></a>
<a name="line-62"></a><span class='definition'>dtd_name</span> <span class='keyglyph'>=</span> <span class='varid'>lookup1</span> <span class='varid'>a_name</span>
<a name="line-63"></a><a name="dtd_value"></a><span class='definition'>dtd_value</span> <span class='keyglyph'>=</span> <span class='varid'>lookup1</span> <span class='varid'>a_value</span>
<a name="line-64"></a><a name="dtd_type"></a><span class='definition'>dtd_type</span> <span class='keyglyph'>=</span> <span class='varid'>lookup1</span> <span class='varid'>a_type</span>
<a name="line-65"></a><a name="dtd_kind"></a><span class='definition'>dtd_kind</span> <span class='keyglyph'>=</span> <span class='varid'>lookup1</span> <span class='varid'>a_kind</span>
<a name="line-66"></a><a name="dtd_modifier"></a><span class='definition'>dtd_modifier</span> <span class='keyglyph'>=</span> <span class='varid'>lookup1</span> <span class='varid'>a_modifier</span>
<a name="line-67"></a><a name="dtd_default"></a><span class='definition'>dtd_default</span> <span class='keyglyph'>=</span> <span class='varid'>lookup1</span> <span class='varid'>a_default</span>
<a name="line-68"></a>
<a name="line-69"></a><span class='comment'>-- ------------------------------------------------------------</span>
<a name="line-70"></a>
<a name="line-71"></a><a name="isUnparsedEntity"></a><span class='definition'>isUnparsedEntity</span> <span class='keyglyph'>::</span> <span class='conid'>ArrowDTD</span> <span class='varid'>a</span> <span class='keyglyph'>=></span> <span class='varid'>a</span> <span class='conid'>XmlTree</span> <span class='conid'>XmlTree</span>
<a name="line-72"></a><span class='definition'>isUnparsedEntity</span> <span class='keyglyph'>=</span> <span class='varid'>filterA</span> <span class='varop'>$</span>
<a name="line-73"></a> <span class='varid'>getDTDAttrl</span> <span class='varop'>>>></span> <span class='varid'>isA</span> <span class='layout'>(</span><span class='varid'>hasEntry</span> <span class='varid'>k_ndata</span><span class='layout'>)</span>
<a name="line-74"></a>
<a name="line-75"></a><a name="hasDTDAttrValue"></a><span class='definition'>hasDTDAttrValue</span> <span class='keyglyph'>::</span> <span class='conid'>ArrowDTD</span> <span class='varid'>a</span> <span class='keyglyph'>=></span> <span class='conid'>String</span> <span class='keyglyph'>-></span> <span class='layout'>(</span><span class='conid'>String</span> <span class='keyglyph'>-></span> <span class='conid'>Bool</span><span class='layout'>)</span> <span class='keyglyph'>-></span> <span class='varid'>a</span> <span class='conid'>XmlTree</span> <span class='conid'>XmlTree</span>
<a name="line-76"></a><span class='definition'>hasDTDAttrValue</span> <span class='varid'>an</span> <span class='varid'>p</span> <span class='keyglyph'>=</span> <span class='varid'>filterA</span> <span class='varop'>$</span>
<a name="line-77"></a> <span class='varid'>getDTDAttrl</span> <span class='varop'>>>></span> <span class='varid'>isA</span> <span class='layout'>(</span><span class='varid'>p</span> <span class='varop'>.</span> <span class='varid'>lookup1</span> <span class='varid'>an</span><span class='layout'>)</span>
<a name="line-78"></a>
<a name="line-79"></a><a name="isRequiredAttrKind"></a><span class='definition'>isRequiredAttrKind</span> <span class='keyglyph'>::</span> <span class='conid'>ArrowDTD</span> <span class='varid'>a</span> <span class='keyglyph'>=></span> <span class='varid'>a</span> <span class='conid'>XmlTree</span> <span class='conid'>XmlTree</span>
<a name="line-80"></a><span class='definition'>isRequiredAttrKind</span> <span class='keyglyph'>=</span> <span class='varid'>hasDTDAttrValue</span> <span class='varid'>a_kind</span> <span class='layout'>(</span><span class='varop'>==</span> <span class='varid'>k_required</span><span class='layout'>)</span>
<a name="line-81"></a>
<a name="line-82"></a><a name="isDefaultAttrKind"></a><span class='definition'>isDefaultAttrKind</span> <span class='keyglyph'>::</span> <span class='conid'>ArrowDTD</span> <span class='varid'>a</span> <span class='keyglyph'>=></span> <span class='varid'>a</span> <span class='conid'>XmlTree</span> <span class='conid'>XmlTree</span>
<a name="line-83"></a><span class='definition'>isDefaultAttrKind</span> <span class='keyglyph'>=</span> <span class='varid'>hasDTDAttrValue</span> <span class='varid'>a_kind</span> <span class='layout'>(</span><span class='varop'>==</span> <span class='varid'>k_default</span><span class='layout'>)</span>
<a name="line-84"></a>
<a name="line-85"></a><a name="isFixedAttrKind"></a><span class='definition'>isFixedAttrKind</span> <span class='keyglyph'>::</span> <span class='conid'>ArrowDTD</span> <span class='varid'>a</span> <span class='keyglyph'>=></span> <span class='varid'>a</span> <span class='conid'>XmlTree</span> <span class='conid'>XmlTree</span>
<a name="line-86"></a><span class='definition'>isFixedAttrKind</span> <span class='keyglyph'>=</span> <span class='varid'>hasDTDAttrValue</span> <span class='varid'>a_kind</span> <span class='layout'>(</span><span class='varop'>==</span> <span class='varid'>k_fixed</span><span class='layout'>)</span>
<a name="line-87"></a>
<a name="line-88"></a><a name="isMixedContentElement"></a><span class='definition'>isMixedContentElement</span> <span class='keyglyph'>::</span> <span class='conid'>ArrowDTD</span> <span class='varid'>a</span> <span class='keyglyph'>=></span> <span class='varid'>a</span> <span class='conid'>XmlTree</span> <span class='conid'>XmlTree</span>
<a name="line-89"></a><span class='definition'>isMixedContentElement</span> <span class='keyglyph'>=</span> <span class='varid'>hasDTDAttrValue</span> <span class='varid'>a_type</span> <span class='layout'>(</span><span class='varop'>==</span> <span class='varid'>v_mixed</span><span class='layout'>)</span>
<a name="line-90"></a>
<a name="line-91"></a><a name="isEmptyElement"></a><span class='definition'>isEmptyElement</span> <span class='keyglyph'>::</span> <span class='conid'>ArrowDTD</span> <span class='varid'>a</span> <span class='keyglyph'>=></span> <span class='varid'>a</span> <span class='conid'>XmlTree</span> <span class='conid'>XmlTree</span>
<a name="line-92"></a><span class='definition'>isEmptyElement</span> <span class='keyglyph'>=</span> <span class='varid'>hasDTDAttrValue</span> <span class='varid'>a_type</span> <span class='layout'>(</span><span class='varop'>==</span> <span class='varid'>k_empty</span><span class='layout'>)</span>
<a name="line-93"></a>
<a name="line-94"></a><a name="isEnumAttrType"></a><span class='definition'>isEnumAttrType</span> <span class='keyglyph'>::</span> <span class='conid'>ArrowDTD</span> <span class='varid'>a</span> <span class='keyglyph'>=></span> <span class='varid'>a</span> <span class='conid'>XmlTree</span> <span class='conid'>XmlTree</span>
<a name="line-95"></a><span class='definition'>isEnumAttrType</span> <span class='keyglyph'>=</span> <span class='varid'>hasDTDAttrValue</span> <span class='varid'>a_type</span> <span class='layout'>(</span><span class='varop'>==</span> <span class='varid'>k_enumeration</span><span class='layout'>)</span>
<a name="line-96"></a>
<a name="line-97"></a><a name="isIdAttrType"></a><span class='definition'>isIdAttrType</span> <span class='keyglyph'>::</span> <span class='conid'>ArrowDTD</span> <span class='varid'>a</span> <span class='keyglyph'>=></span> <span class='varid'>a</span> <span class='conid'>XmlTree</span> <span class='conid'>XmlTree</span>
<a name="line-98"></a><span class='definition'>isIdAttrType</span> <span class='keyglyph'>=</span> <span class='varid'>hasDTDAttrValue</span> <span class='varid'>a_type</span> <span class='layout'>(</span><span class='varop'>==</span> <span class='varid'>k_id</span><span class='layout'>)</span>
<a name="line-99"></a>
<a name="line-100"></a><a name="isIdRefAttrType"></a><span class='definition'>isIdRefAttrType</span> <span class='keyglyph'>::</span> <span class='conid'>ArrowDTD</span> <span class='varid'>a</span> <span class='keyglyph'>=></span> <span class='varid'>a</span> <span class='conid'>XmlTree</span> <span class='conid'>XmlTree</span>
<a name="line-101"></a><span class='definition'>isIdRefAttrType</span> <span class='keyglyph'>=</span> <span class='varid'>hasDTDAttrValue</span> <span class='varid'>a_type</span> <span class='layout'>(</span><span class='varop'>`elem`</span> <span class='keyglyph'>[</span><span class='varid'>k_idref</span><span class='layout'>,</span> <span class='varid'>k_idrefs</span><span class='keyglyph'>]</span><span class='layout'>)</span>
<a name="line-102"></a>
<a name="line-103"></a><a name="isNotationAttrType"></a><span class='definition'>isNotationAttrType</span> <span class='keyglyph'>::</span> <span class='conid'>ArrowDTD</span> <span class='varid'>a</span> <span class='keyglyph'>=></span> <span class='varid'>a</span> <span class='conid'>XmlTree</span> <span class='conid'>XmlTree</span>
<a name="line-104"></a><span class='definition'>isNotationAttrType</span> <span class='keyglyph'>=</span> <span class='varid'>hasDTDAttrValue</span> <span class='varid'>a_type</span> <span class='layout'>(</span><span class='varop'>==</span> <span class='varid'>k_notation</span><span class='layout'>)</span>
<a name="line-105"></a>
<a name="line-106"></a><a name="isAttlistOfElement"></a><span class='definition'>isAttlistOfElement</span> <span class='keyglyph'>::</span> <span class='conid'>ArrowDTD</span> <span class='varid'>a</span> <span class='keyglyph'>=></span> <span class='conid'>String</span> <span class='keyglyph'>-></span> <span class='varid'>a</span> <span class='conid'>XmlTree</span> <span class='conid'>XmlTree</span>
<a name="line-107"></a><span class='definition'>isAttlistOfElement</span> <span class='varid'>el</span> <span class='keyglyph'>=</span> <span class='varid'>isDTDAttlist</span>
<a name="line-108"></a> <span class='varop'>>>></span>
<a name="line-109"></a> <span class='varid'>hasDTDAttrValue</span> <span class='varid'>a_name</span> <span class='layout'>(</span><span class='varop'>==</span> <span class='varid'>el</span><span class='layout'>)</span>
<a name="line-110"></a>
<a name="line-111"></a><a name="valueOfDTD"></a><span class='definition'>valueOfDTD</span> <span class='keyglyph'>::</span> <span class='conid'>String</span> <span class='keyglyph'>-></span> <span class='conid'>XmlTree</span> <span class='keyglyph'>-></span> <span class='conid'>String</span>
<a name="line-112"></a><span class='definition'>valueOfDTD</span> <span class='varid'>n</span> <span class='keyglyph'>=</span> <span class='varid'>concat</span> <span class='varop'>.</span> <span class='varid'>runLA</span> <span class='layout'>(</span> <span class='varid'>getDTDAttrl</span> <span class='varop'>>>^</span> <span class='varid'>lookup1</span> <span class='varid'>n</span> <span class='layout'>)</span>
<a name="line-113"></a>
<a name="line-114"></a><a name="valueOf"></a><span class='definition'>valueOf</span> <span class='keyglyph'>::</span> <span class='conid'>String</span> <span class='keyglyph'>-></span> <span class='conid'>XmlTree</span> <span class='keyglyph'>-></span> <span class='conid'>String</span>
<a name="line-115"></a><span class='definition'>valueOf</span> <span class='varid'>n</span> <span class='keyglyph'>=</span> <span class='varid'>concat</span> <span class='varop'>.</span> <span class='varid'>runLA</span> <span class='layout'>(</span> <span class='varid'>getAttrValue</span> <span class='varid'>n</span> <span class='layout'>)</span>
<a name="line-116"></a>
<a name="line-117"></a><a name="getDTDAttributes"></a><span class='definition'>getDTDAttributes</span> <span class='keyglyph'>::</span> <span class='conid'>XmlTree</span> <span class='keyglyph'>-></span> <span class='conid'>Attributes</span>
<a name="line-118"></a><span class='definition'>getDTDAttributes</span> <span class='keyglyph'>=</span> <span class='varid'>concat</span> <span class='varop'>.</span> <span class='varid'>runLA</span> <span class='varid'>getDTDAttrl</span>
<a name="line-119"></a>
<a name="line-120"></a><a name="isDTDDoctypeNode"></a><span class='definition'>isDTDDoctypeNode</span> <span class='keyglyph'>::</span> <span class='conid'>XmlTree</span> <span class='keyglyph'>-></span> <span class='conid'>Bool</span>
<a name="line-121"></a><span class='definition'>isDTDDoctypeNode</span> <span class='keyglyph'>=</span> <span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>null</span> <span class='varop'>.</span> <span class='varid'>runLA</span> <span class='varid'>isDTDDoctype</span>
<a name="line-122"></a>
<a name="line-123"></a><a name="isDTDElementNode"></a><span class='definition'>isDTDElementNode</span> <span class='keyglyph'>::</span> <span class='conid'>XmlTree</span> <span class='keyglyph'>-></span> <span class='conid'>Bool</span>
<a name="line-124"></a><span class='definition'>isDTDElementNode</span> <span class='keyglyph'>=</span> <span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>null</span> <span class='varop'>.</span> <span class='varid'>runLA</span> <span class='varid'>isDTDElement</span>
<a name="line-125"></a>
<a name="line-126"></a><a name="isDTDAttlistNode"></a><span class='definition'>isDTDAttlistNode</span> <span class='keyglyph'>::</span> <span class='conid'>XmlTree</span> <span class='keyglyph'>-></span> <span class='conid'>Bool</span>
<a name="line-127"></a><span class='definition'>isDTDAttlistNode</span> <span class='keyglyph'>=</span> <span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>null</span> <span class='varop'>.</span> <span class='varid'>runLA</span> <span class='varid'>isDTDAttlist</span>
<a name="line-128"></a>
<a name="line-129"></a><a name="isDTDContentNode"></a><span class='definition'>isDTDContentNode</span> <span class='keyglyph'>::</span> <span class='conid'>XmlTree</span> <span class='keyglyph'>-></span> <span class='conid'>Bool</span>
<a name="line-130"></a><span class='definition'>isDTDContentNode</span> <span class='keyglyph'>=</span> <span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>null</span> <span class='varop'>.</span> <span class='varid'>runLA</span> <span class='varid'>isDTDContent</span>
<a name="line-131"></a>
<a name="line-132"></a><a name="isDTDNameNode"></a><span class='definition'>isDTDNameNode</span> <span class='keyglyph'>::</span> <span class='conid'>XmlTree</span> <span class='keyglyph'>-></span> <span class='conid'>Bool</span>
<a name="line-133"></a><span class='definition'>isDTDNameNode</span> <span class='keyglyph'>=</span> <span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>null</span> <span class='varop'>.</span> <span class='varid'>runLA</span> <span class='varid'>isDTDName</span>
<a name="line-134"></a>
<a name="line-135"></a><a name="isElemNode"></a><span class='definition'>isElemNode</span> <span class='keyglyph'>::</span> <span class='conid'>XmlTree</span> <span class='keyglyph'>-></span> <span class='conid'>Bool</span>
<a name="line-136"></a><span class='definition'>isElemNode</span> <span class='keyglyph'>=</span> <span class='varid'>not</span> <span class='varop'>.</span> <span class='varid'>null</span> <span class='varop'>.</span> <span class='varid'>runLA</span> <span class='varid'>isElem</span>
<a name="line-137"></a>
<a name="line-138"></a><a name="nameOfAttr"></a><span class='definition'>nameOfAttr</span> <span class='keyglyph'>::</span> <span class='conid'>XmlTree</span> <span class='keyglyph'>-></span> <span class='conid'>String</span>
<a name="line-139"></a><span class='definition'>nameOfAttr</span> <span class='keyglyph'>=</span> <span class='varid'>concat</span> <span class='varop'>.</span> <span class='varid'>runLA</span> <span class='layout'>(</span><span class='varid'>getAttrName</span> <span class='varop'>>>^</span> <span class='varid'>qualifiedName</span><span class='layout'>)</span>
<a name="line-140"></a>
<a name="line-141"></a><a name="nameOfElem"></a><span class='definition'>nameOfElem</span> <span class='keyglyph'>::</span> <span class='conid'>XmlTree</span> <span class='keyglyph'>-></span> <span class='conid'>String</span>
<a name="line-142"></a><span class='definition'>nameOfElem</span> <span class='keyglyph'>=</span> <span class='varid'>concat</span> <span class='varop'>.</span> <span class='varid'>runLA</span> <span class='layout'>(</span><span class='varid'>getElemName</span> <span class='varop'>>>^</span> <span class='varid'>qualifiedName</span><span class='layout'>)</span>
<a name="line-143"></a>
<a name="line-144"></a><span class='comment'>-- |</span>
<a name="line-145"></a><span class='comment'>-- infix operator for applying an arrow to a list of trees</span>
<a name="line-146"></a><span class='comment'>--</span>
<a name="line-147"></a><span class='comment'>-- * 1.parameter f : the arrow</span>
<a name="line-148"></a><span class='comment'>--</span>
<a name="line-149"></a><span class='comment'>-- - 2.parameter ts : the list of trees</span>
<a name="line-150"></a><span class='comment'>--</span>
<a name="line-151"></a><span class='comment'>-- - returns : list of results</span>
<a name="line-152"></a>
<a name="line-153"></a><a name="$$"></a><span class='layout'>(</span><span class='varop'>$$</span><span class='layout'>)</span> <span class='keyglyph'>::</span> <span class='conid'>XmlArrow</span> <span class='keyglyph'>-></span> <span class='conid'>XmlTrees</span> <span class='keyglyph'>-></span> <span class='conid'>XmlTrees</span>
<a name="line-154"></a><a name="f"></a><span class='definition'>f</span> <span class='varop'>$$</span> <span class='varid'>l</span> <span class='keyglyph'>=</span> <span class='varid'>runLA</span> <span class='layout'>(</span><span class='varid'>unlistA</span> <span class='varop'>>>></span> <span class='varid'>f</span><span class='layout'>)</span> <span class='varid'>l</span>
<a name="line-155"></a>
<a name="line-156"></a><span class='comment'>-- | create an error message</span>
<a name="line-157"></a>
<a name="line-158"></a><a name="msgToErr"></a><span class='definition'>msgToErr</span> <span class='keyglyph'>::</span> <span class='layout'>(</span><span class='conid'>String</span> <span class='keyglyph'>-></span> <span class='conid'>String</span><span class='layout'>)</span> <span class='keyglyph'>-></span> <span class='conid'>LA</span> <span class='conid'>String</span> <span class='conid'>XmlTree</span>
<a name="line-159"></a><span class='definition'>msgToErr</span> <span class='varid'>f</span> <span class='keyglyph'>=</span> <span class='varid'>mkErr</span> <span class='varop'>$<</span> <span class='varid'>this</span>
<a name="line-160"></a> <span class='keyword'>where</span>
<a name="line-161"></a> <span class='varid'>mkErr</span> <span class='str'>""</span> <span class='keyglyph'>=</span> <span class='varid'>none</span>
<a name="line-162"></a> <span class='varid'>mkErr</span> <span class='varid'>s</span> <span class='keyglyph'>=</span> <span class='varid'>err</span> <span class='layout'>(</span><span class='varid'>f</span> <span class='varid'>s</span><span class='layout'>)</span>
<a name="line-163"></a>
<a name="line-164"></a>
<a name="line-165"></a><span class='comment'>-- ------------------------------------------------------------</span>
</pre></body>
</html>