Я не уверен, что это лучшая возможность с любой точки зрения, но одна возможность будет для Server1
и Server2
быть просто именами типов, а затем создать элемент, объединяющий Server1
и * 1004. *.
<xsd:comlexType name=Server1>
<sequence>
// ...
</sequence>
</xsd:complextype>
<xsd:complexType name=Server2>
// ...
</xsd:complexType>
<element name="Server">
<xsd:union memberTypes = "Server1 Server2" />
</element>