<xsd:complexType name="coreIdentifier" block="#all">
<xsd:sequence>
<xsd:element name="surname" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
<xsd:complexType name="enhancedIdentifier">
<xsd:complexContent>
<xsd:extension base="ns1:coreIdentifier">
<xsd:sequence>
<xsd:element name="firstname" type="xsd:string"/>
</xsd:sequence>
</xsd:extension>
</xsd:complexContent>
</xsd:complexType>
<xsd:complexType name="Household">
<xsd:sequence>
<xsd:element name="family" type="ns1:coreIdentifier"/>
</xsd:sequence>
</xsd:complexType>
<xsd:element name="myBaseInfo" type="ns1:coreIdentifier"/>
<xsd:element name="myFullInfo" type="ns1:enhancedIdentifier"/>
<xsd:element name="myHousehold" type="ns1:Household"/>
EnhancedIdentifier createenhancedIdentifier = ComplexBlockFactory.eINSTANCE.createEnhancedIdentifier();
createenhancedIdentifier.setFirstname("Barney");
createenhancedIdentifier.setSurname("Rubble");
Household createHousehold = ComplexBlockFactory.eINSTANCE.createHousehold();
createHousehold.setFamily(createenhancedIdentifier);