
Grammar extracted by Vadim Zaytsev, see the Grammar Zoo entry for details: ontoware/rdf/hillairet/extracted
Source used for this grammar: Guillaume Hillairet, Resource Description Framework Schema (RDFS), RDFS.ecore, 2006/06/07
Resource, Graph, List, Container, Alt, Bag, Seq, Property, ContainerMembershipProperty, Statement, URIReferenceNode, BlankNode, Class, Datatype, Literal, PlainLiteral, TypedLiteral, RDFXMLLiteral, URIReference, UniformResourceIdentifier, Boolean, Integer, String), 0 root (—), 2 top (ContainerMembershipProperty, Integer), 0 bottom (—).[graph] 2, [uriRef] 3, [subjectStatement] 2, [objectStatement] 2, [label] 2, [type] 2, [seeAlso] 2, [referringResource] 2, [member] 2, [container] 2, [list] 2, [graphName], [resources], [first], [rest], [originalList], [predicateStatement], [subPropertyOf], [superProperty], [domain], [range], [predicate], [object], [subject], [isReifiedOnly], [isReified], [nameForReification], [nodeId], [subClassOf] 2, [superClass] 2, [typedResource] 2, [propertyForDomain] 2, [propertyForRange] 2, [lexicalForm], [language], [labeledResource], [datatypeURI] 2, [uri], [resource], [literal], [namedGraph], [reifiedStatement], [name].Resource ::= Graph
Resource ::= List
Resource ::= Container
Resource ::= Property
Resource ::= Statement
Resource ::= URIReferenceNode
Resource ::= BlankNode
Resource ::= Class
Resource ::= Literal
Resource ::= [graph]::Graph [uriRef]::URIReference [subjectStatement]::Statement [objectStatement]::Statement [label]::PlainLiteral [type]::Class [seeAlso]::Resource [referringResource]::Resource [member]::Resource [container]::Resource [list]::List
Graph ::=
[graphName]::URIReference [resources]::ResourceList ::=
[first]::Resource [rest]::List [originalList]::ListContainer ::= Alt
Container ::= Bag
Container ::= Seq
Container ::= Alt Bag Seq
Alt ::= ε
Bag ::= ε
Seq ::= ε
Property ::= [predicateStatement]::Statement [subPropertyOf]::Property [superProperty]::Property [domain]::Class [range]::Class
ContainerMembershipProperty ::= ε
Statement ::=
[predicate]::Property [object]::Resource [subject]::Resource [isReifiedOnly]::Boolean [isReified]::Boolean [nameForReification]::URIReferenceURIReferenceNode ::= [graph]::Graph [uriRef]::URIReference [subjectStatement]::Statement [objectStatement]::Statement [label]::PlainLiteral [type]::Class [seeAlso]::Resource [referringResource]::Resource [member]::Resource [container]::Resource [list]::List
BlankNode ::= [nodeId]::String
Class ::= Datatype
Class ::= [subClassOf]::Class [superClass]::Class [typedResource]::Resource [propertyForDomain]::Property [propertyForRange]::Property
Datatype ::= [subClassOf]::Class [superClass]::Class [typedResource]::Resource [propertyForDomain]::Property [propertyForRange]::Property
Literal ::= PlainLiteral
Literal ::= TypedLiteral
Literal ::= [lexicalForm]::String
PlainLiteral ::= [language]::String [labeledResource]::Resource
TypedLiteral ::= RDFXMLLiteral
TypedLiteral ::= [datatypeURI]::URIReference
RDFXMLLiteral ::= [datatypeURI]::URIReference
URIReference ::= UniformResourceIdentifier
URIReference ::=
[uri]::UniformResourceIdentifier [resource]::Resource [literal]::TypedLiteral [namedGraph]::Graph [reifiedStatement]::StatementUniformResourceIdentifier ::=
[name]::String [uriRef]::URIReferenceBoolean ::= "true" "false"
Integer ::= integer
String ::= string