- From: Andrew Layman <andrewl@microsoft.com>
- Date: Thu, 4 Jan 2001 12:46:41 -0800
- To: "'www-xml-schema-comments@w3.org'" <www-xml-schema-comments@w3.org>
I would like to point out some of the significance of David's commendably careful wording. He writes "If the element is omitted, it is 'not providing' any information (e.g. that column value was not extracted from the database row)." This leaves open several possibilities regarding why it was not extracted. One may be that it was never requested. Another is that the column is not present in that row. Another is that the column is present and had a "value" of NULL. Another is that the column is present in the database but the value of the column matches a default value supplied in the schema. Since the XSD specification describes syntactic and type constraints, not database mappings, all these and causes others are possible. (However, the use of the definite article "the" suggests that all data originates in and is understood by reference to a database. That assumption is beyond the scope of the schemas design.) David also carefully uses "e.g." when he writes "If the element is present with xsi:null="true", it is 'providing a value' of the null attribute as 'anti' normal element content (e.g. that column value extracted from the database row had a null value instead of a value of the specified type)." Indeed, this is one possible use of xsi:null. The effect of xsi:null, as described by the XML Schemas specification, is simply to signal that an instance element is valid when empty even though the validating schema definition of the element's type has a non-empty content model. The relation of xsi:null to anything in relational databases is not part of the XML schemas specification.
Received on Thursday, 4 January 2001 15:47:18 UTC