<?xml version="1.0" encoding="ISO-8859-1"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="unqualified"> <xs:element name="foo" type="baseType"/> <xs:complexType name="baseType"> <xs:all> <xs:element name="bar" type="derivedType" minOccurs="0"/> </xs:all> <xs:attribute name="attrA" type="xs:string" use="required"/> </xs:complexType> <xs:complexType name="derivedType"> <xs:complexContent> <xs:extension base="baseType"> <xs:attribute name="attrB" type="xs:string" use="required"/> </xs:extension> </xs:complexContent> </xs:complexType> </xs:schema>