hxt 9.2.2 → 9.3.0.1
raw patch · 11 files changed
+231/−58 lines, 11 filesdep ~HUnitdep ~binarydep ~bytestringPVP ok
version bump matches the API change (PVP)
Dependency ranges changed: HUnit, binary, bytestring, containers, directory, filepath, mtl, parsec
API changes (from Hackage documentation)
- Text.XML.HXT.Arrow.Edit: addXHtmlDoctypeStrict, addXHtmlDoctypeFrameset, addXHtmlDoctypeTransitional :: ArrowXml a => a XmlTree XmlTree
- Text.XML.HXT.Arrow.ParserInterface: parseXmlEntityEncodingSpec, removeEncodingSpec, parseXmlDocEncodingSpec :: ArrowXml a => a XmlTree XmlTree
- Text.XML.HXT.Arrow.XmlOptions: a_accept_mimetypes, a_verbose, a_validate, a_trace, a_text_mode, a_subst_html_entities, a_subst_dtd_entities, a_strict_input, a_show_tree, a_show_haskell, a_remove_whitespace, a_redirect, a_proxy, a_preserve_comment, a_parse_xml, a_parse_html, a_parse_by_mimetype, a_output_plain, a_output_xhtml, a_output_html, a_output_xml, a_output_file, a_no_xml_pi, a_no_redirect, a_no_empty_elem_for, a_no_empty_elements, a_mime_types, a_issue_warnings, a_issue_errors, a_indent, a_ignore_none_xml_contents, a_ignore_encoding_errors, a_if_unmodified_since, a_if_modified_since, a_help, a_error_log, a_error, a_do_not_validate, a_do_not_subst_html_entities, a_do_not_subst_dtd_entities, a_do_not_remove_whitespace, a_do_not_preserve_comment, a_do_not_issue_warnings, a_do_not_issue_errors, a_do_not_check_namespaces, a_do_not_canonicalize, a_default_baseuri, a_collect_errors, a_check_namespaces, a_canonicalize, a_add_default_dtd :: String
- Text.XML.HXT.DOM.MimeTypes: application_xhtml, text_xml_external_parsed_entity, text_xml, text_xdtd, text_plain, text_pdf, text_html, application_xml_dtd, application_xml_external_parsed_entity, application_xml :: String
- Text.XML.HXT.DOM.QualifiedName: nullXName, xmlXName, xmlNamespaceXName, xmlnsXName, xmlnsNamespaceXName :: XName
- Text.XML.HXT.DOM.XmlKeywords: a_default, a_xmlns, a_xml, a_version, a_value, a_url, a_type, a_standalone, a_status, a_source, a_peref, a_output_encoding, a_name, a_modifier, a_module, a_line, a_kind, a_encoding, a_column, a_contentLength :: String
- Text.XML.HXT.DOM.XmlKeywords: k_any, k_default, k_required, k_pcdata, k_notation, k_ndata, k_implied, k_fixed, k_enumeration, k_system, k_public, k_peref, k_nmtokens, k_nmtoken, k_ignore, k_include, k_idrefs, k_idref, k_id, k_entities, k_entity, k_empty, k_cdata :: String
- Text.XML.HXT.DOM.XmlKeywords: t_xml, t_root :: String
- Text.XML.HXT.DOM.XmlKeywords: transferPrefix, transferVersion, transferMessage, transferStatus, transferDefaultURI, transferURI, transferEncoding, transferMimeType, transferProtocol :: String
- Text.XML.HXT.DOM.XmlKeywords: v_0, v_plus, v_star, v_pcdata, v_option, v_null, v_seq, v_mixed, v_empty, v_choice, v_children, v_any, v_no, v_yes, v_2, v_1 :: String
- Text.XML.HXT.DTDValidation.TypeDefs: dtd_name, dtd_default, dtd_modifier, dtd_kind, dtd_type, dtd_value :: Attributes -> String
- Text.XML.HXT.Parser.XmlTokenParser: bar, rpar, lpar, eq, comma :: XParser s ()
- Text.XML.HXT.Parser.XmlTokenParser: dq, amp, semi, gt, lt, sq :: XParser s ()
- Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_length, xsd_enumeration, xsd_pattern, xsd_fractionDigits, xsd_totalDigits, xsd_minInclusive, xsd_maxInclusive, xsd_minExclusive, xsd_maxExclusive, xsd_minLength, xsd_maxLength :: String
- Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_string, xsd_unsignedByte, xsd_unsignedShort, xsd_unsignedInt, xsd_unsignedLong, xsd_byte, xsd_short, xsd_int, xsd_long, xsd_positiveInteger, xsd_nonNegativeInteger, xsd_negativeInteger, xsd_nonPositiveInteger, xsd_integer, xsd_decimal, xsd_base64Binary, xsd_hexBinary, xsd_NOTATION, xsd_QName, xsd_anyURI, xsd_ENTITIES, xsd_ENTITY, xsd_IDREFS, xsd_IDREF, xsd_ID, xsd_NCName, xsd_Name, xsd_NMTOKENS, xsd_NMTOKEN, xsd_language, xsd_token, xsd_normalizedString :: String
+ Text.XML.HXT.Arrow.Edit: addXHtmlDoctypeFrameset :: ArrowXml a => a XmlTree XmlTree
+ Text.XML.HXT.Arrow.Edit: addXHtmlDoctypeStrict :: ArrowXml a => a XmlTree XmlTree
+ Text.XML.HXT.Arrow.Edit: addXHtmlDoctypeTransitional :: ArrowXml a => a XmlTree XmlTree
+ Text.XML.HXT.Arrow.ParserInterface: parseXmlDocEncodingSpec :: ArrowXml a => a XmlTree XmlTree
+ Text.XML.HXT.Arrow.ParserInterface: parseXmlEntityEncodingSpec :: ArrowXml a => a XmlTree XmlTree
+ Text.XML.HXT.Arrow.ParserInterface: removeEncodingSpec :: ArrowXml a => a XmlTree XmlTree
+ Text.XML.HXT.Arrow.XmlOptions: a_accept_mimetypes :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_add_default_dtd :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_canonicalize :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_check_namespaces :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_collect_errors :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_default_baseuri :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_do_not_canonicalize :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_do_not_check_namespaces :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_do_not_issue_errors :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_do_not_issue_warnings :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_do_not_preserve_comment :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_do_not_remove_whitespace :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_do_not_subst_dtd_entities :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_do_not_subst_html_entities :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_do_not_validate :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_error :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_error_log :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_help :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_if_modified_since :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_if_unmodified_since :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_ignore_encoding_errors :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_ignore_none_xml_contents :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_indent :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_issue_errors :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_issue_warnings :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_mime_types :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_no_empty_elem_for :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_no_empty_elements :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_no_redirect :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_no_xml_pi :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_output_file :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_output_html :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_output_plain :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_output_xhtml :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_output_xml :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_parse_by_mimetype :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_parse_html :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_parse_xml :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_preserve_comment :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_proxy :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_redirect :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_remove_whitespace :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_show_haskell :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_show_tree :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_strict_input :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_subst_dtd_entities :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_subst_html_entities :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_text_mode :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_trace :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_validate :: String
+ Text.XML.HXT.Arrow.XmlOptions: a_verbose :: String
+ Text.XML.HXT.Arrow.XmlRegex: mkMerge :: XmlRegex -> XmlRegex -> XmlRegex
+ Text.XML.HXT.Arrow.XmlRegex: mkPerm :: XmlRegex -> XmlRegex -> XmlRegex
+ Text.XML.HXT.Arrow.XmlRegex: mkPerms :: [XmlRegex] -> XmlRegex
+ Text.XML.HXT.Arrow.XmlRegex: mkPrim' :: (XmlTree -> Bool) -> String -> XmlRegex
+ Text.XML.HXT.Arrow.XmlState.RunIOStateArrow: dummyXmlSchemaValidator :: IOSArrow b b
+ Text.XML.HXT.Arrow.XmlState.RunIOStateArrow: initialXmlSchemaConfig :: XIOXmlSchemaConfig
+ Text.XML.HXT.Arrow.XmlState.TypeDefs: XIOScc :: !Bool -> String -> IOSArrow XmlTree XmlTree -> XIOXmlSchemaConfig
+ Text.XML.HXT.Arrow.XmlState.TypeDefs: data XIOXmlSchemaConfig
+ Text.XML.HXT.Arrow.XmlState.TypeDefs: theXmlSchemaConfig :: Selector XIOSysState XIOXmlSchemaConfig
+ Text.XML.HXT.Arrow.XmlState.TypeDefs: theXmlSchemaSchema :: Selector XIOSysState String
+ Text.XML.HXT.Arrow.XmlState.TypeDefs: theXmlSchemaValidate :: Selector XIOSysState Bool
+ Text.XML.HXT.Arrow.XmlState.TypeDefs: theXmlSchemaValidator :: Selector XIOSysState (IOSArrow XmlTree XmlTree)
+ Text.XML.HXT.Arrow.XmlState.TypeDefs: xioXmlSchemaConfig :: XIOSysEnv -> !XIOXmlSchemaConfig
+ Text.XML.HXT.Arrow.XmlState.TypeDefs: xioXmlSchemaSchema :: XIOXmlSchemaConfig -> String
+ Text.XML.HXT.Arrow.XmlState.TypeDefs: xioXmlSchemaValidate :: XIOXmlSchemaConfig -> !Bool
+ Text.XML.HXT.Arrow.XmlState.TypeDefs: xioXmlSchemaValidator :: XIOXmlSchemaConfig -> IOSArrow XmlTree XmlTree
+ Text.XML.HXT.DOM.MimeTypes: application_xhtml :: String
+ Text.XML.HXT.DOM.MimeTypes: application_xml :: String
+ Text.XML.HXT.DOM.MimeTypes: application_xml_dtd :: String
+ Text.XML.HXT.DOM.MimeTypes: application_xml_external_parsed_entity :: String
+ Text.XML.HXT.DOM.MimeTypes: text_html :: String
+ Text.XML.HXT.DOM.MimeTypes: text_pdf :: String
+ Text.XML.HXT.DOM.MimeTypes: text_plain :: String
+ Text.XML.HXT.DOM.MimeTypes: text_xdtd :: String
+ Text.XML.HXT.DOM.MimeTypes: text_xml :: String
+ Text.XML.HXT.DOM.MimeTypes: text_xml_external_parsed_entity :: String
+ Text.XML.HXT.DOM.QualifiedName: instance Ord QName
+ Text.XML.HXT.DOM.QualifiedName: nullXName :: XName
+ Text.XML.HXT.DOM.QualifiedName: xmlNamespaceXName :: XName
+ Text.XML.HXT.DOM.QualifiedName: xmlXName :: XName
+ Text.XML.HXT.DOM.QualifiedName: xmlnsNamespaceXName :: XName
+ Text.XML.HXT.DOM.QualifiedName: xmlnsXName :: XName
+ Text.XML.HXT.DOM.XmlKeywords: a_column :: String
+ Text.XML.HXT.DOM.XmlKeywords: a_contentLength :: String
+ Text.XML.HXT.DOM.XmlKeywords: a_default :: String
+ Text.XML.HXT.DOM.XmlKeywords: a_encoding :: String
+ Text.XML.HXT.DOM.XmlKeywords: a_kind :: String
+ Text.XML.HXT.DOM.XmlKeywords: a_line :: String
+ Text.XML.HXT.DOM.XmlKeywords: a_modifier :: String
+ Text.XML.HXT.DOM.XmlKeywords: a_module :: String
+ Text.XML.HXT.DOM.XmlKeywords: a_name :: String
+ Text.XML.HXT.DOM.XmlKeywords: a_output_encoding :: String
+ Text.XML.HXT.DOM.XmlKeywords: a_peref :: String
+ Text.XML.HXT.DOM.XmlKeywords: a_source :: String
+ Text.XML.HXT.DOM.XmlKeywords: a_standalone :: String
+ Text.XML.HXT.DOM.XmlKeywords: a_status :: String
+ Text.XML.HXT.DOM.XmlKeywords: a_type :: String
+ Text.XML.HXT.DOM.XmlKeywords: a_url :: String
+ Text.XML.HXT.DOM.XmlKeywords: a_value :: String
+ Text.XML.HXT.DOM.XmlKeywords: a_version :: String
+ Text.XML.HXT.DOM.XmlKeywords: a_xml :: String
+ Text.XML.HXT.DOM.XmlKeywords: a_xmlns :: String
+ Text.XML.HXT.DOM.XmlKeywords: k_any :: String
+ Text.XML.HXT.DOM.XmlKeywords: k_cdata :: String
+ Text.XML.HXT.DOM.XmlKeywords: k_default :: String
+ Text.XML.HXT.DOM.XmlKeywords: k_empty :: String
+ Text.XML.HXT.DOM.XmlKeywords: k_entities :: String
+ Text.XML.HXT.DOM.XmlKeywords: k_entity :: String
+ Text.XML.HXT.DOM.XmlKeywords: k_enumeration :: String
+ Text.XML.HXT.DOM.XmlKeywords: k_fixed :: String
+ Text.XML.HXT.DOM.XmlKeywords: k_id :: String
+ Text.XML.HXT.DOM.XmlKeywords: k_idref :: String
+ Text.XML.HXT.DOM.XmlKeywords: k_idrefs :: String
+ Text.XML.HXT.DOM.XmlKeywords: k_ignore :: String
+ Text.XML.HXT.DOM.XmlKeywords: k_implied :: String
+ Text.XML.HXT.DOM.XmlKeywords: k_include :: String
+ Text.XML.HXT.DOM.XmlKeywords: k_ndata :: String
+ Text.XML.HXT.DOM.XmlKeywords: k_nmtoken :: String
+ Text.XML.HXT.DOM.XmlKeywords: k_nmtokens :: String
+ Text.XML.HXT.DOM.XmlKeywords: k_notation :: String
+ Text.XML.HXT.DOM.XmlKeywords: k_pcdata :: String
+ Text.XML.HXT.DOM.XmlKeywords: k_peref :: String
+ Text.XML.HXT.DOM.XmlKeywords: k_public :: String
+ Text.XML.HXT.DOM.XmlKeywords: k_required :: String
+ Text.XML.HXT.DOM.XmlKeywords: k_system :: String
+ Text.XML.HXT.DOM.XmlKeywords: t_root :: String
+ Text.XML.HXT.DOM.XmlKeywords: t_xml :: String
+ Text.XML.HXT.DOM.XmlKeywords: transferDefaultURI :: String
+ Text.XML.HXT.DOM.XmlKeywords: transferEncoding :: String
+ Text.XML.HXT.DOM.XmlKeywords: transferMessage :: String
+ Text.XML.HXT.DOM.XmlKeywords: transferMimeType :: String
+ Text.XML.HXT.DOM.XmlKeywords: transferPrefix :: String
+ Text.XML.HXT.DOM.XmlKeywords: transferProtocol :: String
+ Text.XML.HXT.DOM.XmlKeywords: transferStatus :: String
+ Text.XML.HXT.DOM.XmlKeywords: transferURI :: String
+ Text.XML.HXT.DOM.XmlKeywords: transferVersion :: String
+ Text.XML.HXT.DOM.XmlKeywords: v_0 :: String
+ Text.XML.HXT.DOM.XmlKeywords: v_1 :: String
+ Text.XML.HXT.DOM.XmlKeywords: v_2 :: String
+ Text.XML.HXT.DOM.XmlKeywords: v_any :: String
+ Text.XML.HXT.DOM.XmlKeywords: v_children :: String
+ Text.XML.HXT.DOM.XmlKeywords: v_choice :: String
+ Text.XML.HXT.DOM.XmlKeywords: v_empty :: String
+ Text.XML.HXT.DOM.XmlKeywords: v_mixed :: String
+ Text.XML.HXT.DOM.XmlKeywords: v_no :: String
+ Text.XML.HXT.DOM.XmlKeywords: v_null :: String
+ Text.XML.HXT.DOM.XmlKeywords: v_option :: String
+ Text.XML.HXT.DOM.XmlKeywords: v_pcdata :: String
+ Text.XML.HXT.DOM.XmlKeywords: v_plus :: String
+ Text.XML.HXT.DOM.XmlKeywords: v_seq :: String
+ Text.XML.HXT.DOM.XmlKeywords: v_star :: String
+ Text.XML.HXT.DOM.XmlKeywords: v_yes :: String
+ Text.XML.HXT.DTDValidation.TypeDefs: dtd_default :: Attributes -> String
+ Text.XML.HXT.DTDValidation.TypeDefs: dtd_kind :: Attributes -> String
+ Text.XML.HXT.DTDValidation.TypeDefs: dtd_modifier :: Attributes -> String
+ Text.XML.HXT.DTDValidation.TypeDefs: dtd_name :: Attributes -> String
+ Text.XML.HXT.DTDValidation.TypeDefs: dtd_type :: Attributes -> String
+ Text.XML.HXT.DTDValidation.TypeDefs: dtd_value :: Attributes -> String
+ Text.XML.HXT.Parser.XmlTokenParser: amp :: XParser s ()
+ Text.XML.HXT.Parser.XmlTokenParser: bar :: XParser s ()
+ Text.XML.HXT.Parser.XmlTokenParser: comma :: XParser s ()
+ Text.XML.HXT.Parser.XmlTokenParser: dq :: XParser s ()
+ Text.XML.HXT.Parser.XmlTokenParser: eq :: XParser s ()
+ Text.XML.HXT.Parser.XmlTokenParser: gt :: XParser s ()
+ Text.XML.HXT.Parser.XmlTokenParser: lpar :: XParser s ()
+ Text.XML.HXT.Parser.XmlTokenParser: lt :: XParser s ()
+ Text.XML.HXT.Parser.XmlTokenParser: rpar :: XParser s ()
+ Text.XML.HXT.Parser.XmlTokenParser: semi :: XParser s ()
+ Text.XML.HXT.Parser.XmlTokenParser: sq :: XParser s ()
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_ENTITIES :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_ENTITY :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_ID :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_IDREF :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_IDREFS :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_NCName :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_NMTOKEN :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_NMTOKENS :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_NOTATION :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_Name :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_QName :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_anyURI :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_base64Binary :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_boolean :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_byte :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_date :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_dateTime :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_decimal :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_double :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_duration :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_enumeration :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_float :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_fractionDigits :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_gDay :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_gMonth :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_gMonthDay :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_gYear :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_gYearMonth :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_hexBinary :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_int :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_integer :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_language :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_length :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_long :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_maxExclusive :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_maxInclusive :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_maxLength :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_minExclusive :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_minInclusive :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_minLength :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_negativeInteger :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_nonNegativeInteger :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_nonPositiveInteger :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_normalizedString :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_pattern :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_positiveInteger :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_short :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_string :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_time :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_token :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_totalDigits :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_unsignedByte :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_unsignedInt :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_unsignedLong :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_unsignedShort :: String
+ Text.XML.HXT.XMLSchema.DataTypeLibW3CNames: xsd_whiteSpace :: String
- Text.XML.HXT.Arrow.XmlState.TypeDefs: XIOEnv :: !Int -> (Int -> String -> IO ()) -> (String -> IO ()) -> !Bool -> !String -> !String -> !Attributes -> !XIOInputConfig -> !XIOParseConfig -> !XIOOutputConfig -> !XIORelaxConfig -> !XIOCacheConfig -> XIOSysEnv
+ Text.XML.HXT.Arrow.XmlState.TypeDefs: XIOEnv :: !Int -> (Int -> String -> IO ()) -> (String -> IO ()) -> !Bool -> !String -> !String -> !Attributes -> !XIOInputConfig -> !XIOParseConfig -> !XIOOutputConfig -> !XIORelaxConfig -> !XIOXmlSchemaConfig -> !XIOCacheConfig -> XIOSysEnv
Files
- hxt.cabal +8/−4
- src/Text/XML/HXT/Arrow/Pickle.hs +1/−2
- src/Text/XML/HXT/Arrow/ProcessDocument.hs +1/−1
- src/Text/XML/HXT/Arrow/ReadDocument.hs +39/−11
- src/Text/XML/HXT/Arrow/XmlRegex.hs +85/−26
- src/Text/XML/HXT/Arrow/XmlState.hs +1/−1
- src/Text/XML/HXT/Arrow/XmlState/RunIOStateArrow.hs +16/−0
- src/Text/XML/HXT/Arrow/XmlState/TypeDefs.hs +42/−6
- src/Text/XML/HXT/DOM/QualifiedName.hs +3/−0
- src/Text/XML/HXT/IO/GetFILE.hs +5/−4
- src/Text/XML/HXT/XMLSchema/DataTypeLibW3CNames.hs +30/−3
hxt.cabal view
@@ -1,6 +1,6 @@ -- arch-tag: Haskell XML Toolbox main description file Name: hxt-Version: 9.2.2+Version: 9.3.0.1 Synopsis: A collection of tools for processing XML with Haskell. Description: The Haskell XML Toolbox bases on the ideas of HaXml and HXML, but introduces a more general approach for processing XML with Haskell.@@ -15,10 +15,14 @@ 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.0: upper bound for network set to be < 2.4 (URI signatures changed in 2.4) .- Changes to 9.2.1: user defined mime type handlers added+ Changes from 9.2.2: XMLSchema validation integrated .- Changes to 9.2.0: New warnings from ghc-7.4 removed+ Changes from 9.2.1: user defined mime type handlers added+ .+ Changes from 9.2.0: New warnings from ghc-7.4 removed License: MIT License-file: LICENSE Author: Uwe Schmidt, Martin Schmidt, Torben Kuseler@@ -176,7 +180,7 @@ parsec >= 2.1 && < 4, HUnit >= 1.2 && < 2, mtl >= 2 && < 3,- network >= 2.1 && < 3,+ network >= 2.1 && < 2.4, deepseq >= 1.1 && < 2, bytestring >= 0.9 && < 1, binary >= 0.5 && < 1,
src/Text/XML/HXT/Arrow/Pickle.hs view
@@ -53,7 +53,7 @@ , showPickled , PU(..)- , XmlPickler+ , XmlPickler(..) , xp4Tuple , xp5Tuple@@ -95,7 +95,6 @@ , xpElemWithAttrValue , xpFilterAttr , xpFilterCont- , xpickle , xpInt , xpLift , xpLiftEither
src/Text/XML/HXT/Arrow/ProcessDocument.hs view
@@ -105,7 +105,7 @@ ( ifA (fromLA getDTDSubset) ( processDTDandEntities >>>- ( if validate' -- validation only possible if DTD there+ ( if validate' -- validation only possible if there is a DTD then validateDocument else this )
src/Text/XML/HXT/Arrow/ReadDocument.hs view
@@ -55,7 +55,8 @@ {- | the main document input filter -this filter can be configured by a list of configuration options, a value of type 'Text.XML.HXT.XmlState.TypeDefs.SysConfig'+this filter can be configured by a list of configuration options,+a value of type 'Text.XML.HXT.XmlState.TypeDefs.SysConfig' for all available options see module 'Text.XML.HXT.XmlState.SystemConfig' @@ -72,7 +73,8 @@ - @withSubstHTMLEntities yes\/no@ : switch on\/off entity substitution for general entities defined in HTML validation. Default is @no@.- Switching this option on and the validation and substDTDEntities off can lead to faster parsing, in that case+ Switching this option on and the validation and substDTDEntities off can lead to faster parsing,+ in that case reading the DTD documents is not longer necessary, HTML general entities are still substituted. Only used with XML parsed documents, not with HTML parsing. @@ -222,7 +224,8 @@ getSysVar (theParseByMimeType .&&&. theParseHTML .&&&. theAcceptedMimeTypes .&&&.- theRelaxValidate+ theRelaxValidate .&&&.+ theXmlSchemaValidate ) ) )@@ -276,7 +279,12 @@ processDoc' mimeType options ) - processDoc' mimeType (parseByMimeType, (parseHtml, (acceptedMimeTypes, validateWithRelax)))+ processDoc' mimeType ( parseByMimeType+ , ( parseHtml+ , ( acceptedMimeTypes+ , ( validateWithRelax+ , validateWithXmlSchema+ )))) = ( if isAcceptedMimeType acceptedMimeTypes mimeType then ( processNoneEmptyDoc ( ( parse $< getSysVar (theValidate .&&&.@@ -307,7 +315,7 @@ ) ) >>>- relax+ relaxOrXmlSchema ) else this )@@ -339,7 +347,13 @@ (mi == mis || mis == "*") ) || r- parse (validate, (substDTD, (substHTML, (removeNoneXml, (withTagSoup', withExpat')))))+ parse ( validate+ , ( substDTD+ , ( substHTML+ , ( removeNoneXml+ , ( withTagSoup'+ , withExpat'+ ))))) | not isXmlOrHtml = if removeNoneXml then replaceChildren none -- don't parse, if mime type is not XML nor HTML else this -- but remove contents when option is set@@ -352,7 +366,11 @@ | isXml = if withExpat' then parseXmlDocumentWithExpat- else parseXmlDocument validate substDTD substHTML validateWithRelax+ else parseXmlDocument+ validate+ substDTD+ substHTML+ validateWithRelax -- parse as XML | otherwise = this -- suppress warning @@ -363,25 +381,35 @@ | withNamespaces ||- validateWithRelax = propagateAndValidateNamespaces -- RelaxNG requires correct namespaces+ validateWithRelax+ ||+ validateWithXmlSchema+ = propagateAndValidateNamespaces -- RelaxNG and XML Schema require correct namespaces | otherwise = this canonicalize (preserveCmt, (canonicalize', withTagSoup')) | withTagSoup' = this -- tagsoup already removes redundant stuff- | validateWithRelax = canonicalizeAllNodes+ | validateWithRelax+ ||+ validateWithXmlSchema = canonicalizeAllNodes -- no comments in schema validation+ | canonicalize' && preserveCmt = canonicalizeForXPath | canonicalize' = canonicalizeAllNodes | otherwise = this - relax+ relaxOrXmlSchema+ | validateWithXmlSchema = withoutUserState $< getSysVar theXmlSchemaValidator | validateWithRelax = withoutUserState $< getSysVar theRelaxValidator | otherwise = this whitespace (removeWS, withTagSoup')- | removeWS+ | ( removeWS+ ||+ validateWithXmlSchema -- XML Schema does not like WS+ ) && not withTagSoup' = removeDocWhiteSpace -- tagsoup already removes whitespace | otherwise = this
src/Text/XML/HXT/Arrow/XmlRegex.hs view
@@ -11,7 +11,7 @@ Regular Expression Matcher working on lists of XmlTrees - It's intendet to import this module with an explicit+ It's intended to import this module with an explicit import declaration for not spoiling the namespace with these somewhat special arrows @@ -24,6 +24,7 @@ , mkZero , mkUnit , mkPrim+ , mkPrim' , mkPrimA , mkDot , mkStar@@ -34,6 +35,9 @@ , mkRep , mkRng , mkOpt+ , mkPerm+ , mkPerms+ , mkMerge , nullable , delta , matchXmlRegex@@ -50,6 +54,7 @@ import Data.Maybe import Text.XML.HXT.DOM.Interface+import Text.XML.HXT.DOM.ShowXml ( xshow ) -- ------------------------------------------------------------ -- the exported regex arrows@@ -88,13 +93,15 @@ data XmlRegex = Zero String | Unit- | Sym (XmlTree -> Bool)+ | Sym (XmlTree -> Bool) String -- optional external repr. of predicate | Dot- | Star XmlRegex- | Alt XmlRegex XmlRegex- | Seq XmlRegex XmlRegex- | Rep Int XmlRegex -- 1 or more repetitions- | Rng Int Int XmlRegex -- n..m repetitions+ | Star XmlRegex+ | Alt XmlRegex XmlRegex+ | Seq XmlRegex XmlRegex+ | Rep Int XmlRegex -- 1 or more repetitions+ | Rng Int Int XmlRegex -- n..m repetitions+ | Perm XmlRegex XmlRegex+ | Merge XmlRegex XmlRegex -- ------------------------------------------------------------ @@ -106,7 +113,7 @@ instance Inv XmlRegex where inv (Zero _) = True inv Unit = True- inv (Sym p) = p holds for some XmlTrees+ inv (Sym p _) = p holds for some XmlTrees inv Dot = True inv (Star e) = inv e inv (Alt e1 e2) = inv e1 &&@@ -116,6 +123,8 @@ inv (Rep i e) = i > 0 && inv e inv (Rng i j e) = (i < j || (i == j && i > 1)) && inv e+ inv (Perm e1 e2) = inv e1 &&+ inv e2 -} -- ------------------------------------------------------------ --@@ -128,8 +137,11 @@ mkUnit = Unit mkPrim :: (XmlTree -> Bool) -> XmlRegex-mkPrim = Sym+mkPrim p = Sym p "" +mkPrim' :: (XmlTree -> Bool) -> String -> XmlRegex+mkPrim' = Sym+ mkPrimA :: LA XmlTree XmlTree -> XmlRegex mkPrimA a = mkPrim (not . null . runLA a) @@ -155,9 +167,14 @@ mkAlt (Zero _) e2 = e2 -- {} u e2 = e2 mkAlt e1@(Star Dot) _e2 = e1 -- A* u e1 = A* mkAlt _e1 e2@(Star Dot) = e2 -- e1 u A* = A*-mkAlt (Sym p1) (Sym p2) = mkPrim $ \ x -> p1 x || p2 x -- melting of predicates-mkAlt e1 e2@(Sym _) = mkAlt e2 e1 -- symmetry: predicates always first-mkAlt e1@(Sym _) (Alt e2@(Sym _) e3) = mkAlt (mkAlt e1 e2) e3 -- prepare melting of predicates+mkAlt (Sym p1 e1) (Sym p2 e2) = mkPrim' (\ x -> p1 x || p2 x) (e e1 e2) -- melting of predicates+ where+ e "" x2 = x2+ e x1 "" = x1+ e x1 x2 = x1 ++ "|" ++ x2+mkAlt e1 e2@(Sym _ _) = mkAlt e2 e1 -- symmetry: predicates always first+mkAlt e1@(Sym _ _) (Alt e2@(Sym _ _) e3)+ = mkAlt (mkAlt e1 e2) e3 -- prepare melting of predicates mkAlt (Alt e1 e2) e3 = mkAlt e1 (mkAlt e2 e3) -- associativity mkAlt e1 e2 = Alt e1 e2 @@ -195,12 +212,30 @@ mkOpt :: XmlRegex -> XmlRegex mkOpt = mkRng 0 1 +mkPerm :: XmlRegex -> XmlRegex -> XmlRegex+mkPerm e1@(Zero _) _ = e1+mkPerm _ e2@(Zero _) = e2+mkPerm Unit e2 = e2+mkPerm e1 Unit = e1+mkPerm e1 e2 = Perm e1 e2++mkPerms :: [XmlRegex] -> XmlRegex+mkPerms = foldr mkPerm mkUnit++mkMerge :: XmlRegex -> XmlRegex -> XmlRegex+mkMerge e1@(Zero _) _ = e1+mkMerge _ e2@(Zero _) = e2+mkMerge Unit e2 = e2+mkMerge e1 Unit = e1+mkMerge e1 e2 = Merge e1 e2+ -- ------------------------------------------------------------ instance Show XmlRegex where show (Zero s) = "{err:" ++ s ++ "}" show Unit = "()"- show (Sym _p) = "{single tree pred}"+ show (Sym _p "") = "<pred>"+ show (Sym _p r ) = r show Dot = "." show (Star e) = "(" ++ show e ++ ")*" show (Alt e1 e2) = "(" ++ show e1 ++ "|" ++ show e2 ++ ")"@@ -209,13 +244,28 @@ show (Rep i e) = "(" ++ show e ++ "){" ++ show i ++ ",}" show (Rng 0 1 e) = "(" ++ show e ++ ")?" show (Rng i j e) = "(" ++ show e ++ "){" ++ show i ++ "," ++ show j ++ "}"+ show (Perm e1 e2) = "(" ++ show e1 ++ show e2 ++ "|" ++ show e2 ++ show e1 ++ ")"+ show (Merge e1 e2) = "(" ++ show e1 ++ "&" ++ show e2 ++ ")" -- ------------------------------------------------------------ +unexpected :: XmlTree -> String -> String+unexpected t e = emsg e ++ (cut 80 . xshow) [t]+ where+ emsg "" = "unexpected: "+ emsg s = "expected: " ++ s ++ ", but got: "+ cut n s+ | null rest = s'+ | otherwise = s' ++ "..."+ where+ (s', rest) = splitAt n s++-- ------------------------------------------------------------+ nullable :: XmlRegex -> Bool nullable (Zero _) = False nullable Unit = True-nullable (Sym _p) = False -- assumption: p holds for at least one tree+nullable (Sym _p _) = False -- assumption: p holds for at least one tree nullable Dot = False nullable (Star _) = True nullable (Alt e1 e2) = nullable e1 ||@@ -225,25 +275,34 @@ nullable (Rep _i e) = nullable e nullable (Rng i _ e) = i == 0 || nullable e+nullable (Perm e1 e2) = nullable e1 &&+ nullable e2+nullable (Merge e1 e2) = nullable e1 &&+ nullable e2 -- ------------------------------------------------------------ delta :: XmlRegex -> XmlTree -> XmlRegex-delta e@(Zero _) _ = e-delta Unit c = mkZero $- "unexpected char " ++ show c-delta (Sym p) c+delta e@(Zero _) _ = e+delta Unit c = mkZero $ unexpected c ""+delta (Sym p e) c | p c = mkUnit- | otherwise = mkZero $- "unexpected tree " ++ show c-delta Dot _ = mkUnit-delta e@(Star e1) c = mkSeq (delta e1 c) e-delta (Alt e1 e2) c = mkAlt (delta e1 c) (delta e2 c)-delta (Seq e1 e2) c+ | otherwise = mkZero $ unexpected c e+delta Dot _ = mkUnit+delta e@(Star e1) c = mkSeq (delta e1 c) e+delta (Alt e1 e2) c = mkAlt (delta e1 c) (delta e2 c)+delta (Seq e1 e2) c | nullable e1 = mkAlt (mkSeq (delta e1 c) e2) (delta e2 c) | otherwise = mkSeq (delta e1 c) e2-delta (Rep i e) c = mkSeq (delta e c) (mkRep (i-1) e)-delta (Rng i j e) c = mkSeq (delta e c) (mkRng ((i-1) `max` 0) (j-1) e)+delta (Rep i e) c = mkSeq (delta e c) (mkRep (i-1) e)+delta (Rng i j e) c = mkSeq (delta e c) (mkRng ((i-1) `max` 0) (j-1) e)+delta (Perm e1 e2) c = case e1' of+ (Zero _) -> mkPerm e1 (delta e2 c)+ _ -> mkPerm e1' e2+ where+ e1' = delta e1 c+delta (Merge e1 e2) c = mkAlt (mkMerge (delta e1 c) e2)+ (mkMerge e1 (delta e2 c)) -- ------------------------------------------------------------
src/Text/XML/HXT/Arrow/XmlState.hs view
@@ -104,7 +104,7 @@ , setMimeTypeTable , setMimeTypeTableFromFile - , -- System Configuration and options+ , -- * System Configuration and Options yes , no
src/Text/XML/HXT/Arrow/XmlState/RunIOStateArrow.hs view
@@ -95,6 +95,7 @@ , xioParseConfig = initialParseConfig , xioOutputConfig = initialOutputConfig , xioRelaxConfig = initialRelaxConfig+ , xioXmlSchemaConfig = initialXmlSchemaConfig , xioCacheConfig = initialCacheConfig } @@ -158,6 +159,13 @@ , xioRelaxValidator = dummyRelaxValidator } +initialXmlSchemaConfig :: XIOXmlSchemaConfig+initialXmlSchemaConfig = XIOScc+ { xioXmlSchemaValidate = False+ , xioXmlSchemaSchema = ""+ , xioXmlSchemaValidator = dummyXmlSchemaValidator+ }+ initialCacheConfig :: XIOCacheConfig initialCacheConfig = XIOCch { xioBinaryCompression = id@@ -208,6 +216,14 @@ [ "RelaxNG validator not configured," , "please install package hxt-relaxng" , " and use 'withRelaxNG' config option from this package"+ ]++dummyXmlSchemaValidator :: IOSArrow b b+dummyXmlSchemaValidator = issueFatal $+ unlines $+ [ "XML Schema validator not configured,"+ , "please install package hxt-xmlschema"+ , " and use 'withXmlSchema' config option from this package" ] dummyCacheRead :: String -> IOSArrow b b
src/Text/XML/HXT/Arrow/XmlState/TypeDefs.hs view
@@ -180,6 +180,7 @@ , xioParseConfig :: ! XIOParseConfig , xioOutputConfig :: ! XIOOutputConfig , xioRelaxConfig :: ! XIORelaxConfig+ , xioXmlSchemaConfig :: ! XIOXmlSchemaConfig , xioCacheConfig :: ! XIOCacheConfig } @@ -237,6 +238,11 @@ , xioRelaxValidator :: IOSArrow XmlTree XmlTree } +data XIOXmlSchemaConfig = XIOScc { xioXmlSchemaValidate :: ! Bool+ , xioXmlSchemaSchema :: String+ , xioXmlSchemaValidator :: IOSArrow XmlTree XmlTree+ }+ data XIOCacheConfig = XIOCch { xioBinaryCompression :: CompressionFct , xioBinaryDeCompression :: DeCompressionFct , xioWithCache :: ! Bool@@ -495,12 +501,42 @@ , setS = \ x s -> s { xioRelaxCollectErrors = x} } -theRelaxValidator :: Selector XIOSysState (IOSArrow XmlTree XmlTree)-theRelaxValidator = theRelaxConfig- >>>- S { getS = xioRelaxValidator- , setS = \ x s -> s { xioRelaxValidator = x}- }+theRelaxValidator :: Selector XIOSysState (IOSArrow XmlTree XmlTree)+theRelaxValidator = theRelaxConfig+ >>>+ S { getS = xioRelaxValidator+ , setS = \ x s -> s { xioRelaxValidator = x}+ }++-- ----------------------------------------++theXmlSchemaConfig :: Selector XIOSysState XIOXmlSchemaConfig+theXmlSchemaConfig = theSysEnv+ >>>+ S { getS = xioXmlSchemaConfig+ , setS = \ x s -> s { xioXmlSchemaConfig = x}+ }++theXmlSchemaValidate :: Selector XIOSysState Bool+theXmlSchemaValidate = theXmlSchemaConfig+ >>>+ S { getS = xioXmlSchemaValidate+ , setS = \ x s -> s { xioXmlSchemaValidate = x}+ }++theXmlSchemaSchema :: Selector XIOSysState String+theXmlSchemaSchema = theXmlSchemaConfig+ >>>+ S { getS = xioXmlSchemaSchema+ , setS = \ x s -> s { xioXmlSchemaSchema = x}+ }++theXmlSchemaValidator :: Selector XIOSysState (IOSArrow XmlTree XmlTree)+theXmlSchemaValidator = theXmlSchemaConfig+ >>>+ S { getS = xioXmlSchemaValidator+ , setS = \ x s -> s { xioXmlSchemaValidator = x}+ } -- ----------------------------------------
src/Text/XML/HXT/DOM/QualifiedName.hs view
@@ -181,6 +181,9 @@ && -- and prefixes are not set or they are equal px1 == px2 +instance Ord QName where+ compare x y = compare (qualifiedName x) (qualifiedName y)+ instance NFData QName instance WNFData QName
src/Text/XML/HXT/IO/GetFILE.hs view
@@ -31,8 +31,8 @@ import System.IO.Error ( ioeGetErrorString ) import System.Directory ( doesFileExist- , getPermissions- , readable+ -- , getPermissions+ -- , readable ) import Text.XML.HXT.DOM.XmlKeywords @@ -66,8 +66,9 @@ case source'' of Nothing -> return $ fileErr "file not found" Just fn -> do- perm <- getPermissions fn- if not (readable perm)+ -- perm <- getPermissions fn -- getPermission may fail+ -- if not (readable perm)+ if False then return $ fileErr "file not readable" else do c <- try $
src/Text/XML/HXT/XMLSchema/DataTypeLibW3CNames.hs view
@@ -26,7 +26,6 @@ w3cNS :: String w3cNS = "http://www.w3.org/2001/XMLSchema-datatypes" - xsd_string , xsd_normalizedString , xsd_token@@ -58,8 +57,21 @@ , xsd_unsignedLong , xsd_unsignedInt , xsd_unsignedShort- , xsd_unsignedByte :: String+ , xsd_unsignedByte + , xsd_boolean+ , xsd_float+ , xsd_double+ , xsd_time+ , xsd_duration+ , xsd_date+ , xsd_dateTime+ , xsd_gDay+ , xsd_gMonth+ , xsd_gMonthDay+ , xsd_gYear+ , xsd_gYearMonth :: String+ xsd_string = "string" xsd_normalizedString = "normalizedString" xsd_token = "token"@@ -93,6 +105,18 @@ xsd_unsignedShort = "unsignedShort" xsd_unsignedByte = "unsignedByte" +xsd_boolean = "boolean"+xsd_float = "float"+xsd_double = "double"+xsd_time = "time"+xsd_duration = "duration"+xsd_date = "date"+xsd_dateTime = "dateTime"+xsd_gDay = "gDay"+xsd_gMonth = "gMonth"+xsd_gMonthDay = "gMonthDay"+xsd_gYear = "gYear"+xsd_gYearMonth = "gYearMonth" xsd_length , xsd_maxLength@@ -104,7 +128,8 @@ , xsd_totalDigits , xsd_fractionDigits , xsd_pattern- , xsd_enumeration :: String+ , xsd_enumeration+ , xsd_whiteSpace :: String xsd_length = "length" xsd_maxLength = "maxLength"@@ -120,5 +145,7 @@ xsd_pattern = "pattern" xsd_enumeration = "enumeration"++xsd_whiteSpace = "whiteSpace" -- ----------------------------------------