xml - XML XSD 小数部分数字
问题描述
我有一个 XSD 模式,它是 SimpleType - Decimal,fractionDigits = 2,根据这个例子如何在 XML Schema 中指定 fractionDigits 限制的最小值?.
这完全正确地允许:-
12 12.34 12.06 12.5
但它也接受 12.230000000(它不接受 12.230000001)。为什么它不能识别那些尾随零?
那么,有没有办法只允许小数点后两位,所以它在 12.230000000 上出错?
我已经尝试过这里看到的模式限制 -如何在 XML Schema 中为 fractionDigits 限制指定最小值?但是,它仍然不会在 12.23000000 上出错。
任何帮助将不胜感激 - 我确定我错过了一些非常简单的东西!
谢谢克雷格
解决方案
fractionDigits 方面是对值空间的限制,而不是对词汇空间的限制。这意味着该值必须是 0.01 的倍数,但对值的写入方式没有限制。
如果您想限制词法空间(即写入值的方式),您只能使用模式方面来做到这一点。
我个人认为限制词汇空间通常是一个错误,因为生成 XML 的软件通常不会尊重这一点。但这取决于你。
我无法解释为什么您尝试使用模式方面没有成功。如果你按照你引用的帖子那样做,它应该可以工作。
推荐阅读
- c# - 停止 Kestrel 服务器接受来自代码的请求
- android - 减慢 ViewPager2 的滚动速度
- ab-initio - 从 abinitio 图中查找 schema.tables 列表
- codenameone - InputStream 和 OutputStream 应该在 Codename One 中关闭?
- javascript - 为什么 express.static() 不能从正确的路径加载我的 .js 和 .css 文件?
- .net-core - 左连接中所有数据为空时的 Odata 扩展问题
- css - 媒体查询不适用于更小的宽度
- mysql - 使用 Group By 键选择多条记录
- mongodb - 如何在 MongoEngine 中自动更新更新时间?
- java - Java 正则表达式格式字符串