- From: Kay Michael <Michael.Kay@icl.com>
- Date: Wed, 29 Sep 1999 18:14:22 +0100
- To: "'francis@redrice.com'" <francis@redrice.com>
- Cc: "'xsl-editors@w3c.org'" <xsl-editors@w3c.org>
> <xsl:apply-templates select="//BIA[nonExistentElement = false()]" />
Thanks very much. SAXON is wrong. I misread the rules for comparing a
nodeset with a boolean. It will be fixed in the next version.
Using NS for a nodeset, S for a string, N for a number, B for a boolean:
NS = S means "exists X in NS where string(X) = S"
NS = N means "exists X in NS where number(X) = N"
NS = B means "(exists X in NS) = B"
while SAXON interprets it incorrectly as
"exists X in NS where boolean(X) = B"
Silly me, I was expecting the spec to be consistent.
I'm not quite sure whether this is identical to the problem you described
earlier with result tree fragments though.
Generally I have always hated query languages that try to hide the
existential or universal qualifiers when comparing sets with each other or
with individual items. When I worked on X3H2 there were people proposing
this for the SQL standard and I'm really glad we fought it off.
Mike Kay
Received on Wednesday, 29 September 1999 13:15:01 UTC