[Soap-Python] bug with generation of header elements (+ patch)
Burak Arslan
burak.arslan at arskom.com.tr
Thu May 3 02:33:29 CEST 2012
On 05/02/12 20:32, Wolfgang Sourdeau wrote:
>
>>
>> This indeed fixes my output. Does this seem reasonable?
>>
> The only downturn I see is that the default tns is not fallen back on
> when __namespace__ is not defined. So this is likely to be wrong in
> the general case. I don't know how to reconcile this though, since
> __namespace__ will always return something and I would think comparing
> this to the class's module name would be rather hackish.
>
No need to worry about non-defined namespaces, they're substituted with
the module name.
This commit fixes the issue:
https://github.com/plq/rpclib/commit/215b8cf1502eb8f390d595a4cb6c3e4f9285ffdd
Start tags are now in the same namespace as the definitions themselves.
intermediate tags are in the parent's namespace, just as before.
In the below example; SomeObject here is the direct child of a senv:
child, so i call it a start tag. Its namespace is the namespace defined
in rpclib model definition. SomeChild is in the s1: namespace in
rpclib.model definition. But its start tag is in its parent namespace,
and its child tag is in SomeChild's own namespace.
<senv:Header>
<s0:SomeObject>
<s0:SomeChild>
<s1:SomeString>blah</s1:SomeString>
</s0:SomeChild>
</s0:SomeObject>
</senv:Header>
With the previous behaviour, start tags were always in the tns: prefix,
like the SomeObject case here:
<senv:Header>
<tns:SomeObject>
<s0:SomeChild>
<s1:SomeString>blah</s1:SomeString>
</s0:SomeChild>
</tns:SomeObject>
</senv:Header>
I think this is an important change. Please let me know if you think
this is wrong.
Best,
Burak
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/soap/attachments/20120503/ca0f8771/attachment.html>
More information about the Soap
mailing list