Re: [xml-dev] Why does XML Schema allow elements with complex type tobe nillable?
The problem I have with nillibility is not the funtionality but that it seems to be declared at the wrong layer. You have to put it into the schema, which means you have to write the schema with a view to what non-deltas can be elided, which moves away from information and into a particular application, contrary to the basis of XML/SGML of separating markup and processing.
I think a properly layered version would be that XSD processors can be given a stop list of elements (or contexts) that are allowed to be nilled. So still put the xsi:nill attribute in lieu of the true content, but not make it a schema-creation-time decision when it should be an application decision. You want to avoid making application-specific dialect of schemas, for maintenance and politics reasons. In many cases, particularly with large organizations or public schemas, the people who might want to take advantage of nillibility have no input into the base schema. Separation of concerns not kitchen sinks please!
Regards
Rick