org.olap4j.mdx.parser
Interface MdxParser


public interface MdxParser

Parser for the MDX query language.

A parser is reusable but not reentrant: you can call parseSelect(java.lang.String) and parseExpression(java.lang.String) several times, but not at the same time from different threads.

Since:
Aug 22, 2006
Version:
$Id: MdxParser.java 482 2012-01-05 23:27:27Z jhyde $
Author:
jhyde
See Also:
MdxParserFactory

Method Summary
 ParseTreeNode parseExpression(String mdx)
          Parses an MDX expression and returns a parse tree.
 SelectNode parseSelect(String mdx)
          Parses an MDX Select statement and returns the SelectNode at the root of the parse tree.
 

Method Detail

parseSelect

SelectNode parseSelect(String mdx)
Parses an MDX Select statement and returns the SelectNode at the root of the parse tree.

In order to be parsed successfully, the expression must be syntactically correct but does not need to be valid. (Syntactic correctness and validity are described further in the description of parseExpression(String).)

Parameters:
mdx - MDX query string
Returns:
Parse tree

parseExpression

ParseTreeNode parseExpression(String mdx)
Parses an MDX expression and returns a parse tree.

An expression is a combination of operators and operands, which can occur in many places inside an MDX query, such as the definition of a calculated member or an axis.

In order to be parsed successfully, the expression must be syntactically correct but does not need to be valid. For example,

(1 + (2 + 3)
is syntactically incorrect, because there are more open parentheses "(" than close parentheses ")", and the parser will give an error. Conversely,
(1 + [Measures].[Bad Measure])
is syntactically correct, and the parser will successfully create a parse tree, even if [Measures].[Bad Measure] does not exist.

Parameters:
mdx - MDX expression
Returns:
Parse tree

SourceForge.net_Logo