2010-05-19 148 views
4

以我XML模式定義,我試圖限制的屬性的值是整數0和100之間XML架構:如何使用自定義'simpleType'類型指定屬性?

參照下面的示例模式,我想屬性「ATTR」元素上的「根'有這個限制。 爲了實現這一點,我定義了一個simpleType'Percentage'並將其設置爲'attr'的'類型'。

但是,我的XML模式編輯器(VS 2008)將該屬性標記爲有問題:「類型'百分比'未聲明或不是簡單類型」。

<?xml version="1.0" encoding="utf-8"?> 
<xs:schema elementFormDefault="qualified" id="test" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://testtttt"> 
    <xs:simpleType name="Percentage"> 
    <xs:restriction base="xs:integer"> 
     <xs:minInclusive value="0"/> 
     <xs:maxInclusive value="100"/> 
    </xs:restriction> 
    </xs:simpleType> 
    <xs:element name="root"> 
    <xs:complexType> 
     <xs:attribute name="attr" type="Percentage" use="optional" /> 
    </xs:complexType> 
    </xs:element> 

回答

5

它看起來像你的模式根元素缺少一個命名空間聲明:

xmlns="http://testtttt" 

所以類型引用無效。

相關問題