根据示例How to specify minimal value for fractionDigits restriction in XML Schema?,我有一个XSD架构,该架构的SimpleType-Decimal,fractionDigits = 2。
这完全正确地允许:-
12 12.34 12.06 12.5
但是它也接受12.230000000(不接受12.230000001)。为什么它不识别那些尾随的零?
那么,有没有办法只允许小数点后两位数字,所以它在12.230000000上出错?
我已经尝试过在此处看到的模式限制-How to specify minimal value for fractionDigits restriction in XML Schema?,但在12.23000000上没有错误。
任何帮助将不胜感激-我确定我缺少一些非常简单的东西!
谢谢 克雷格
答案 0 :(得分:1)
fractionDigits方面是对值空间的限制,而不是对词法空间的限制。这意味着该值必须是0.01的倍数,但对如何写入该值没有限制。
如果要限制词法空间(即值的写入方式),则只能使用模式构面来实现。
我个人认为限制词法空间通常是一个错误,因为生成XML的软件通常不会尊重这一点。但这取决于你。
我无法解释您为何尝试使用模式构面失败。如果您按照引用的内容进行操作,那么它应该可以工作。