2012-11-09 41 views
22

मैं xsd का उपयोग करके वास्तव में एक साधारण xml को सत्यापित करने का प्रयास कर रहा हूं, लेकिन किसी कारण से मुझे यह त्रुटि मिलती है। अगर कोई मुझे समझा सकता है तो मैं वास्तव में सराहना करूंगा क्यों।cvc-elt.1: तत्व 'MyElement' की घोषणा नहीं मिल सकती

एक्सएमएल फ़ाइल

<?xml version="1.0" encoding="utf-8"?> 
<MyElement>A</MyElement> 

XSD फ़ाइल

<?xml version="1.0" encoding="UTF-8"?> 
<schema xmlns="http://www.w3.org/2001/XMLSchema" 
     targetNamespace="http://www.example.org/Test" 
     xmlns:tns="http://www.example.org/Test" 
     elementFormDefault="qualified"> 

    <simpleType name="MyType"> 
     <restriction base="string"></restriction> 
    </simpleType> 

    <element name="MyElement" type="tns:MyType"></element> 
</schema> 
+0

@ ओ.जोन्स त्रुटि संदेश पोस्ट का शीर्षक है :) –

उत्तर

21

आपका स्कीमा अपने लक्ष्य नाम स्थान http://www.example.org/Test के लिए है, इसलिए यह है कि लक्ष्य नाम स्थान http://www.example.org/Test में नाम MyElement साथ एक तत्व को परिभाषित करता है। आपके उदाहरण दस्तावेज़ में MyElement नाम नाम के साथ कोई तत्व नहीं है। यही कारण है कि सत्यापन पार्सर आपको बताता है कि उसे उस तत्व के लिए घोषणा नहीं मिल रही है, आपने किसी नामस्थान में तत्वों के लिए स्कीमा प्रदान नहीं किया है।

आपको या तो लक्ष्य नामस्थान का उपयोग न करने के लिए स्कीमा को बदलने की आवश्यकता है या आपको उदाहरण का उपयोग करने के लिए उदाहरण बदलने की आवश्यकता है। <MyElement xmlns="http://www.example.org/Test">A</MyElement>