Re: NULL strings... necessary?

Indeed, XQuery and XSLT make a distinction here.  However, the term "null 
value" is not used by those languages nor by the data model on which they 
depend (the XPath 2.0 and XQuery 1.0 Data Model).  The closest analog to 
"null value" in that Data Model is "empty sequence", which is a sequence 
with nothing at all in it.  That is very clearly different from a value of 
xs:string type that contains exactly zero characters.  The term used by the 
Data Model for such a string value is "zero-length string".  Note that the 
Data Model does *not* use the term "empty value" nor "empty string" because 
of the proven potential for confusion with "empty sequence".

There is also recognition, but no semantic use made, of XML Schema 
declarations of types that are nillable and of instances of complex types 
that are "nilled" (that is, they consist of an element, presumably with no 
content, containing an attribute named xs:nil whose value is 
"true").  There were literally months of debate about whether 
nillable/nilled "things" should be treated as though they were close 
analogs of SQL's null value, but it was determined eventually that such 
treatment was the provenance of applications and not of the Data Model or 
the XPath/XQuery/XSLT language specifications.

Because of the specific choice of vocabulary ("empty sequence" and 
"zero-length string") used by the Data Model, versus the choice of 
vocabulary used by Arnt below ("NULL/NIL string" and "empty string"), and 
the absence of any statement by Arnt of what his terms mean, I cannot 
address his actual question.  Sorry!

I should also mention that XQuery's order by clause (part of the FLWOR 
expression) allows query authors to specify whether empty sequences sort 
less than or greater than all non-empty-sequence values.

Hope this helps,
    Jim

At 5/28/2005 02:52 AM, Martin Duerst wrote:

>XML Schema allows instances to distinguish between null values and
>empty values. XQuery and XSLT are most probably using this.
>Their WGs were in meetings the past week; I hope we'll hear
>from some experts in the comming week.
>
>Regards,    Martin.
>
>
>At 21:38 05/05/25, Arnt Gulbrandsen wrote:
> >
> >Hi,
> >
> >does any of you have a real example where NULL/NIL strings occur and 
> need to be sorted differently than empty strings?
> >
> >I know one (IMAP SORT HEADER BLAH), but it's a little contrived. Also I 
> suspect that if an IMAP client issues SORT SUBJECT, the need to 
> differentiate between empty-string subject and no subject is less than 
> overwhelming.
> >
> >I'd like to have a better example to justify the feature.
> >
> >Arnt
> >
>

========================================================================
Jim Melton --- Editor of ISO/IEC 9075-* (SQL)     Phone: +1.801.942.0144
   Co-Chair, W3C XML Query WG; F&O (etc.) editor    Fax : +1.801.942.3345
Oracle Corporation        Oracle Email: jim dot melton at oracle dot com
1930 Viscounti Drive      Standards email: jim dot melton at acm dot org
Sandy, UT 84093-1063 USA          Personal email: jim at melton dot name
========================================================================
=  Facts are facts.   But any opinions expressed are the opinions      =
=  only of myself and may or may not reflect the opinions of anybody   =
=  else with whom I may or may not have discussed the issues at hand.  =
======================================================================== 

Received on Sunday, 29 May 2005 20:15:43 UTC