- From: Tolkin family <tolkin@mediaone.net>
- Date: Sat, 14 Apr 2001 07:50:20 -0400
- To: www-xml-schema-comments@w3.org
> Re: Schema changes for absent, empty, and nil special values > > From: Henry S. Thompson (ht@cogsci.ed.ac.uk) > Date: Fri, Apr 13 2001 > ... > <personalOpinion> > The only semantics which it is appropriate for the XML Schema spec. to > discuss is validation semantics. What semantics users and/or > applications attach to syntactic usage patterns is their business. > </personOpinion> Dear Henry, I mostly agree with you. In large part the semantcis of XML will be defined by the behavior of a query, acting upon one or more input instance documents (with their explicit or implicit schemas). The query language must surely define the result of a query in a "mechanical way", i.e. using a formal system of semantics, as it has no understanding of the meaning intended for it by a human user. As I said in my email <quote> We cannot easily constrain the ways users will want to use XML. Some may want it to work like SQL, while other may prefer that it work like Excel or some other system they are familiar with. Therefore the goal must be to allow users to fairly easily express queries that behave as they intend. The underlying XML data model and formal semantics should be expressive enough to in principle capture all reasonably likely semantics. The end user language should be simple enough so that in practice users can express their specific desired semantics. </quote> I think this fact that different users will want different semantics in different situtaions is what what you expressed in your personal opinion. above. But given the need for Schema and Query to be formal system we reach the following conclusion: it is the responsibility of Schema and Query to enable a user to express his intended semantics. Furthermore it is extremely desirable to permit the user to express his intent in a way that is reasonably convenient to write and read, not too error prone, etc. (Otherwise we could all just write in a Turing machine langugae.) Consider the very important point of whether XML Schema and XML Query, taken together, support a tree-valued logic. Supporting a three-valued logic "subsumes" the case of a two-valued logic. This means that a user wishing only a two-valued logic may achieve his intention fairly easily. But the converse situation does not hold --- if Schema and Query only support a data model with a two-valued logic those people wanting three-valued logic will discover that it is extremely dificiult to achieve their goal. I believe that very many people in fact will want a three-valued logic, for the practical reason that this is necessary to emulate the semantics of SQL, and for the fundamental reason that "unknown" states occur whenever one tries to mdoel the real model. It seems to me that the current XML data model should be explicit about this point taking for example one of the following positions: * only supports two valued logic * supports three-valued logic innately * can be made to emulate three-valued logic (and then explain the details) I am troubled by the lack on any definite statement in this area. I believe that if more Schema user understood that it might be very hard to achieve three valued logic that there would be many moe objections, and many would be made forcefully. Perhaps the data model for Schema does lend itself to easy support of three-valued logic. In that case the documentation of the specification should be improved. Similarly "absent" values in XML instance documents are a basic fact of life; they will occur for various reasons including the fundamental one that they are "created" whenever a new element is added to a Schema. Provided Query enables it, it will be possible for users to achieve their intended semantics here even without support from Schema. But schema has chosen to add support for default values for empty elements and absent attributes. I am pointing out that this lack of symmetry, and absence of functionality supporting absent element, will cause users morre work. A crude analogy might be a system of arithmetic that supported addition, subtraction, and division, but not multiplication. Users would be told, well that's just repeated addition. Sure, but what a pain in the neck. Absent elements, and default values in general, would greatly benefit from improved support in Schema. Hopefully helpfully yours, Steve -- Steven Tolkin steve.tolkin@fmr.com 617-563-0516 Fidelity Investments 82 Devonshire St. R24D Boston MA 02109 There is nothing so practical as a good theory. Comments are by me, not Fidelity Investments, its subsidiaries or affiliates
Received on Saturday, 14 April 2001 07:50:55 UTC