I just wanted to note in plain english how to build up this request, because I made some assumptions by just misterpreting the parameters.
This is for future reference(for myself) and others that might end up a bit mistified by just not understanding the finesses of soap and are trying to learn.
$this->__doRequest(string $request , string $location , string $action , int $version [, int $one_way = 0 ] );
$request = The XML Soap enveloppe
$location = The url to the WSDL file. No matter that you defined this before when setting up the object, you need to reuse it here.
$action = the soap action to be performed. This is defined in the wsdl file and can be in the form of a single form or an url. it's just a parameter and might not be an actual valid url
$version = SOAP_1_1 = content headers (Content-Type: text/xml; charset=utf-8␍)
SOAP_1_2 = content headers (Content-Type: application/soap+xml; charset=utf-8; action="somesoapaction defined in $action")
If you send a SOAP_1_2 request to a SOAP_1_1 server you might get a reply in the following form
HTTP/1.1 415 Cannot process the message because the content type 'application/soap+xml; charset=utf-8; action="somesoapaction defined in $action"' was not the expected type 'text/xml; charset=utf-8'.
You need to switch down to SOAP_1_1 in that case to get the proper formatting the server can understand