You can redefine complex types.
The new definition must be a extension or restriction of the old definition.
This means a strange definition like:
<xs:complexType name="Person"> <xs:complexContent> <xs:extension base="my:Person"> ... </xs:extension> </xs:complexContent> </xs:complexType>
Again, the effect is a type derivation and a shifting of all the uses to the derived type.