什么是Haskell对XML的Unicode态度?

时间:2012-10-05 16:32:16

标签: xml haskell unicode hxt

我想知道在Haskell中处理Unicode XML的官方解决方案是什么。 我注意到HXT使用简单的String表示(Unicode字符列表!!!)来表示文本。

http://hackage.haskell.org/packages/archive/hxt/9.3.1.0/doc/html/Text-XML-HXT-DOM-TypeDefs.html#t:XNode

Constructors
XText String    ordinary text (leaf)
XBlob Blob          text represented more space efficient as bytestring (leaf)

解析时如何在两种表示形式之间进行选择?强制用户使用字符列表听起来不是特别有吸引力的功能,特别是如果XML文档有很多文本内容。

另外,我在Google上找到了http://hackage.haskell.org/package/hxt-unicode,但我不确定它是如何用于解析的。对Unicode的支持过去也更加明确:http://hackage.haskell.org/packages/archive/hxt/8.5.2/doc/html/Text-XML-HXT-DOM-Unicode.html 但是这个模块在最新版本(编写本文时为9.3.1.0)中已被删除,没有明确的理由。那背后的动机是什么?

是否有人会提供一些示例代码,以及如何使用HXT?维基页面在这方面严重缺乏。谢谢。

1 个答案:

答案 0 :(得分:3)

xml-conduit包使用Text数据类型来存储文本数据。它在过去几年成为标准的文本数据表示。 xml-conduit是一个维护良好的软件包,我个人将它用于大量的开源和商业代码。