xsd: So erweitern Sie einen Typ mit einer ungeordneten Liste von Elementen

Dies ist ein Teil meines XML-Schemas

<xs:complexType name="Friend">
    <xs:all>
        <xs:element name="name" type="xs:string" />
        <xs:element name="phone" type="xs:string" />
        <xs:element name="address" type="xs:string" />
    </xs:all>
</xs:complexType>

<xs:complexType name="Coworker">
    <xs:all>
        <xs:element name="name" type="xs:string" />
        <xs:element name="phone" type="xs:string" />
        <xs:element name="office" type="xs:string" />
    </xs:all>
</xs:complexType>

Zur besseren Wartbarkeit hätte ich die geteilten Attribute gerne in einem (abstrakten) Supertyp oder so ähnlich. Wichtiger ist jedoch, dass alle Elemente ungeordnet und optional sind.

Ist das möglich und wie geht das am besten?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage