2011-08-03 14 views
35

मैं किसी भी मूल्य के बिना एक एक्सएमएल विशेषता चाहता हूं, जिसका अस्तित्व केवल अस्तित्व में है या अस्तित्व में नहीं है।एक मूल्य के बिना एक एक्सएमएल विशेषता है, वैध?

क्या यह मान्य है?

+0

और 'विशेषता =" "': http://stackoverflow.com/questions/184014/can-an-xml-attribute-be-the-empty-string –

उत्तर

16

सं

बूलियन एक्सएमएल में विशेषताओं का रूप foo="foo" के हैं।

एसजीएमएल में भी, आपको मूल्य प्रदान करना होगा, (यह नाम, = और उद्धरण जो आप छोड़ सकते हैं, यही कारण है कि आपके पास HTML में <select multiple> जैसी चीजें हैं)।

0

हां। आपके पास एक विशेषता हो सकती है जिसका केवल अनुमत मान खाली स्ट्रिंग है, ""। मुझे यकीन नहीं है कि यह अच्छा डिज़ाइन है, हालांकि: मैं सामान्य रूप से मूल्यों के साथ एक बुलियन विशेषता का सुझाव देता हूं जो सत्य/गलत है, और गलत का डिफ़ॉल्ट मान है।

+8

हालांकि एक खाली स्ट्रिंग अभी भी एक मान है। – Quentin

41

एक विशेषता निम्नलिखित वाक्य रचना के साथ निर्दिष्ट किया जाना चाहिए:

नाम Eq AttValue

जहां नाम एक legal XML name है, समीकरण = optionally preceded or followed by whitespace है, और AttValue एक legal attribute value है।

यह परिभाषा XML 1.0 और XML 1.1 दोनों के लिए सच है।

आप नीचे के रूप में एक विशेषता निर्दिष्ट करने के लिए कोशिश कर रहे हैं:

<car owned/> 

तो नहीं, कि मान्य नहीं है। यदि आप इसे इस तरह निर्दिष्ट करने की कोशिश कर रहे हैं:

<car owned=""/> 

तब हाँ, यह मान्य है।

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