doc/book/en/annexes/rql/implementation.rst
branchstable
changeset 5312 d2dbba898a96
parent 4446 a413fac5ff5e
child 5393 875bdc0fe8ce
equal deleted inserted replaced
5311:34dc38456376 5312:d2dbba898a96
     1 
     1 
     2 
     2 
     3 Implementation
     3 Implementation
     4 --------------
     4 --------------
       
     5 
     5 BNF grammar
     6 BNF grammar
     6 ~~~~~~~~~~~
     7 ~~~~~~~~~~~
     7 
     8 
     8 The terminal elements are in capital letters, non-terminal in lowercase.
     9 The terminal elements are in capital letters, non-terminal in lowercase.
     9 The value of the terminal elements (between quotes) is a Python regular
    10 The value of the terminal elements (between quotes) is a Python regular
   124 
   125 
   125 Known limitations
   126 Known limitations
   126 ~~~~~~~~~~~~~~~~~
   127 ~~~~~~~~~~~~~~~~~
   127 
   128 
   128 - The current implementation does not support linking two relations of type 'is'
   129 - The current implementation does not support linking two relations of type 'is'
   129   with a OR. I do not think that the negation is supported on this type of
   130   with an OR. I do not think that the negation is supported on this type of
   130   relation (XXX FIXME to be confirmed).
   131   relation (XXX FIXME to be confirmed).
   131 
   132 
   132 - Relations defining the variables must be left to those using them.  For
   133 - Relations defining the variables must be left to those using them.  For
   133   example::
   134   example::
   134 
   135 
   138 
   139 
   139      Point P where P abs X, P value X+Y, P ord Y
   140      Point P where P abs X, P value X+Y, P ord Y
   140 
   141 
   141   is not.
   142   is not.
   142 
   143 
   143 - missing proper explicit type conversion,  COALESCE and certainly other things...
   144 - missing proper explicit type conversion, COALESCE and certainly other things...
   144 
   145 
   145 - writing a rql query require knowledge of the schema used (with real relation
   146 - writing an rql query requires knowledge of the used schema (with real relation
   146   names and entities, not those viewing in the user interface). On the other
   147   names and entities, not those viewed in the user interface). On the other
   147   hand, we can not really bypass that, and it is the job of a user interface to
   148   hand, we cannot really bypass that, and it is the job of a user interface to
   148   hide the RQL.
   149   hide the RQL.
   149 
   150 
   150 
   151 
   151 Topics
   152 Topics
   152 ~~~~~~
   153 ~~~~~~