PRB: UTF-7 दस्तावेज़ XML पार्सर पार्स नहीं कर सकता


लक्षण


UTF-7 (स् वरूप के लिए यूनिकोड एन्कोडिंग स्थानांतरण) के रूप में सहेजी गई कोई XML फ़ाइल लोड करने का प्रयास करते हैं, XML पार्सर Internet Explorer में निम्न त्रुटि संदेश जनरेट करता है:
दस्तावेज़ का शीर्ष स्तर पर अमान्य है।
समान त्रुटि भी सर्वर-साइड या क्लाइंट-साइड स्क्रिप्ट से MSXML पार्सर का उपयोग करते समय उत्पन्न होती है।

कारण


MSXML पार्सर MSXML 2.6 से पहले का संस्करण UTF-7 का समर्थन नहीं करते।

समाधान


UTF-8 के रूप में अपने XML दस्तावेज़ सहेजें, इस समस्या को हल करने के लिए इच्छित स्थानांतरण एन्कोडिंग स्वरूप Unicode.MSXML 2.6 या बाद में एन्कोडिंग UTF-7 का समर्थन करता है।

स्थिति


यह व्यवहार डिज़ाइन के अनुसार है।

अधिक जानकारी


यूनिकोड यूनिफ़ॉर्म वर्ण सेट लगभग सभी दुनिया की भाषाओं का प्रतिनिधित्व करता है, हालांकि कई बाइट प्रतिनिधित्व, या हैं रूपांतरण स्वरूपों, एक Unicode फ़ाइल का उपयोग कर सकते हैं। UTF-जो यूनिकोड वर्ण का प्रतिनिधित्व करने वाली चार करने के लिए एक 8-बिट बाइट के अनुक्रम के रूप में 8, सबसे लोकप्रिय स्वरूप है। UTF-7, 7-बिट रूपांतरण स्वरूप जो ASCII मान और पाठ संदेशों को उच्च बिट पट् टी मेल गेटवे के माध्यम से पास करने के लिए यूनिकोड पाठ की अनुमति दें करने के लिए निर्धारित है। XML 1.0 मानक पर, अनुभाग 4.3.3, आधारित कोई मान्य XML फ़ाइल निम्न में से कोई एक होना आवश्यक है:
  • किसी यूनिकोड फ़ाइल UTF-8 स्वरूप में है।
  • किसी यूनिकोड फ़ाइल UTF-16 स्वरूप में है।
  • कुछ अन्य वर्ण (उदाहरण के लिए, ASCII) एन्कोडिंग में फ़ाइल जो है उसके बहुत पहले बाइट्स के रूप में
UTF-7 बाइट क्रम चिह्न का उपयोग नहीं करता है। साथ ही, XML विशेष वर्ण UTF-7 के प्रथम वर्ण होने को समाप्त करता है जो + ADw, UTF-7 कनवर्ट करता XML दस्तावेज़ एन्कोडेड है। यह मानक XML के साथ संगत नहीं है, क्योंकि ऐसी फ़ाइलों को लोड करने के लिए MSXML refuses है। कई पाठ संपादकों और वर्ड प्रोसेसर्स एन्कोडेड पाठ Microsoft Word, में कई भिन्न स्थानांतरण एन्कोडिंग UTF-7 सहित, में के रूप में ज्ञात यूनिकोड पाठ फ़ाइलें सहेजने के लिए आपको देता है। इसलिए आप "एन्कोडेड पाठ के रूप में UTF-7" Word में कोई दस्तावेज़ सहेजते हैं, तो MSXML उपरोक्त कारणों के लिए इसे लोड करने के लिए अस्वीकार नहीं कर देगा।

व्यवहार को पुन: उत्पन्न करने के लिए चरण

  1. Word 2000 में एक साधारण XML फ़ाइल बनाएँ:
    <?xml version="1.0"?><MyTag><EmbeddedTag name1="value"/></MyTag>
  2. एन्कोडेड पाठके रूप में फ़ाइल सहेजें। शब्द आप, तो आप स्वरूपण खो करने के लिए चाहते हैं पूछता है, तो हाँक्लिक करें। Word फिर कोई एन्कोडिंग स्वरूप का उपयोग करने के लिए आपको संकेत देगा। UTF-7का चयन करें, और फिर कैप फ़ाइल नाम TestUTF7.xml के रूप में दस्तावेज़ सहेजें।
  3. कैप फ़ाइल नाम TestUTF7.xml Internet Explorer 5 में लोड। आपको निम्न त्रुटि संदेश प्राप्त होगा:
    दस्तावेज़ का शीर्ष स्तर पर अमान्य है। पंक्ति 1, स्थिति 1 + ADw-? xml संस्करण + AD0AIg - 1.0 + ACI-? AD4- +।

संदर्भ


नवीनतम Microsoft वैश्विक सॉफ़्टवेयर विकास http://www.unicode.org/ के लिए नवीनतम यूनिकोड मानक के लिए।
Microsoft Internet Explorer के लिए वेब-आधारित समाधानों का निर्माण के बारे में अधिक जानकारी के लिए, निम्न Microsoft वेब साइट पर जाएँ:(c) Microsoft Corporation 2000, सभी अधिकार सुरक्षित। Jay Andrew एलन, Microsoft Corporation द्वारा योगदान।