Re: [soaplite] question about base64 encoding
This is most likely an artifact of SOAP::Lite using the 1999 XML Schema as opposed to the 2001 now recommended by the WS-i. I just tested this to ensure that the next release of SOAP::Lite will have this fixed.
If you wish to change the XML Schema version yourself, then use the following code:
$SOAP::Constants::DEFAULT_XML_SCHEMA = 'http://www.w3.org/2001/XMLSchema';
Mark Wilkinson wrote:
Using SOAP::Lite on the client side, I have data which is being passed
to me as:
xsi:type = http://schemas.xmlsoap.org/soap/encoding/base64
and these are decoded automatically by SOAP::Lite. Wonderful! However,
when data is passed to me as:
xsi:type = http://www.w3.org/2001/XMLSchema/base64Binary
SOAP::Lite does not automatically decode it. This is surprising,
because the definition of SOAP-ENC:base64 is:
So the two really should be handled identically (or??).
The same does *not* hold true for strings; data (in particular, escaped
XML) with SOAP-ENC:string are de-escaped by SOAP::Lite on the receiving
end, as are those encoded as xs:string - there is no (visible)
difference in behaviour in these two cases.
Am I missing something, or is this a bug in the way SOAP::Lite handles
Any advice appreciated!
Mark Wilkinson (mwilkinson@...)
University of British Columbia iCAPTURE Centre