You can do this at the same time and as many times as you want:
<xs:complexType name="Person"> <xs:sequence> <xs:element ref="my:name"/> <xs:element ref="my:major"/> </xs:sequence> </xs:complexType> <xs:complexType name="ExtendedPerson"> <xs:complexContent> <xs:extension base="my:Person"> <xs:element ref="my:address"/> <xs:element ref="my:extras"/> <xs:attribute name="grade" type="xs:string"/> <xs:attribute name="level" type="xs:string"/> <xs:attribute name="birth-date" type="xs:date"/> </xs:extension> </xs:complexContent> </xs:complexType>