2011-05-05 11 views
15

क्या यह किसी भी उद्देश्य (सत्यापन, बाध्यकारी ...) के लिए महत्वपूर्ण है यदि मैं usexs:attribute को optional के रूप में परिभाषित करता हूं या इसे बिल्कुल परिभाषित नहीं करता हूं?

यदि यह अनावश्यक है, तो यह बिल्कुल क्यों प्रदान किया जाता है?xsd अनावश्यक में = "वैकल्पिक" उपयोग है?

उत्तर

21

हां, यह अनावश्यक है।

यह section of the XSD Primer घटना की कमी की रक्तमय विवरण बताते हैं, लेकिन यहां प्रासंगिक हिस्सा है:

(use का डिफ़ॉल्ट मान optional है)

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

1

यह डिफ़ॉल्ट मान है, इसलिए हाँ यह अनावश्यक है। यह मार्कअप निर्माता के लिए प्रदान किया जा सकता है जो यह इंगित करना चाहते हैं कि उन्होंने वास्तव में उपयोग को सोचा था, या संभावित रूप से स्कीमा प्रोग्रामेटिक रूप से बनाते समय मूल्य की आसान गतिशील स्विचिंग की अनुमति देने के लिए।

7

कई भाषा डिजाइनर एक सिद्धांत का पालन करने का प्रयास करते हैं कि यदि कई विकल्प हैं, और एक डिफ़ॉल्ट है, तो आप केवल कुछ भी कहने पर निर्भर होने के बजाय डिफ़ॉल्ट रूप से डिफ़ॉल्ट रूप से अनुरोध करने में सक्षम होना चाहिए।

संबंधित मुद्दे