Validation 是否使用XSD验证CSV值?

Validation 是否使用XSD验证CSV值?,validation,csv,xsd,Validation,Csv,Xsd,我有一个xml文件,其属性如下所示: <Element attribute="1234,2345,3413,6532" /> 我需要一种方法来验证属性值是否是某个范围内以逗号分隔的整数列表。有人知道如何使用XSD实现这一点吗 谢谢 这应该将属性的值限制为逗号分隔的整数列表: <xsd:element name="Element"> <xsd:complexType> <xsd:attribute name="attribut

我有一个xml文件,其属性如下所示:

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

我需要一种方法来验证属性值是否是某个范围内以逗号分隔的整数列表。有人知道如何使用XSD实现这一点吗


谢谢

这应该将属性的值限制为逗号分隔的整数列表:

<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中表示它,例如,对于4位整数,
[1-9]\d{3}

这应该将属性值限制为逗号分隔的整数列表:

<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来表示,例如4位整数的
[1-9]\d{3}

谢谢,这部分让我明白了。如果范围大约是0-183784呢。使用正则表达式进行验证会变得很棘手。还有别的办法吗?我已经有了一个简单的类型来验证一个整数是否在正确的范围内,是否有任何方法可以将其与您的示例结合起来?谢谢,这让我部分地做到了这一点。如果范围大约是0-183784呢。使用正则表达式进行验证会变得很棘手。还有别的办法吗?我已经有了一个简单的类型来验证一个整数是否在正确的范围内,有没有办法将它与您的示例结合起来?