RDF Notation3 Grammar

source: rdfn3.g, a YAPPS grammar
document
( directive
| statement scp ) * END
directive
"@prefix" PREFIX URIREF SEP
statement scp
clause_ind scp SEP
clause_ind scp
( phrase scp [ predicate scp, phrase ( PSEP [ predicate scp, phrase ] ) * ] [ PTERM ] )
| ( term scp predicate scp, term ( PSEP [ predicate scp, term ] ) * [ PTERM ] )
term scp
( expr scp )
| ( name )
predicate scp,subj
verb scp objects1 scp,subj,verb
verb scp
( term scp )
| ( "is" term scp "of" )
objects1 scp,subj,verb
term scp ( "," term scp ) *
name
( URIREF )
| ( QNAME )
| ( "a" )
| ( "=" )
expr scp
( "this" )
| ( EXVAR )
| ( UVAR )
| ( INTLIT )
| ( STRLIT3 )
| ( STRLIT1 )
| ( STRLIT2 )
| ( list scp )
| ( phrase scp )
| ( clause_sub )
list scp
"\\(" item scp, items * "\\)"
item scp, items
term scp
phrase scp
"\\[" [ predicate scp, subj ( PSEP predicate scp, subj ) * [ PTERM ] ] "\\]"
clause_sub
"{" [ clause_ind scp ( SEP clause_ind scp ) * [ TERM ] ] "}"