2010-08-05 11 views
15

एक XML स्कीमा लेखन करते हैं, मैं इसएक्सएस का उपयोग करना: एक्सटेंशन और एक्सएस: एक साथ प्रतिबंध?

<xs:complexType name="ValueWithUnits"> 
    <xs:simpleContent> 
     <xs:extension base="xs:double"> 
      <xs:attribute name="uom" fixed="second"/> 
      <xs:minInclusive="0"/> 
      <xs:maxInclusive="10"/> 
     </xs:extension> 
    </xs:simpleContent> 
</xs:complexType> 

दुर्भाग्य की तरह कुछ करने की कोशिश कर रहा हूँ, XS: विशेषता XS पर अनुमति दी है: विस्तार करते हुए XS: minInclusive & XS: maxInclusive XS पर अनुमति दी जाती है: प्रतिबंध है, लेकिन एक साथ नहीं।

इस संरचना करने के लिए सबसे अच्छा तरीका क्या है? क्या मुझे उचित इकाइयों & के साथ एक एक्सटेंशन को परिभाषित करना है, तो इसे मेरे न्यूनतम & अधिकतम मानों से प्रतिबंधित करें?

उत्तर

15

आप

<?xml version="1.0" encoding="utf-8" ?> 
<!--Created with Liquid XML Studio Developer Edition 8.1.4.2482 (http://www.liquid-technologies.com)--> 
<xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"> 
    <xs:simpleType name="RestrictedDouble"> 
     <xs:restriction base="xs:double"> 
      <xs:minInclusive value="0" /> 
      <xs:maxInclusive value="10" /> 
     </xs:restriction> 
    </xs:simpleType> 
    <xs:complexType name="ValueWithUnits"> 
     <xs:simpleContent> 
      <xs:extension base="RestrictedDouble"> 
       <xs:attribute name="uom" fixed="second" /> 
      </xs:extension> 
     </xs:simpleContent> 
    </xs:complexType> 
</xs:schema> 
+0

ठीक डबल separatley पर प्रतिबंध परिभाषित करने की जरूरत है कि अगर यह मैं क्या और मैं उम्मीद कर रहा होगा नहीं होगा क्या है मैं सोच रहा था। मैं इतना है कि मैं एक DoubleSecondsType है और विशिष्ट कार्यान्वयन है कि एक प्रतिबंधित चारों ओर आदेश फ्लिप का फैसला किया। – oconnor0

+0

मैं इस की कोशिश की है, इसकी मुझे एक त्रुटि दे रही है पर: 'complexType' पहले से ही सामग्री मॉडल में मौजूद है कह । इसे कैसे ठीक करें? – Srini

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