微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

xml – 为什么人们接受XSD需要特定顺序的元素?

在最近的一项工作中,我一直在构建与.NET应用程序的 XML交互的 PHP端(使用SimpleXMLElement).我一直在与.NET领域的同行一起遇到概念思维的差异,特别是因为他们只是在.NET中使用XSD / XML库而没有考虑太多,而我发现自己不得不向后弯腰因为XSD的局限性.换句话说,我无法理解为什么如果我以“错误”的顺序给出元素或者有一些它不知道的元素,他们的XML摄取器会失败,他们不明白为什么我关心. (相反,我对他们的开发实践的看法被降低了,因为他们不想关心.)

盲目接受XSD一代是真正的罪魁祸首吗?为什么人们接受它如此挑剔?

解决方法

XSD不要求元素按特定顺序排列,它只允许您坚持元素按特定顺序排列.

强迫元素按特定顺序排序的一件事是,如果您实际上是手动编辑XML,智能感知将自动假设您希望按特定顺序使用下一个标记.如果你只使用xs:all而不是xs:sequence,intellisense将列出所有可能的下一个元素,你必须选择哪一个(或者根据你的观点选择):).

我还要补充一点,使用固定的顺序使XML文件更易于使用.确实,无论您是否订购坐标x,y,z或z,x,它都不会对文件中的软件读取产生任何影响,但如果订单遵循常规约定,那么读取这些坐标的人将更容易.如果所有内容都处于相同的顺序,那么人类比较两个XML文件以查看它们的不同之处也更容易.

只是为了解决问题,使用固定订单有什么不利之处?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。