gpt4 book ai didi

Java - 如何指定 xsd 元素取决于另一个元素

转载 作者:行者123 更新时间:2023-11-30 08:04:33 24 4
gpt4 key购买 nike

我觉得这是一个简单的问题,但我找不到任何解决方案。在我的 xsd 中,我有一个请求对象,它是一个复杂的元素,其中包含 3 个元素。例如:GetApplicationRequest 具有元素 1(名称)、元素 2(dob)和元素 3(license_id)。要创建有效请求,需要(元素 1 和元素 2)或(元素 3)之一。因此,如果您使用元素 3 创建请求,则其他 2 个不应该存在,如果您使用元素 1 创建请求,则元素 2 是必需的,元素 3 不应存在。

我可以在这里使用选择标签,但这意味着只需要 3 个元素中的一个。我需要一个选择和依赖。因此在元素 1 和元素 3 之间进行选择,如果要传递元素 1,则还需要元素 2。

背景说明,目前这个request对象只有元素1和元素2,而且都是必须的。我在这里添加元素 3。我不想为 (Element 1 and Element 2) 创建另一个复杂类型。这是因为,此服务已在许多地方使用,我必须在这些地方更改请求对象。

感谢您的帮助。

最佳答案

根据您的描述,像这样的复杂类型似乎可以满足您的要求:

<xs:complexType name="GetApplicationRequest">
<xs:choice>
<xs:sequence>
<xs:element ref="name"/>
<xs:element ref="dob"/>
</xs:sequence>
<xs:element ref="license_id"/>
</xs:choice>
</xs:complexType>

关于Java - 如何指定 xsd 元素取决于另一个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35509858/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com