2010-08-23 101 views
1

我有一個屬性的XML文件看起來是這樣的:使用XSD驗證CSV值?

<Element attribute="1234,2345,3413,6532" /> 

我需要一種方法來驗證該屬性值是整數的一定範圍內的逗號分隔的列表。任何人都知道如何使用XSD來做到這一點?

謝謝!

回答

1

這應該限制屬性的值,以逗號分隔的整數列表:

<xsd:element name="Element"> 
    <xsd:complexType> 
     <xsd:attribute name="attribute"> 
      <xsd:simpleType> 
       <xsd:restriction base="xsd:string"> 
        <xsd:pattern value="\d+(,\d+)*" /> 
       </xsd:restriction> 
      </xsd:simpleType> 
     </xsd:attribute> 
    </xsd:complexType> 
</xsd:element> 

如果你所提到的範圍是很簡單的,你也許能夠表達,在RE,例如[1-9]\d{3}了4位整數。

+0

謝謝,這讓我有一部分。如果範圍是0-183784那麼該怎麼辦?使用正則表達式驗證會變得棘手。有沒有其他方法可以做到這一點?我已經有了一個簡單的類型來驗證一個整數是否在正確的範圍內,有什麼方法可以將它與你的例子結合起來嗎? – user113164 2010-08-24 13:37:01