我正在为我的 XML 架构而苦苦挣扎,盯着屏幕也无济于事。我尝试为其创建架构的 XML 如下所示:
<root>
<command>FOO|BAR|BLOOP</command>
<parameters>
<param1>val</param1>
<param2>val</param2>
</parameters>
<root>
根据命令值是 = FOO、BAR 还是 BLOOP,参数标签中需要有一组不同的参数,并且它可能为空。定义了某个命令需要出现的参数集,并且某些命令名称具有相同的参数集。
我所做的是为每个命令创建一个类型,一个用于 FOO,一个用于 BAR,一个用于 BLOOP,在这些类型中我可以放置它们使用的参数。
但是,当我执行以下操作时:
<xs:element name="root">
<xs:complexType>
<xs:element name="myCommand" type="myCommandType"/>
</xs:complexType>
</xs:element>
这会为每个命令类型创建一个具有名称的特殊元素,而实际上我只是希望根元素之间的部分由该命令所需的任何内容填充。
关于解决此问题的最佳方法的任何线索?
为每个命令创建一个模式会更好,还是可以将它们全部放在同一个模式中?