用于略有变化的xml文件的单一XSD模式

用于略有变化的xml文件的单一XSD模式,xml,validation,xsd,Xml,Validation,Xsd,我有一些xml,我想验证,它可以是这样的 <hotel> <reservation> <hotelroom>47</hotelroom> ... </reservation> </hotel> 47 ... 或者可能是 <hotel> <restaurant> <tablenumber>3</tabl

我有一些xml,我想验证,它可以是这样的

<hotel>
    <reservation>
         <hotelroom>47</hotelroom>
         ...
    </reservation>
</hotel>

47
...
或者可能是

<hotel>
    <restaurant>
         <tablenumber>3</tablenumber>
         ...
    </restaurant>
</hotel>

3.
...
其想法是,如果是酒店预订,我想根据一组数据进行验证,如图所示:请求的酒店房间号、地址等,如果是餐厅的xml,则我需要表号、人员姓名等

我刚开始学习xsd,所以还是个傻瓜。我已经为每种情况编写了一个模式,但不确定该做什么,因为我觉得我想在xsd文件中写一些东西,说明是否出现预订,然后根据此进行验证;如果出现餐厅,则根据此进行验证

我已经阅读了W3XSD教程,但没有看到任何内容


谢谢:D

您基本上需要
预订
休息
。你应该使用这是为了这个。然后可以使用该模式进行验证。

正确答案。要稍微扩展一下,hotel元素的复杂类型应该有一个内容模型,它是一个xs:choice,它的两个分支是xs:element ref=“reservation”和xs:element ref=“restaurant”。