【发布时间】:2009-01-23 19:25:15
【问题描述】:
我必须为已经在使用的 XML 格式创建一个模式。现有的 XML 已经由不同的程序生成,听起来很难找到所有需要更改的地方才能使用更常规的 XML 格式。
这是一个类似于我们的 XML 结构的示例:
<data>
<summary>some info</summary>
<error>error message (only if there was an error)</error>
<details>more info
<x>more</x>
<y>even more</y>
</details>
<error>another error message</error>
<z>some extra info</z>
</data>
请注意,错误标记在同一级别重复使用,并且出现在某些项目之后而不是其他项目之后,所以我不能只设置 maxOccurs="unbounded"。我已经尝试将相关的错误/其他标记对包装在 xsd:sequence 中,但这并不能解决问题,因为我仍然有效地违反了唯一粒子归属规则。
这甚至可以做到吗,还是我需要让其他开发人员知道这个架构不会验证?
【问题讨论】:
-
您的示例不是格式良好的 XML(两个关闭的详细信息标签)。我建议您解决这个问题并提供一些其他示例来演示需要处理的 XML 变化。
-
对不起,删除多余的结束标签以获取详细信息。
-
这不是无关紧要的,我认为这是丢失的错字
-
我相信您现在在
的第一个实例上缺少 关闭标记 -
我的回答是否充分回答了您的问题?还是您还想了解更多细节?
标签: xml schema xsd tags particles