Description
The "xml-binding.xsd" schema file that is currently packaged in cxf-rt-bindings-xml only defines the following WSDL extension:
<xs:complexType name="XMLBindingMessageFormat">
<xs:complexContent>
<xs:extension base="wsdl:tExtensibilityElement">
<xs:sequence />
<xs:attribute name="rootNode" type="xs:QName"
use="optional" />
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:element name="body" type="xformat:XMLBindingMessageFormat" />
This is the definition for the "xformat:body" element extending wsdl:binding/wsdl:operation/wsdl:input.
The schema is missing the declaration for the "xformat:binding" element that extends wsdl:binding.
That element can be found in the type_test_xml.wsdl for example:
<wsdl:binding type="tns:TypeTestPortType" name="TypeTestXML">
<xformat:binding/>
<!-- [...] -->
</wsdl:binding>
"type_test_xml.wsdl" does not validate against its schema
Also, two different versions of the ""xml-binding.xsd" schema exist in the code base. Their
are not consistent in their content, and they do not use the same target namespace.
For instance:
- ./common/schemas/src/main/resources/schemas/wsdl/xml-binding.xsd
target namespace: "http://cxf.apache.org/bindings/xmlformat"
- ./rt/bindings/xml/src/main/resources/schemas/wsdl/xml-binding.xsd
target namespace: "http://cxf.apache.org/bindings/xformat"
The first one actually defines the "xformat:binding" element, but in the wrong namespace.