Package de.fuberlin.wiwiss.ng4j.triql.parser

A TriQL parser.

See:
          Description

Interface Summary
Expr  
ExprBoolean  
ExprNumeric  
Node  
TriQLParserConstants  
TriQLParserTreeConstants  
 

Class Summary
ConstraintExpr  
JavaCharStream An implementation of interface CharStream, where the stream is assumed to contain only ASCII characters (with java-like unicode escape processing).
ParsedLiteral  
Q_Add  
Q_ArgList  
Q_BitAnd  
Q_BitOr  
Q_BitXor  
Q_BooleanLiteral  
Q_ConstraintClause  
Q_CountExpression  
Q_Divide  
Q_Equal  
Q_FunctionCall  
Q_GraphPattern  
Q_GraphPatternClause  
Q_GreaterThan  
Q_GreaterThanOrEqual  
Q_Identifier  
Q_LeftShift  
Q_LessThan  
Q_LessThanOrEqual  
Q_LogicalAnd  
Q_LogicalOr  
Q_Modulus  
Q_Multiply  
Q_NotEqual  
Q_NullLiteral  
Q_NumericLiteral  
Q_PatternLiteral  
Q_PrefixDecl  
Q_PrefixesClause  
Q_QName  
Q_Query Concrete result of parsing a query.
Q_QuotedURI  
Q_RightSignedShift  
Q_RightUnsignedShift  
Q_SelectClause  
Q_SourceClause  
Q_SourceSelector  
Q_String  
Q_StringEqual  
Q_StringMatch  
Q_StringNoMatch  
Q_StringNotEqual  
Q_Subtract  
Q_TextLiteral  
Q_TriplePattern  
Q_UnaryMinus  
Q_UnaryNot  
Q_UnaryPlus  
Q_URI  
Q_URL  
Q_Var  
SimpleNode  
Token Describes the input token stream.
TriQLParser  
TriQLParserTokenManager  
 

Exception Summary
ParseException This exception is thrown when parse errors are encountered.
 

Error Summary
TokenMgrError  
 

Package de.fuberlin.wiwiss.ng4j.triql.parser Description

A TriQL parser. It is based on Jena's RDQL parser.

The parser is generated by the JJTree/JavaCC tool.

Most classes are boilerplate code that was automatically generated. The package mixes completely auto-generated classes and hand-edited code.

triql.jjt contains the JJTree grammar. triql.jj is generated from that automatically by the JJTree tool. The JavaCC tool generates some of the Java files in this package from triql.jj.

The parser creates a parse tree for the query. The Q_Query class is the root node. Its buildQuery method grabs all the interesting stuff from the tree and puts it into a TriQLQuery object. Only the constraints (AND clauses) are left in parse tree form.

The TriQLQuery object is then used by the query engine.