RDF API for PHP
BNF for RAPs RDQL engine
NON-Terminals
CompilationUnit
::=
Query
CommaOpt
::=
(
,
)?
Query
::=
SelectClause
(
SourceClause
)?
TriplePatternClause
(
ConstraintClause
)?
(
PrefixesClause
)?
SelectClause
::=
(
SELECT
Var
(
CommaOpt
Var
)* |
SELECT *
")
SourceClause
::=
(
FROM
|
SOURCE
)
QuotedURI
TriplePatternClause
::=
WHERE
TriplePattern
(
CommaOpt
TriplePattern
)*
TriplePattern
::=
(
VarOrURI
CommaOpt
VarOrURI
CommaOpt
VarOrUriOrLiteral
)
ConstraintClause
::=
AND
Expression
(
,
Expression
)*
PrefixesClause
::=
USING
PrefixDecl
(
CommaOpt
PrefixDecl
)*
PrefixDecl
::=
Identifier
FOR
QuotedURI
Expression
::=
ConditionalOrExpression
ConditionalOrExpression
::=
ConditionalXorExpression
(
||
ConditionalXorExpression
)*
ConditionalXorExpression
::=
ConditionalAndExpression
ConditionalAndExpression
::=
ValueLogical
(
&&
ValueLogical
)*
ValueLogical
::=
StringEqualityExpression
StringEqualityExpression
::=
EqualityExpression
((
StrEqOp
EqualityExpression
) | (
RegexMatchOp
RegexPattern
))
StrEqOp
::=
EQ
|
NE
RegexMatchOp
::=
~~
|
=~
|
!~
RegexPattern
::=
<REGULAR_EXPRESSION>
EqualityExpression
::=
RelationalExpression
(
EqOp
RelationalExpression
)?
EqOp
::=
==
|
!=
RelationalExpression
::=
AdditiveExpression
(
RelOp
AdditiveExpression
) ?
RelOp
::=
<
|
<=
|
>
|
>=
AdditiveExpression
::=
MultiplicativeExpression
(
AddOp
MultiplicativeExpression
)*
AddOp
::=
+
|
-
MultiplicativeExpression
::=
UnaryExpression
(
MulOp
UnaryExpression
)*
MulOp
::=
*
|
/
|
%
UnaryExpression
::=
PrimaryExpression
|
+
UnaryExpression
|
-
UnaryExpression
|
!
UnaryExpression
PrimaryExpression
::=
Var
|
Literal
|
(
Expression
)
VarOrURI
::=
Var
|
QuotedURI
VarOrUriOrLiteral
::=
Var
|
QuotedURI
|
Literal
Var
::=
?
Identifier
Identifier
::=
<IDENTIFIER>
URI
::=
<URI>
QuotedURI
::=
<
<URI>
>
Literal
::=
URI
|
NumericLiteral
|
TextLiteral
|
BooleanLiteral
|
NullLiteral
NumericLiteral
::=
<INTEGER_LITERAL> | <FLOATING_POINT_LITERAL>
TextLiteral
::=
<STRING_LITERAL> (
@
Identifier
)? (
^^
URI
)?
BooleanLiteral
::=
<BOOLEAN_LITERAL>
NullLiteral
::=
<NULL_LITERAL>