मेरे पास ऐसी स्थिति है जहां एक्सएमएल-फाइल में एक तत्व एक्सएसडी में दो अलग-अलग प्रकारों का हो सकता है।xsd वही तत्व, विभिन्न प्रकार?
मैं जो करना चाहता हूं वह सबसे पहले दर्ज मूल्य को अधिक सख्त प्रकार (यदि यह एक व्यक्ति है जो फॉर्म भरता है) को सत्यापित करने के लिए सबसे पहले है और यदि वह नहीं खींचता है, तो इसे कम सख्त प्रकार (यदि यह एक संगठन है जो फॉर्म भरता है), अन्यथा सत्यापन विफल होने दें यदि यह बिल्कुल मान्य नहीं है।
तो यह मूल रूप से यह है:
<xsd:complexType name="ForminfoType"> `
<xsd:sequence>
<xsd:element name="formname" type="xsd:string" />
<xsd:element name="timestamp" type="xsd:dateTime" />
<xsd:element name="sender" type="PersonType" minOccurs="0" />
<xsd:element name="receiver" type="OrganizationType" minOccurs="0" />
<xsd:element name="signature" type="xsd:string" minOccurs="0" />
</xsd:sequence>
</xsd:complexType>
क्या PersonType वाणी मूल रूप से एक 12 अंकों एक विशिष्ट पैटर्न के अनुसार निर्माण किया संख्या है। संगठन प्रकार की घोषणा क्या मूल रूप से केवल 10 अंकों की संख्या है।
तो मैं तार्किक करना चाहते हैं कि इस डाल करने के लिए है:
<xsd:element name="sender" type="OrganizationType" minOccurs="0" />
अनुक्रम में
, लेकिन आप एक ही नाम और विभिन्न प्रकार के साथ दो तत्वों नहीं हो सकता। तो मुझे लगता है कि मुझे इसे किसी अन्य तरीके से हल करना होगा।
मैं क्या पाया है था यह: http://xsd.stylusstudio.com/2007Oct/post05003.htm
जो काफी कुछ है जो मैं करना चाहता हूँ, लेकिन मुझे यकीन है कि यह संभव है नहीं कर रहा हूँ। क्या किसी को इसे हल करने के बारे में कोई और विचार है?
अग्रिम धन्यवाद।
आप कोड की बहु लाइनों के लिए बैकटिक उपयोग करने के लिए नहीं करना चाहती। बस लाइनों का चयन करें और नियंत्रण-के का उपयोग करें। –
@ एरिजन: कोड को सही तरीके से प्रारूपित करने के लिए, इसे हाइलाइट करें और फिर संपादक के ऊपर टूलबार में शून्य और किसी (01010 0101010) के साथ बटन पर क्लिक करें! –