@ismel: Yes, you are right. Typed xml will return you a correct null value because the parser then 'knows' about the element being nillable. In fact it then uses the exact same xsi:nil="true" attribute to indicate the null values. I indeed forgot to mention typed xml and it's different behaviour in the article. Personally I still find it hard to type the xml's in my projects: even though typed xml can be very useful, the xml collections impose some limitations that I can often not live with. That's probably why I forgot about them in the article;). Thank you for the valuable addition.