我想拥有几个元素电子游戏实例,每个实例都需要一个或多个元素控制台,但是不必在每个元素电子游戏中重复进行。 元素控制台的内容来自枚举。
我的视频游戏示例如下:
<xs:complexType name="tVideojuego">
<xs:complexContent>
<xs:extension base="a:tSoftware">
<xs:sequence>
<xs:element name="consola" maxOccurs="unbounded">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="XBox"/>
<xs:enumeration value="Play 4"/>
<xs:enumeration value="Nintendo Switch"/>
<xs:enumeration value="PC"/>
</xs:restriction>
</xs:simpleType>
<xs:unique name="consolaUnica">
<xs:selector xpath="consola"></xs:selector>
<xs:field xpath="."></xs:field>
</xs:unique>
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
但是在每个元素视频游戏中,我都可以拥有一台以上的PC,并且我不想允许它。
例如,不允许下一个视频游戏元素,因为pc出现3次且其中2个具有相同内容:
<ar:videojuego>
<id>videojuegoTheDivision2</id>
<nombre>The Division 2</nombre>
<cantidadArticulo>879</cantidadArticulo>
<empresa>Ubisoft</empresa>
<consola>PC</consola>
<consola>PC</consola>
<consola>Nintendo Switch</consola>
</ar:videojuego>
答案 0 :(得分:0)
您在右行,但是level=error msg="Failed to retrieve auth configuration for ingress my-namespace/configuration-docs-ingress: failed to load auth credentials: secret \"my-namespace\"/\"access-secret\" not found"
只能引用子项,并且只能与一个元素相关联。因此,约束需要放在元素包含的xs:unique
元素上。
这意味着您需要在使用consola
的地方应用约束,而不是在其定义中(这并不理想)。
tVideojuego