The proposed BNF stress that:
1) Find all sequences that are on more than one chromosome map.
SELECT *
FROM CLASS Sequence
WHERE COUNT(m FROM .Map m WHERE m = "Chr*") > 1
This search can not be done just now.
*********** true, a bug in the code, i try to fix it !
the correct present syntax is
FIND Sequence ; COUNT { FOLLOW Map chr* } > 1
note the {} casting the inside FOLLOW Map chr* to an embedded query
***
this query does NOT work in distributed 4.3
i have not tested deeper recursions with several embeded {{ }}
but the present syntax allows that in principle
finally, there is a parsing problem, semicolumns embeded inside the
{} arere allowed by the syntax but do break the parser
********
what i am aiming at is that one should distinguish 2 concepts
a) the bnf syntax
b) bugs in the implementations
that is, on this particular case, the new query is not better
but an implementation bug was noticed
*******
As long as the expected result of the query is just a set of
objects, it is not clear that the proposed system has real
superiority, i think it is less concise and no more expressive
however, there is a big advantage when we come to tables,
I was never able to write down the BNF for the table maker,
because i always thought it was too clumsy and I welcome
the notion of a unified query/table definition
my comments on the document by rd and weisman is:
some little details of style
an interogation about casting
i think explict casting should be allowed, so checking
of the query against the model would give much better
messages while compiling the query
finally i would prefer the syntax
WHERE
p = Paper
a = p->author
to the syntax
WHERE
Paper p
p.author a
and also would prefer class casting, possibly to subclasses
WHERE
p = Paper
a = (Prolific_author) p->a
******
PS:
i got an empty result with the query
FIND Sequence ; COUNT {FOLLOW Map chr*} > 1
but i think this is normal, but i did verify that the query
FIND Sequence zk* ; COUNT {FOLLOW Subsequence *6} > 0
which has the same grammar, does yield the expected 44 answers in
the nematode data distrib
Jean