Webservices – SOAP vs. “XML over HTTP”

SOAP is just a specialization of XML over HTTP and that response you posted does indeed look like a SOAP response (a SOAP fault actually).
This looks like a big misunderstanding, so don’t assume they are pulling your leg. Try asking your question in a different way.
As for the WSDL, if this is indeed a 100% SOAP web service, do note that it is not mandatory to have a WSDL for a SOAP web service.
A web service is just an application that exposes a set of operations over the network. In order to call these operations you need to know what their name is, what parameters they expect, what types the parameters have etc, so that you know how to build your client stub.
This means the web service needs to be documented or else you would not know how to write the code that interact with the web service. This documentation can be a Word document or a PDF and you could build the client manually from that (which involves writing a lot of plumbing code for that client stub of yours) OR the documentation could be a WSDL file which unlike a PDF or Word document can be fed to a tool to generate the stub plumbing code for you automatically.
The WSDL describes the web service – and it’s good practice to provide one – but the web service exists separately from the WSDL.

nillable and minOccurs xsd element attributes

You need to decide whether you are thinking about XML as XML, or whether you are thinking about XML as a way to transmit Java (or other) object from here to there.
In XML, nillable permits the construction as an indicator of an explicit absent value, like an SQL NULL. This is semantically different from just . And both are distinct from nothing at all. So, when looking at XML, you have to distinguish four cases:



some content


For any Java item that inherits from Object, JAXB and other mapping technologies need a way to deal with null values. Nillable is the way to do that. If you forbid nillable on something that can be an object, toolkits will annoyingly use an array to find a way to represent absence.
On the other hand, if you have an array, keep in mind that the array itself is an object, and can be null. So, toolkit has to distinguish a zero-element array from a null.
On the other hand, if you have a primitive type (e.g. int), nillable will lead to problems, since there is no mapping from xsi:nil to a primitive.

http://stackoverflow.com/questions/1903062/nillable-and-minoccurs-xsd-element-attributes