2012-10-05 18 views
7

मैं जानना चाहता हूं कि हास्केल में यूनिकोड एक्सएमएल को संसाधित करने का आधिकारिक समाधान क्या है। मुझे लगता है कि एचएफटी टेक्स्ट के लिए एक सरल String प्रतिनिधित्व (यूनिकोड वर्णों की एक सूची !!!) का उपयोग करता है।एक्सएमएल में यूनिकोड की ओर हास्केल का रवैया क्या है?

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 मिला लेकिन मुझे यकीन नहीं है कि इसका उपयोग पार्सिंग के साथ कैसे किया जाना है। यूनिकोड के लिए समर्थन भी अधिक स्पष्ट होता था: http://hackage.haskell.org/packages/archive/hxt/8.5.2/doc/html/Text-XML-HXT-DOM-Unicode.html लेकिन इस मॉड्यूल को स्पष्ट कारण के बिना नवीनतम संस्करण (लेखन के समय 9.3.1.0) में हटा दिया गया है। उसके पीछे प्रेरणा क्या थी?

कोई व्यक्ति कुछ उदाहरण कोड दे सकता है, यह भी कि कैसे HXT का उपयोग किया जाना है? इस संबंध में विकी पृष्ठों की गंभीरता से कमी है। धन्यवाद।

+0

कौन सा कार्यालय "हास्केल में यूनिकोड एक्सएमएल को संसाधित करने के आधिकारिक समाधान" की घोषणा करेगा? एचएफटी के बारे में, जिसका मुझे अनुशंसा करने का मतलब नहीं है, पूरे स्रोत में उदाहरण फाइलें हैं: https://github.com/UweSchmidt/hxt। – applicative

उत्तर

3

xml-conduit पैकेज टेक्स्ट डेटा को संग्रहीत करने के लिए Text डेटाटाइप का उपयोग करता है। यह पिछले कुछ वर्षों में मानक पाठ डेटा प्रतिनिधित्व बन गया है। एक्सएमएल-कंड्यूट एक अच्छी तरह से बनाए रखा पैकेज है, और मैंने इसे व्यक्तिगत रूप से ओपन सोर्स और वाणिज्यिक कोड दोनों की एक बड़ी राशि के लिए उपयोग किया है।