A complex schema: 
Monday, March 29, 2010
1:54 PM
A schema for the preceding: 
contents of [file]...
<xs:schema xmlns:xs="[link]">
 
<xs:element name="address">
  <xs:complexType>
    <xs:sequence>
      <xs:element name="fullName">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="first" type="nameComponent"/>
            <xs:element name="last" type="nameComponent"/>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
    </xs:sequence>
    <xs:attribute name='language' type='xs:language'/> 
  </xs:complexType>
 </xs:element>

 <xs:complexType name="nameComponent">
  <xs:simpleContent>
    <xs:extension base="xs:string"/>
  </xs:simpleContent>
 </xs:complexType>

</xs:schema>
...end of [file]
Pasted from <[link]> 
Some new tricks
xs:sequence: allows us to specify a sequence of elements, must contain xs:element instances. 
type="nameComponent": allows us to refer to another type declaration. 