2012-10-05 10 views
7

Tôi muốn biết giải pháp chính thức để xử lý Unicode XML trong Haskell là gì. Tôi nhận thấy rằng HXT sử dụng một biểu diễn đơn giản String (một danh sách các ký tự Unicode !!!) cho văn bản.Thái độ của Haskell đối với Unicode trong XML là gì?

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) 

Làm thế nào để bạn lựa chọn giữa hai cơ quan đại diện khi phân tích cú pháp? Việc buộc người dùng sử dụng danh sách các ký tự không giống như một tính năng đặc biệt hấp dẫn, đặc biệt nếu các tài liệu XML có nhiều nội dung văn bản.

Ngoài ra, tôi đã tìm thấy http://hackage.haskell.org/package/hxt-unicode trên Google nhưng không chắc chắn cách thức nó được dự định sẽ được sử dụng với phân tích cú pháp. Hỗ trợ Unicode cũng được sử dụng rõ ràng hơn nhiều: http://hackage.haskell.org/packages/archive/hxt/8.5.2/doc/html/Text-XML-HXT-DOM-Unicode.html nhưng mô-đun này đã bị xóa trong phiên bản mới nhất (9.3.1.0 tại thời điểm viết) mà không có lý do rõ ràng. Động lực đằng sau điều đó là gì?

Ai đó có thể cung cấp một số mã ví dụ, về cách HXT được dự định sử dụng không? Các trang wiki thiếu nghiêm trọng về mặt này. Cảm ơn bạn.

+0

Văn phòng nào sẽ công bố "giải pháp chính thức để xử lý Unicode XML trong Haskell"? Về HXT, mà tôi không có ý muốn giới thiệu, có những tập tin ví dụ trên tất cả các nguồn: https://github.com/UweSchmidt/hxt. – applicative

Trả lời

3

Gói xml-conduit sử dụng kiểu dữ liệu văn bản Text để lưu trữ dữ liệu văn bản. Nó trở thành biểu diễn dữ liệu văn bản chuẩn trong vài năm qua. xml-conduit là một gói được duy trì tốt và cá nhân tôi đã sử dụng nó cho một lượng lớn mã nguồn mở lẫn cả mã thương mại.