{"id":18571840,"url":"https://github.com/haxml/haxml","last_synced_at":"2025-07-26T02:40:30.950Z","repository":{"id":42204741,"uuid":"410195255","full_name":"HaXml/HaXml","owner":"HaXml","description":"Haskell HaXml library by Malcolm Wallace","archived":false,"fork":false,"pushed_at":"2025-01-11T10:23:00.000Z","size":5379,"stargazers_count":7,"open_issues_count":2,"forks_count":10,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-07T23:22:00.322Z","etag":null,"topics":["haskell","xml"],"latest_commit_sha":null,"homepage":"https://hackage.haskell.org/package/HaXml","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/HaXml.png","metadata":{"files":{"readme":"README","changelog":"Changelog.md","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-09-25T06:28:51.000Z","updated_at":"2025-05-08T03:21:37.000Z","dependencies_parsed_at":"2024-03-19T11:32:21.804Z","dependency_job_id":"f628142b-a1aa-4be4-a664-b5e6d5ad542e","html_url":"https://github.com/HaXml/HaXml","commit_stats":{"total_commits":719,"total_committers":27,"mean_commits":26.62962962962963,"dds":0.6856745479833102,"last_synced_commit":"cb0f2b50b1a1d1d53e6f1ab90b4e188024fad2dd"},"previous_names":[],"tags_count":22,"template":false,"template_full_name":null,"purl":"pkg:github/HaXml/HaXml","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HaXml%2FHaXml","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HaXml%2FHaXml/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HaXml%2FHaXml/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HaXml%2FHaXml/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/HaXml","download_url":"https://codeload.github.com/HaXml/HaXml/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/HaXml%2FHaXml/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":267109000,"owners_count":24037615,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-26T02:00:08.937Z","response_time":62,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["haskell","xml"],"created_at":"2024-11-06T23:03:56.615Z","updated_at":"2025-07-26T02:40:30.904Z","avatar_url":"https://github.com/HaXml.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"        HaXml - Haskell utilities for processing XML\n        --------------------------------------------\n\nInstallation instructions:\nWe currently support nhc98, ghc, and Hugs.  The automatic configuration\ndetects which compilers/interpreters you have, and prepares a build\ntree for each.  Installation requires write-permission on the system\ndirectories of the compiler/interpreter - the libraries and interfaces\ncan then be used as \"-package HaXml\" (for ghc/nhc98 - no extra options\nrequired for Hugs).  The standalone tools are installed to a directory of\nyour choice.\n\nFor newer compilers, use Cabal to build and install:\n\n    cabal install\n\nor \n\n    runhaskell Setup.hs configure\n    runhaskell Setup.hs build\n    runhaskell Setup.hs install\n\nFor older compilers, use the traditional sequence:\n\n    ./configure\n    make\n    make install\n\nOptions to configure are:\n    --buildwith=...  e.g. ghc-6.2,        to build for a specific compiler\n    --prefix=...     e.g. /usr/local/bin, installation location for HaXml tools\n\nComplaints to:  :-)\n    Malcolm.Wallace@me.com\n\nP.S.\n    For those building on Windows /without/ Cygwin, you can avoid the need\n    for configure/make steps by simply running the minimal build script in\n        Build.bat\n    You will need to edit it for the location of your compiler etc.\n\n----\nWhat this package contains:\n\n  docs/\t\t\tSome rudimentary HTML documentation about the libraries.\n  docs/HaXml/\t\tHaddock-generated API documentation.\n  examples/\t\tSome small examples of how the libraries/tools are used.\n\n  src/Text/XML/HaXml/\tNumerous support modules for processing XML.\n\t\t\t(The main APIs are as follows:)\n\tTypes.hs\tDefines a (generic) representation for any XML document.\n\tParse.hs\tParses an XML document into the generic representation.\n\tParseLazy.hs\tA more space-efficient parser.\n\tPretty.hs\tPretty-prints an XML document.\n\tValidate.hs\tValidates an XML document against a DTD.\n\tCombinators.hs\tProvides the combinators described in the ICFP'99 paper\n\t\t\ttogether with some other useful functions.\n\tSAX.hs\t\tA simple SAX-like stream-event-parser.\n\tWrappers.hs\tSimple top-level wrappers for processing a single\n\t\t\tdocument using the combinators.\n\tXmlContent.hs\tA replacement class for Show/Read, to translate Haskell\n\t\t\tvalues to/from XML documents.  Can be derived by DrIFT\n\t\t\tand/or DtdToHaskell.\n\tTypeMapping.hs\tDefines an explicit representation for Haskell types,\n\t\t\tallowing generation of a DTD from a Haskell value.\n\tOneOfN.hs\tSome support types (OneOf2 - OneOf20) for code\n\t\t\tgenerated by tools/DtdToHaskell.\n\n  src/Text/XML/HaXml/Html\tExtra support modules for processing HTML.\n\tParse.hs\tAn error-correcting HTML parser, produces the generic\n\t\t\tXML representation.\n\tPretty.hs\tAn HTML-specific pretty-printer.\n\tGenerate.hs\tSome useful combinators for generating HTML content.\n\n  src/Text/XML/HaXml/Schema\tExtra support modules for processing Schema.\n\tXSDTypeModel.hs\t\tA representation of the datatype model of\n\t\t\t\tXml Schema in terms of XSD concepts.\n\tHaskellTypeModel.hs\tA representation of the datatype model of\n\t\t\t\tXml Schema in terms of Haskell datatypes.\n\tParse.hs\t\tParser from an XSD document to the XSD\n\t\t\t\ttype model above.\n\tTypeConversion.hs\tTranslate from the XSD model to the Haskell\n\t\t\t\tmodel.\n\tPrettyHaskell.hs\tGenerate Haskell sourcecode from the Haskell\n\t\t\t\ttype model.\n\n  src/tools/\t\tStandalone tools based on the library above.\n\tDtdToHaskell\tTranslates an XML doc containing a DTD into a Haskell\n\t\t\tmodule containing data/newtype definitions.\n\tXtract\t\tA structured 'grep' for XML docs, loosely based on\n\t\t\tthe XPath and XQL query languages.\n\tValidate\tA simple validation tool for XML docs.  Give it a DTD\n\t\t\tfile and an XML file, and it reports all validation\n\t\t\terrors it can find.\n\tCanonicalise\tA 'cat' filter for XML docs, shows our \"standard\"\n\t\t\tparsing and pretty-printing behaviour.\n\tMkOneOf\t\tGenerates a OneOfN type, given an N, together with\n\t\t\tits required instance of XmlContent.  Sometimes types\n\t\t\tlarger than OneOf20 are required in code generated by\n\t\t\tDtdToHaskell.\n\tXsdToHaskell\tTranslates an XSD schema into a Haskell module.\n\tFpMLToHaskell\tTranslates the set of XSD schemas defining the FpML\n\t\t\tlanguage into a set of Haskell modules.\n\n  src/Text/XML/HaXml/Xtract\tInternal APIs of the Xtract tool.\n\tParse.hs\tParse an XPath query to produce a filter.\n\tCombinators.hs\tModified version of the standard combinators.\n\n  src/Text/XML/HaXml/DtdToHaskell\tInternal APIs of the DtdToHaskell tool.\n\tTypeDef.hs\tA representation of the Haskell types corresponding\n\t\t\tto an XML DTD, and a pretty printer for them.\n\tConvert.hs\tConvert the standard DTD representation to the\n\t\t\tHaskell-like TypeDef representation.\n\tInstance.hs\tGenerate appropriate XmlContent class instances for\n\t\t\tthe TypeDefs.\n\n----\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhaxml%2Fhaxml","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhaxml%2Fhaxml","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhaxml%2Fhaxml/lists"}