유형이 참조되는 장소에서 유형의 카디널리티를 정의하는 방법이 있습니까? 만약 같은 (복잡한 유형의 벡터
<xs:complexType name="xyType">
<xs:element name="xy" maxOccurs="1">
<xs:choice maxOccurs="1" minOccurs="0">
<xs:complexType>
<xs:choice maxOccurs="unbounded" minOccurs="0">
...
</xs:choice>
</xs:complexType>
</xs:element>
</xs:choice>
</xs:complexType>
그래서 예를 들어 이런 종류 참조 요소를 갖는 두 종류의 A와 B가 있지만, 어느 경우 I는 하나 XY 있도록 (상기와 같은) 다른 I 여러 XY 허용하고자 위의 maxOccurs를 xy에 대해 "제한되지 않음"으로 변경).
실제로이 유형에 대한 정의가 매우 길고 복잡하기 때문에 xyType (단일) 및 xyType (제한되지 않음)에 대한 complexType 정의를 완전히 분리하지 않으려합니다.
가능한 한 너무 많은 유형을 정의하지 않으려합니다 (내부 complexType을 본문에서 분리하고 해당 유형을 참조하는 두 가지 유형이있는 것처럼). 이것은 또한 특정 시나리오에서 매우 복잡 할 것입니다 (스키마로 정의하려고하는 복잡한 클래스 계층 구조가 있으므로 모든 것이 이미 비대 해져 있습니다).
그래서 기본적으로 나는이 유형을 참조하는 유형이 그것이 의미가있는 경우 카디널리티를 돌보는 무언가를 찾고 있습니다.