is it legal to name the s:element and s:complexType the same name? you can see the following code, the element and complextype has exactly the same name this is a chunk of wsdl file.
<s:element name="ProcessTaskActionResponse">
<s:complexType>
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="ProcessTaskActionResult" type="tns:ProcessTaskActionResponse"/>
</s:sequence>
</s:complexType>
</s:element>
<s:complexType name="ProcessTaskActionResponse">
<s:sequence>
<s:element minOccurs="0" maxOccurs="1" name="TaskId" type="tns:ArrayOfServerId"/>
<s:element minOccurs="1" maxOccurs="1" name="Success" type="s:boolean"/>
<s:element minOccurs="0" maxOccurs="1" name="ActionPerformedLabel" type="s:string"/>
<s:element minOccurs="0" maxOccurs="1" name="Errors" type="tns:ArrayOfString"/>
<s:element minOccurs="1" maxOccurs="1" name="RemovedFromTaskList" type="s:boolean"/>
</s:sequence>
</s:complexType>