Anatomy of MaxL Statements

MaxL statements for Essbase are syntactically comprised of keywords and terminals. Understanding how they work together can help you build your MaxL script-writing skills.

  • A keyword, represented in plain, lower-case font, is a unit of MaxL grammar. Keywords must be entered literally and in the correct order in MaxL statements. See the examples of keywords in the following diagram excerpt:


    Within the statement create database DBS-NAME using non_unique_members, the types are as follows. Create and database are keywords. DBS-NAME is a Terminal. Using and non_unique_members are keywords.
  • A terminal, represented in upper-case without brackets, is replaced by values in the appropriate format as defined in the Terminals table. In the above diagram, DBS-NAME is a terminal. Terminals need to be replaced with a valid name; for example, sample.basic.

    Keywords cannot be used as terminals, unless enclosed in single quotation marks. For example, to create a database named database, the statement create database database; would return an error, but create database "database"; would work.

  • The semicolon indicates the end of a statement. Omitting a semicolon, or placing one before the expected end of a statement, results in a syntax error.

  • A non-terminal, represented in upper-case with angle brackets <>, is defined in an additional diagram, usually below the main diagram. No non-terminal is shown here.