arskom/rpclib — pull request #142 by xtfxme (2012-06-12 21:35:05+00:00)
Title: Members with nillable=false and maxOccurs=0 still set nillable

Currently, when an element is optional, but NOT nillable, it's still set
nillable during serialization. However, when nillable=true, the member is
properly skipped. This behavior causes schema validation errors on the client.

Example schema:

[...]

[...]

Rpclib output:

[...]
4fd7ad136b6b473006000005

[...]

... correct by not caring if nillable when deciding to skip or not.

TODO: arrays improperly set nillable if all of their sub-nodes are skipped
(empty array), but the array is NOT nillable (should be empty node instead)