## Licensed under the terms of http://www.apache.org/licenses/LICENSE-2.0

==== The Grammars
See Archive for old, historical material.

main.jj - Template for SPARQL and ARQ
    cpp input to produce sparql.jj or arq.jj

sparql_11.jj - The SPARQL working group syntax
    This should be exactly the grammar in the SPARQL 1.1 rec.
    Generates org.apache.jena.query.parser.sparql_11.SPARQLParser

sparql_12.jj - The RDF Star working group syntax
    This should be exactly the grammar in the SPARQL 1.2 rec.
    Generates org.apache.jena.query.parser.sparql_12.SPARQLParser

arq.jj - The native query language of the query engine
    Generates org.apache.jena.query.parser.arq.ARQParser

sparql_10-final.jj - SPARQL 1.0, but updated to match internal chnages in ARQ.
    This should produce the grammar in the SPARQ 1.0/DAWG rec.
    Generates org.apache.jena.query.parser.sparql_10.SPARQLParser
    
Final/sparql_10-final.jj is original for the SPARQL 1.0 specification. 
Final/sparql_11-final.jj is original for the SPARQL 1.1 specification.

This should produce the HTML grammar in the SPARQL 1.0/DAWG and SPARQL 1.1
specifications.

==== Making the parsers

See "grammar"
Note this runs cpp over main.jj to produce arq.jj or sparql.jj

==== Making the HTML

sparql_N.txt is produced by "grammar", and is used to make HTML.
We don't use jjdoc to produce HTML but instead get jjdoc to produce
its text form and process that, toegther with a hand-managed
token.txt file.

== Tokens

Run "jj2tokens sparql_11.jj > tokens.txt" to get a first pass at a tokens file.
Manually tidy, noting which to inline

Produce HTML suitable for inclusion in the SPARQL recomendations.
Includes some hand-craft tidying up. 
  jj2html arq.txt tokens.txt 
