This page provides you with the definition of the IRIS Datalog syntax, it has been generated from the BNF grammar.
| program | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| expr | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| rule | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| fact | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| query | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| litlist | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| literal | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| predicate | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| paramlist | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| termlist | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| intlist | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| term | = |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| builtin | = |
|
| all | = | [ 0x0 .. 0xffff ] |
| tab | = | 9 |
| cr | = | 13 |
| lf | = | 10 |
| eol | = | cr lf | cr | lf |
| alpha | = | [ 'a' .. 'z' ] | [ 'A' .. 'Z' ] |
| num | = | [ '0' .. '9' ] |
| alphanum | = | alpha | num |
| anychar | = | alphanum | ' ' | tab | '/' | '#' | ':' | '.' | ',' | ';' |
| min | = | '-' |
| dot | = | '.' |
| comma | = | ',' |
| comment | = | '//' [ all - [ cr+ lf ] ]* eol |
| blank | = | ( ' ' | tab | eol )+ |
| delim | = | ''' |
| eq | = | '=' |
| ne | = | '!' eq |
| add | = | '+' |
| sub | = | '-' |
| mul | = | '*' |
| div | = | '/' |
| lt | = | '<' |
| le | = | lt eq |
| gt | = | '>' |
| ge | = | gt eq |
| t_blank | = | blank | |
| t_comment | = | comment | |
| t_dot | = | dot | |
| t_impliedby | = | ':-' | |
| t_and | = | 'and' | |
| t_not | = | 'not' | 'naf' | '!' | |
| t_comma | = | comma | |
| t_lpar | = | '(' | |
| t_rpar | = | ')' | |
| t_variable | = | '?' alphanum+ | |
| '?-' | = | '?-' | |
| t_id | = | alpha+ | |
| t_delim | = | delim | |
| t_unders | = | '_' | |
| t_bin_op | = | ne | lt | le | gt | ge | |
| t_ter_op | = | add | sub | mul | div | |
| t_eq | = | eq | |
| t_int | = | min? num+ | |
| t_dec | = | min? num+ ( dot num+ )? | |
| t_str | = | delim anychar+ delim | |
| t_sq | = | alphanum+ '#' alphanum+ | |
| t_pre_integer | = | '_integer' | |
| t_pre_string | = | '_string' | |
| t_pre_decimal | = | '_decimal' | |
| t_pre_double | = | '_double' | |
| t_pre_float | = | '_float' | |
| t_pre_base64 | = | '_base64binary' | |
| t_pre_boolean | = | '_boolean' | |
| t_pre_date | = | '_date' | |
| t_pre_datetime | = | '_datetime' | |
| t_pre_duration | = | '_duration' | |
| t_pre_gday | = | '_gday' | |
| t_pre_gmonthday | = | '_gmonthday' | |
| t_pre_gmonth | = | '_gmonth' | |
| t_pre_gyearmonth | = | '_gyearmonth' | |
| t_pre_gyear | = | '_gyear' | |
| t_pre_hex | = | '_hexbinary' | |
| t_pre_iri | = | '_iri' | |
| t_pre_sqname | = | '_sqname' | |
| t_pre_time | = | '_time' |