XML Schema any घटक

व्याख्या और उपयोग

any घटक से निर्दिष्ट नामस्पेक्टस के किसी घटक को sequence या choice घटकों में दिखाया जा सकता है。

इस घटक से निर्माता XML दस्तावेज़ को शेष घटकों के अंतर्गत विस्तार कर सकता है जो schema द्वारा निर्दिष्ट नहीं हैं。

घटक सूचना

संयोजन व्याख्या
उपस्थिति बार अनिवार्यता
माता घटक choice、sequence
भाव टिप्पणी

व्याकरण

<any
id=ID
maxOccurs=nonNegativeInteger|unbounded
minOccurs=nonNegativeInteger
namespace=namespace
processContents=lax|skip|strict
किसी भी गुण
>
(टिप्पणी?)
</any>

(? संकेत घटक किसी भी घटक के अंदर शून्य या एक बार उपस्थित हो सकता है。)

गुण

id

वैकल्पिक। इस एलीमेंट के अनूष्ठानिक ID को निर्धारित करें。

maxOccurs

वैकल्पिक। any एलीमेंट को माता एलीमेंट में दिखने की अधिकतम बार निर्धारित करें। यह मान 0 से बड़ा या बराबर होना चाहिए। अधिकतम बार को सीमित नहीं करना चाहते, तो "unbounded" उपयोग करें। डिफ़ॉल्ट मान 1 है।

minOccurs

वैकल्पिक। any एलीमेंट को माता एलीमेंट में दिखने की न्यूनतम बार निर्धारित करें। यह मान 0 से बड़ा या बराबर होना चाहिए। यदि इस any समूह को वैकल्पिक करना चाहिए, तो इस गुण को 0 पर सेट करें। डिफ़ॉल्ट मान 1 है।

नामस्पेस

वैकल्पिक। उपयोग किए जा सकने वाले एलीमेंट के नामस्पेस को निर्धारित करें। यदि नामस्पेस निर्दिष्ट नहीं होता, तो डिफ़ॉल्ट ##any होगा। यदि नामस्पेस निर्दिष्ट होता है, तो यह निम्नलिखित मूल्यों में से एक होना चाहिए:

  • ##any - किसी भी नामस्पेस से आने वाले एलीमेंट की सूची में दिख सकते हैं (डिफ़ॉल्ट)
  • ##other - इस एलीमेंट के माता एलीमेंट के लक्ष्य नामस्पेस के बाहर की किसी भी नामस्पेस से आने वाले एलीमेंट की सूची में दिख सकते हैं।
  • ##local - नामस्पेस से अवैध एलीमेंट की सूची में दिख सकते हैं।
  • ##targetNamespace - इस एलीमेंट के माता एलीमेंट के लक्ष्य नामस्पेस से आने वाले एलीमेंट की सूची में दिख सकते हैं।
  • {नामस्पेस के URI संदर्भ, ##targetNamespace, ##local} की सूची - अलग-अलग नामस्पेस की सूची से आने वाले एलीमेंट की सूची में दिख सकते हैं। इस सूची में नामस्पेस ##targetNamespace और ##local के URI संदर्भ हो सकते हैं।

processContents

वैकल्पिक। एक संकेतक, जो संकेत करता है कि एप्लीकेशन या XML प्रोसेसर को कैसे XML दस्तावेज़ की पुष्टि करनी चाहिए जो इस any एलीमेंट द्वारा निर्दिष्ट है। यदि processContents गुण निर्दिष्ट नहीं होता, तो डिफ़ॉल्ट strict होगा। यदि processContents निर्दिष्ट होता है, तो यह निम्नलिखित मूल्यों में से एक होना चाहिए:

  • स्ट्रिक्ट - XML प्रोसेसर को आवश्यक नामस्पेस के आर्किटेक्चर प्राप्त करना होता है और उन नामस्पेस से आने वाले सभी एलीमेंट की पुष्टि करनी होती है (डिफ़ॉल्ट)
  • लैक्स - strict के समान; लेकिन, यदि आर्किटेक्चर प्राप्त नहीं होता, तो कोई भी त्रुटि नहीं होगी。
  • स्किप - XML प्रोसेसर से निर्दिष्ट नामस्पेस के सभी एलीमेंट की पुष्टि नहीं करता है。

किसी भी गुण

वैकल्पिक। non-schema नामस्पेस के साथ किसी भी अन्य गुण को निर्धारित करें。

उदाहरण

यह उदाहरण "person" एलीमेंट के एक घोषणा को दिखाता है। <any> एलीमेंट का उपयोग करके, निर्माता किसी भी एलीमेंट को "person" के सामग्री को विस्तार कर सकता है ( <lastname> के बाद):

<xs:element name="person">
  <xs:complexType>
    <xs:sequence>
      <xs:element name="firstname" type="xs:string"/>
      <xs:element name="lastname" type="xs:string"/>
      <xs:any minOccurs="0"/>
    </xs:sequence>
  </xs:complexType>
</xs:element>