Given the following example:
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="Book" abstract="true">
<xs:sequence>
<xs:element name="titel" type="xs:string">
</xs:element>
<xs:element name="bookCode" type="BookEnum"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="Lyric">
<xs:complexContent>
<xs:extension base="Book">
<xs:sequence>
<xs:element name="author" type="xs:string">
</xs:element>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:simpleType name="BookEnum">
<xs:restriction base="xs:int">
<xs:enumeration value="Paperback"/>
<xs:enumeration value="Hardcover"/>
<xs:enumeration value="Liporello"/>
<xs:enumeration value="None"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>
Lyric derives from Book. I would like to restrict the possible values of the BookEnum for the complexType "Lyric" to be "Paperback".
"None", "Liporello" and "Hardcover" should no longer be valid values for "Lyric". can this be done in xsd?