W3C home > Mailing lists > Public > www-xml-schema-comments@w3.org > January to March 2008

RE: question about lexical and value spaces

From: Michael Kay <mike@saxonica.com>
Date: Fri, 18 Jan 2008 10:33:24 -0000
To: <noah_mendelsohn@us.ibm.com>
Cc: "'Peter F. Patel-Schneider'" <pfps@research.bell-labs.com>, <www-xml-schema-comments@w3.org>
Message-ID: <00aa01c859bd$8e60d1e0$6501a8c0@turtle>

 
> 
> MK> There is intense debate about whether "ineffable values" 
> (values with no lexical representation) should be considered as being
within the 
> > value space or not. 
> 
NM> Really?  I thought we were always clear that if there was no 
> lexical form, there was no value.

I think that

http://www.w3.org/Bugs/Public/show_bug.cgi?id=3243 and

http://www.w3.org/Bugs/Public/show_bug.cgi?id=5058

demonstrate that there are others who hold different views. 

Although from a practical viewpoint I find the idea of the value space
holding values that you can't write deeply unattractive, I have to concede
that the description of union types becomes easier if we say that the value
space of a union is the union of the value spaces of the members,
disregarding the fact that some of these values are unreachable because of
the "first match" rule.

I guess my own position (or at least, my attempt to achieve a workable
compromise) is best summarized in 

http://www.w3.org/Bugs/Public/show_bug.cgi?id=3243#c5

I've been known to say that we can define it either way and it makes no
difference. That's true as far as the XML Schema specification is concerned.
It does start to make a difference once you recognize that other
specifications are using the set of types that we define, and they may
define ways of creating values other than by parsing strings in the lexical
space (for example, by means of arithmetic operators).

Perhaps the real solution is to design the lexical space so that it does
have a distinct representation of every value. That could be achieved, for
example, by allowing an escapable separator in writing lists, and by some
kind of microsyntax for unions: "(xs:int)3" for example. 

Michael Kay
http://www.saxonica.com/
Received on Friday, 18 January 2008 10:33:38 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Sunday, 6 December 2009 18:13:12 GMT