blob: dfb85e22e4652cf061ba18daacf09e992fae33e2 [file] [log] [blame]
## 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 rec.
Generates org.apache.jena.query.parser.sparql_11.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", 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 suiatble for inclusion in the SPARQL recomendations.
Includes some hand-craft tidying up.
jj2html arq.txt tokens.txt