axis2のnull処理

家でaxis2のサンプルを1から作っていて気になった。
beanのメンバがnullだった時のシリアライズとデシリアライズに齟齬があるような気がする。


シリアライズ
メンバがnullであろうがなかろうがセッターが呼ばれていなければタグが出力されない。
まあセッターが呼ばれていなければ内容が変更されていないということで、xmlに出力する必要も無いということか。
しかしクライアントとサーバーは言語も違えば実装者も違うだろうし、メンバの初期値が必ずしも同じとは限らないと思うのだが・・・
ちなみにセッターが呼ばれていて値がnullであればnil属性付きのタグが出力される。


シリアライズ
タグがなくてもnil属性付きのタグでもセッターは呼ばれない。
タグがなければ値を変更する必要は無いということでセッターを呼ばないのはわかるが、シリアライズの処理を考えるとnil属性付きのタグがあるということは明示的にnullを設定する必要があるんじゃないか?


soapの標準としてはどうなのかね?
メンバの初期値はnullとするという規約でもあるのかな?