consider the complexType "Camera" 

 <xsd:complexType name='Camera'>
    <xsd:complexContent>
      <xsd:extension base='camera:PurchaseableItem'>
        <xsd:sequence>
          <xsd:element minOccurs='0' maxOccurs='unbounded' ref='lens' />
          <xsd:element minOccurs='0' maxOccurs='unbounded' ref='body' />
          <xsd:element minOccurs='0' maxOccurs='unbounded' ref='viewFinder' />
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>
  </xsd:complexType>

I have a global declaration of "body" as follows

<xsd:element name='body'>
    <xsd:complexType>
      <xsd:sequence>
        <xsd:element ref='Body' />
      </xsd:sequence>
    </xsd:complexType>
  </xsd:element>

now I would like to declare a complexType derived from Camera  as follows

<xsd:complexType name='Large-Format'>
    <xsd:complexContent>
      <xsd:extension base='camera:Camera'>
        <xsd:sequence>
	  <xsd:element name='body' minOccurs='0' maxOccurs='unbounded'>
                 <xsd:complexType>
                    <xsd:sequence>
                       <xsd:element ref='BodyWithNonAdjustableShutterSpeed' />
                    </xsd:sequence>
                </xsd:complexType>
             </xsd:element>
        </xsd:sequence>
      </xsd:extension>
    </xsd:complexContent>

I tried to validate my xml schema file using  a schema checker available at tools.decisionSoft.com it gave an error saying that "body"cannot have both type. but it got successfully validated in IBM Schema Quality Checker(SQC2.2).   I also validated my file at http://apps.gotdotnet.com/xmltools/xsdvalidator ,and it was successfull.
Is my schema construct correct? 
my intension is to create a type "Large -Format" to contain an element "body" of type specified  above and not the one specified in the base "Camera" .
is it ok? or will "Large-Format" refer to two "body" elements of different types.

Please help me.

thank U.
V.Gayathri.