I want to check if a field in my XML is of type positive double/decimal
. There is a type="xs:positiveInteger"
datatype in XSD but no positive double or decimal. Is there a way to achieve this either by defining custom datatype or some other way?
我想检查我的XML中的字段是否为正双精度/小数。 XSD中有一个type =“xs:positiveInteger”数据类型,但没有正二进制或十进制数。有没有办法通过定义自定义数据类型或其他方式来实现这一点?
2 个解决方案
#1
4
<xs:element name="data">
<xs:simpleType>
<xs:restriction base="xs:float">
<xs:minInclusive value="0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
i think this should do it. There may be a shorter way i'm still learning xsd.
我认为应该这样做。可能有一种更短的方式我还在学习xsd。
#2
3
You can achieve this by defining decimal datatype with restriction as following.
您可以通过定义带限制的十进制数据类型来实现此目的,如下所示。
<xs:simpleType name="positiveDecimal">
<xs:restriction base="xs:decimal">
<xs:minInclusive value="0"/>
</xs:restriction>
</xs:simpleType>
#1
4
<xs:element name="data">
<xs:simpleType>
<xs:restriction base="xs:float">
<xs:minInclusive value="0"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
i think this should do it. There may be a shorter way i'm still learning xsd.
我认为应该这样做。可能有一种更短的方式我还在学习xsd。
#2
3
You can achieve this by defining decimal datatype with restriction as following.
您可以通过定义带限制的十进制数据类型来实现此目的,如下所示。
<xs:simpleType name="positiveDecimal">
<xs:restriction base="xs:decimal">
<xs:minInclusive value="0"/>
</xs:restriction>
</xs:simpleType>