SAS Parser
Parser Documentation

Version: 1.5.5


This document was generated on 2025/03/13.


Introduction

This parser is based on Kolasu, an application of the
StarLasu methodology on the Java Virtual Machine (JVM). The parser has been tested with JVM version 11. Issues related to serialization have been reported with later versions of the JVM starting with version 16.

Usage

The main entry point is the class com.strumenta.sas.parser.SASLanguage which is the SAS implementation of a Kolasu parser. After constructing a SASLanguage instance, we can invoke one of the parse method overloads to obtain a result including:

  • the AST, the main result of the parsing, a tree structure modeling the contents of the source code.
    This document lists the types of nodes that can make up the AST for SAS code. These are all
    Kolasu nodes that we can traverse, transform, etc.
  • a list of issues encountered during parsing (errors, warnings, and informative messages).

Documentation

Classes

Identifier Class

An identifier, i.e., a name for a variable, function, etc. Note that identifiers in SAS may be composed of a fixed part and a variable part computed as a macro expansion, e.g., `foo&bar.`

Super Classes
Local Features
Name Type and Description
name String
namespace optional
Identifier
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

NodeWithAutoChildren Class

A node that automatically adds other nodes as children when passed into its constructor.

Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Subclasses

SourceFile Class

An entire SAS source file.

Local Features
Name Type and Description
statementsAndDeclarations List<ASTNode>
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

Statements

ArrayStatement Class

An ARRAY statement.

Super Classes
Local Features
Name Type and Description
autoDim Boolean
dimensions list of
Expression A
dollar Boolean
from optional
Identifier
list list of
Identifier
name optional
Identifier
to optional
Identifier

AssignmentStatement Class

An assignment to a variable.

Super Classes
Local Features
Name Type and Description
name optional
Identifier
value optional
Expression A

AttribStatement Class

An ATTRIB statement.

Super Classes
Local Features
Name Type and Description
attrib list of
SingleAttribStatement

CallStatement Class

A CALL statement.

Super Classes
Local Features
Name Type and Description
call optional
FunctionCallExpression

DeclareOption Class

An option in a DECLARE statement.

Super Classes
Local Features
Name Type and Description
dataset optional
DatasetSpec
expression optional
Expression A
name optional
Identifier
Used In

DeclareStatement Class

A DECLARE statement.

Super Classes
Local Features

DeleteStatement Class

A DELETE statement.

Super Classes
Local Features
Name Type and Description
identifier optional
Identifier

DoStatement Class

A DO statement.

Super Classes
Local Features

DropStatement Class

A DROP statement.

Super Classes
Local Features
Name Type and Description
datasets list of
DatasetSpec

EmptyStatement Class

An empty statement (i.e. a lone semicolon).

Super Classes

ExpressionStatement Class

An expression statement.

Super Classes
Local Features
Name Type and Description
expression optional
Expression A

FileSendStatement Class

FILE SEND statement.

Super Classes
Local Features
Name Type and Description
from List<String>
subject String
to List<String>

FileStatement Class

A FILE statement.

Super Classes
Local Features
Name Type and Description
expression optional
Expression A
options list of
FileOption

FormatStatement Class

A FORMAT statement.

Super Classes
Local Features
Name Type and Description
formats list of
FormatSpec

IfStatement Class

An IF statement.

Super Classes
Local Features
Name Type and Description
condition optional
Expression A
elseStatement optional
DataStatement A
thenStatement optional
DataStatement A

InputStatement Class

Input statement. See https://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a000146292.htm

Super Classes
Local Features
Name Type and Description
holdAcross Boolean
holdWithin Boolean
specifications list of
InputSpecification A

KeepStatement Class

A KEEP statement.

Super Classes
Local Features
Name Type and Description
variables optional
VariableList A

LabelStatement Class

A LABEL statement.

Super Classes
Local Features
Name Type and Description
expression list of
Expression A
names list of
Identifier

LengthStatement Class

A LENGTH statement.

Super Classes
Local Features
Name Type and Description
specs list of
LengthSpec

MacroStatementWrapper Class

A macro statement in a data step context.

Super Classes
Local Features
Name Type and Description
macroStatement optional
Statement A

MergeStatement Class

A MERGE statement.

Super Classes
Local Features
Name Type and Description
datasets list of
DatasetSpec

OutputStatement Class

An OUTPUT statement.

Super Classes
Local Features
Name Type and Description
identifier optional
Identifier

PutLogStatement Class

PUTLOG statement.

Super Classes
Local Features
Name Type and Description
identifier optional
Identifier
informat String?
message String

PutStatement Class

A PUT statement.

Super Classes
Local Features
Name Type and Description
at Boolean
dollar Boolean
putBuilder optional
DoStatement
specifications list of
PutSpecification

RenameStatement Class

A RENAME statement.

Super Classes
Local Features
Name Type and Description
expression list of
Expression A
names list of
Identifier

Retain Class

A single element in a RETAIN statement.

Super Classes
Local Features
Name Type and Description
expression optional
Expression A
identifiers list of
Identifier
Used In

RetainStatement Class

A RETAIN statement.

Super Classes
Local Features
Name Type and Description
retains list of
Retain

ReturnStatement Class

A RETURN statement.

Super Classes

SelectClause Class

A single clause in a SELECT statement.

Super Classes
Local Features
Name Type and Description
condition optional
Expression A
statement optional
DataStatement A
Used In

SelectStatement Class

A SELECT statement.

Super Classes
Local Features
Name Type and Description
clauses list of
SelectClause

SetStatement Class

A SET statement. [https://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a000173782.htm]

Super Classes
Local Features
Name Type and Description
options list of
SetOption A
setBuilder optional
DoStatement
sets list of
SetSpecification

StatementError Class

An invalid or otherwise unsupported data step statement.

Super Classes
Local Features
Name Type and Description
message String

StopStatement Class

Super Classes

UpdateStatement Class

An UPDATE statement in a DATA STEP.

Super Classes
Local Features
Name Type and Description
by optional
ByStatement
master optional
DatasetSpec
transaction optional
DatasetSpec

Classes

ColumnInput Class

Super Classes
Local Features
Name Type and Description
character Boolean
end Integer?
start Integer
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
suppress Boolean
suppressNoError Boolean
variable optional
Identifier

ColumnPointerControl Class

Super Classes
Local Features
Name Type and Description
by optional
Expression A
to optional
Expression A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

DataStep Class

A DATA step.

Local Features
Name Type and Description
datasets list of
DatasetSpec
options list of
Option
statements list of
Statement
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

EndSetOption Class

An END option in a SET statement.

Super Classes
Local Features
Name Type and Description
end optional
Identifier
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

FormatSpec Class

A format specification.

Super Classes
Local Features
Name Type and Description
format String
names list of
FormatVariableRange
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

FormatVariableRange Class

Super Classes
Local Features
Name Type and Description
toVariable optional
Identifier
variable optional
Identifier
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

FormattedInput Class

Super Classes
Local Features
Name Type and Description
informat String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
suppress Boolean
suppressNoError Boolean
variable optional
Identifier

InputSpecification Class (Abstract) A

Super Classes
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Subclasses
Used In

InputVariableSpecification Class (Abstract) A

Super Classes
Local Features
Name Type and Description
suppress Boolean
suppressNoError Boolean
variable optional
Identifier
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Subclasses

KeySetOption Class

A KEY option in a SET statement.

Super Classes
Local Features
Name Type and Description
key optional
Identifier
unique Boolean
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

LengthSpec Class

A length specification as part of a LENGTH statement.

Local Features
Name Type and Description
character Boolean
format String
names List<String>
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

LinePointerControl Class

Super Classes
Local Features
Name Type and Description
next Boolean?
to optional
Expression A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

ListInput Class

Super Classes
Local Features
Name Type and Description
blanks Boolean
character Boolean
informat String?
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
suppress Boolean
suppressNoError Boolean
variable optional
Identifier

NamedInput Class

Super Classes
Local Features
Name Type and Description
character Boolean
informat String?
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
suppress Boolean
suppressNoError Boolean
variable optional
Identifier

Option Class

A DATA step option.

Local Features
Name Type and Description
name optional
Identifier
value String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

PointerControl Class (Abstract) A

Super Classes
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Subclasses
Used In

PrefixSetSpecification Class

An clause in a SET statement with a prefix.

Super Classes
Local Features
Name Type and Description
prefix optional
DatasetSpec
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

PutSpecification Class

An individual clause in a PUT statement. See https://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a000161869.htm

Local Features
Name Type and Description
named optional
Identifier
pointerControl optional
PointerControl A
string String?
times Integer?
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

SetOption Class (Abstract) A

A SET statement option.

Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Subclasses
Used In

SetSpecification Class

An individual clause in a SET statement.

Local Features
Name Type and Description
name optional
DatasetSpec
value optional
DatasetSpec
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

SingleAttribStatement Class

A portion of an ATTRIB statement which is related to a single identifier.

Local Features
Name Type and Description
format String?
identifier optional
Identifier
informat String?
label String?
length String?
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

Statements

AbortStatement Class

A %ABORT statement.

Super Classes
Local Features
Name Type and Description
returnValue optional
Expression A
type String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

Comment Class

A commented-out macro statement.

Super Classes
Local Features
Name Type and Description
text String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

DoStatement Class

A %DO statement.

Super Classes
Local Features
Name Type and Description
body List<ASTNode>
iterateFrom optional
Expression A
iterateTo optional
Expression A
iterationVariable String?
untilCondition optional
Expression A
whileCondition optional
Expression A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

ExpressionStatement Class

A statement consisting of a single expression (e.g., a function call whose return value is ignored).

Super Classes
Local Features
Name Type and Description
expression optional
Expression A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

GlobalStatement Class

A %GLOBAL statement.

Super Classes
Local Features
Name Type and Description
variables list of
Identifier
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

GotoStatement Class

A %GOTO statement.

Super Classes
Local Features
Name Type and Description
label String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

IfStatement Class

An %IF statement.

Super Classes
Local Features
Name Type and Description
alternative List<ASTNode>
condition optional
Expression A
consequence List<ASTNode>
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

IncludeStatement Class

A %INCLUDE statement.

Super Classes
Local Features
Name Type and Description
resource optional
Expression A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

LabelStatement Class

A %LABEL statement.

Super Classes
Local Features
Name Type and Description
label String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

LocalStatement Class

A %LOCAL statement.

Super Classes
Local Features
Name Type and Description
variables list of
Identifier
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

PlainTextStatement Class

Macro text that couldn't be parsed as valid SAS or SQL code.

Super Classes
Local Features
Name Type and Description
text String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

PutStatement Class

A %PUT statement.

Super Classes
Local Features
Name Type and Description
expression optional
Expression A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

Statement Class (Abstract) A

StatementError Class

An invalid or otherwise unsupported macro statement.

Super Classes
Local Features
Name Type and Description
message String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

VariableDeclaration Class

A macro variable declaration (`%LET foo = ...`).

Super Classes
Local Features
Name Type and Description
expression optional
Expression A
name String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

Expressions

ConstantTextExpression Class

Literal text used as an expression.

Super Classes
Local Features
Name Type and Description
text String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

DateConstantExpression Class

A date constant.

Super Classes
Local Features
Name Type and Description
constant LocalDate?
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

DateTimeConstantExpression Class

A date and time constant.

Super Classes
Local Features
Name Type and Description
constant LocalDateTime?
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

ExpressionError Class

An invalid or otherwise unsupported macro expression.

Super Classes
Local Features
Name Type and Description
message String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

FloatConstantExpression Class

A floating-point literal in a macro.

Super Classes
Local Features
Name Type and Description
constant EBigDecimal
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

InformatExpression Class

An informat expression.

Super Classes
Local Features
Name Type and Description
format String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

IntConstantExpression Class

An integer literal in a macro.

Super Classes
Local Features
Name Type and Description
constant EBigInteger
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

MacroFunctionCallExpression Class

An invocation of a macro function.

Super Classes
Local Features
Name Type and Description
arguments list of
MacroArgument
macroName String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

OperatorApplicationExpression Class

Any kind of operator application like `1 + 2 + 3`. If there's only one argument, it's a unary operator application, such as `-&x.` or `not %foo()`. If the operator is `in` or `not in`, then the object represents the expression ` in/not in ( ... )`.

Super Classes
Local Features
Name Type and Description
arguments list of
Expression A
operator String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

SASString Class (Abstract) A

Super Classes
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

StringConstantExpression Class

A string literal in a macro.

Super Classes
Local Features
Name Type and Description
constant String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

SystemFunctionCallExpression Class

An invocation of a system function.

Super Classes
Local Features
Name Type and Description
arguments list of
MacroArgument
functionName String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

TextConcatExpression Class

A text concatenation expression.

Super Classes
Local Features
Name Type and Description
expressions list of
Expression A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

UnparsableDateConstantExpression Class

A date constant that could not be parsed into a [LocalDate] .

Super Classes
Local Features
Name Type and Description
constant String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

UnparsableDateTimeConstantExpression Class

A date and time constant that could not be parsed into a [LocalDateTime] .

Super Classes
Local Features
Name Type and Description
constant String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

VariableExpression Class

An expression whose value is the value of the given macro variable.

Super Classes
Local Features
Name Type and Description
variable String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

Classes

MacroArgument Class

A macro argument, either in a [macro definition] [MacroDefinition] or in a [macro function call] [MacroFunctionCallExpression] .

Super Classes
Local Features
Name Type and Description
name String?
value optional
Expression A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

MacroDefinition Class

A macro function definition.

Local Features
Name Type and Description
arguments list of
MacroArgument
body List<ASTNode>
name String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

Statements

ByStatement Class

BY statement, that can appear in various PROCedures and in the DATA step.

Super Classes
Local Features
Name Type and Description
specifications list of
BySpecification
Used In

ClassStatement Class

Super Classes

Comment Class

A commented-out statement.

Super Classes
Local Features
Name Type and Description
text String

DatasetsChangeStatement Class

A CHANGE statement in a PROC DATASETS section.

Super Classes
Local Features
Name Type and Description
from optional
Identifier
to optional
Identifier

DatasetsCopyStatement Class

A COPY statement in a PROC DATASETS section.

Super Classes
Local Features
Name Type and Description
in String?
options list of
CopyOption
out String

DatasetsCreateIndexStatement Class

A CREATE INDEX statement in a PROC DATASETS section.

Super Classes
Local Features
Name Type and Description
name String

DatasetsDeleteStatement Class

A DELETE statement in a PROC DATASETS section.

Super Classes
Local Features
Name Type and Description
dataset list of
DatasetSpec

DatasetsModifyStatement Class

A MODIFY statement in a PROC DATASETS section.

Super Classes
Local Features
Name Type and Description
name String

DatasetsRenameStatement Class

A RENAME statement in a PROC DATASETS section.

Super Classes
Local Features
Name Type and Description
from optional
Identifier
to optional
Identifier

DatasetsSelectStatement Class

A SELECT statement in a PROC DATASETS section.

Super Classes
Local Features
Name Type and Description
name String

EmptyStatement Class

An empty statement, i.e. a lone semicolon.

Super Classes

FilenameStatement Class

A FILENAME statement. See https://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a000211297.htm and https://documentation.sas.com/doc/en/pgmsascdc/9.4_3.5/hosto390/n06xm17q99z0x6n1tskpswfrgp27.htm

Super Classes
Local Features
Name Type and Description
accessMethod String?
externalFile list of
Expression A
fileref optional
Identifier
options list of
FileOption

IdStatement Class

Super Classes

LibraryNameStatement Class

A LIBNAME statement.

Super Classes
Local Features
Name Type and Description
all Boolean
clear Boolean
library optional
Identifier
list Boolean
options list of
Option
specifications list of
LibrarySpecification

ODSStatement Class

Super Classes

Option Class

A single option in an [OPTION statement] [OptionsStatement] .

Super Classes
Local Features
Name Type and Description
name optional
Identifier
values list of
Expression A
Used In

OptionsStatement Class

An OPTION statement.

Super Classes
Local Features
Name Type and Description
options list of
Option

PerformanceOption Class

An option for a [PERFORMANCE statement] [PerformanceStatement.options] .

Super Classes
Local Features
Name Type and Description
name String
value Integer
Used In

PerformanceStatement Class

PERFORMANCE statement, only valid in PROC TMODEL. http://documentation.sas.com/doc/it/pgmsascdc/9.4_3.4/etsug/etsug_tmodel_syntax08.htm

Super Classes
Local Features
Name Type and Description
options list of
PerformanceOption

QuitStatement Class

A QUIT statement.

Super Classes

RunStatement Class

A RUN statement.

Super Classes

TitleStatement Class

A TITLE statement. http://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a000220968.htm

Super Classes
Local Features
Name Type and Description
expression optional
Expression A
line Integer

TransposeIdStatement Class

An ID statement for [PROC TRANSPOSE] [TransposeProcedure.statements] .

Super Classes
Local Features
Name Type and Description
id optional
Identifier

VarStatement Class

Super Classes

WhereStatement Class

A WHERE statement.

Super Classes
Local Features
Name Type and Description
expression optional
Expression A

Expressions

ArrayAccessExpression Class

An expression representing the access of an array element by index.

Super Classes
Local Features
Name Type and Description
array optional
Expression A
subscript optional
Expression A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

DateConstantExpression Class

A date constant.

Super Classes
Local Features
Name Type and Description
constant LocalDate?
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

DateTimeConstantExpression Class

A date and time constant.

Super Classes
Local Features
Name Type and Description
constant LocalDateTime?
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

DotExpression Class

A dot (.) expression.

Super Classes
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

ExpressionError Class

A node representing a malformed expression.

Super Classes
Local Features
Name Type and Description
message String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

FloatConstantExpression Class

A float literal.

Super Classes
Local Features
Name Type and Description
constant EBigDecimal
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

FunctionCallExpression Class

A function call.

Super Classes
Local Features
Name Type and Description
arguments list of
Argument
function String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

InformatExpression Class

An informat expression.

Super Classes
Local Features
Name Type and Description
format String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

IntConstantExpression Class

An integer literal.

Super Classes
Local Features
Name Type and Description
constant EBigInteger
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

MacroExpression Class

An expression resulting from the expansion of a macro.

Super Classes
Local Features
Name Type and Description
constant ASTNode?
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

MethodCallExpression Class

A method call (e.g. `foo.bar()`).

Super Classes
Local Features
Name Type and Description
arguments list of
Argument
method String
receiver String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

OfExpression Class

An "of" expression.

Super Classes
Local Features
Name Type and Description
variables optional
VariableList A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

OperatorApplicationExpression Class

An operator application such as a sum, subtraction, multiplication, ...

Super Classes
Local Features
Name Type and Description
operands list of
Expression A
operator String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

SASString Class (Abstract) A

Super Classes
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

SetMembershipCheckExpression Class

An expression representing a membership test against a set (e.g. `x in (1, 2, 3)`). Can also be negated, as in "not in".

Super Classes
Local Features
Name Type and Description
element optional
Expression A
negated Boolean
set optional
VariableExpression
values list of
Expression A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

StringConstantExpression Class

A string literal.

Super Classes
Local Features
Name Type and Description
constant String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

UnparsableDateConstantExpression Class

A date constant that we could not parse into a LocalDate object.

Super Classes
Local Features
Name Type and Description
constant String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

UnparsableDateTimeConstantExpression Class

A date and time constant that we could not parse into a LocalDateTime object.

Super Classes
Local Features
Name Type and Description
constant String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

VariableExpression Class

An expression whose value is the value of a variable.

Super Classes
Local Features
Name Type and Description
variable String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

Classes

AppendProcedure Class

PROC APPEND.

Local Features
Name Type and Description
options list of
AppendProcedureOption
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

AppendProcedureOption Class

An option for [PROC APPEND] [AppendProcedure.options] .

Local Features
Name Type and Description
name optional
Identifier
value optional
DatasetSpec
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

Argument Class

A function argument consisting of a value and an optional name.

Local Features
Name Type and Description
name optional
Identifier
value optional
Expression A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

BySpecification Class

A single element in a [BY statement] [ByStatement] .

Local Features
Name Type and Description
descending Boolean
identifier optional
Identifier
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

CompareProcedure Class

PROC COMPARE.

Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

ComputedDatasetOption Class

A dataset option or options computed by a macro.

Super Classes
Local Features
Name Type and Description
computedWith optional
Statement A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

ContentsProcedure Class

PROC CONTENTS.

Local Features
Name Type and Description
options list of
ContentsProcedureOption
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

ContentsProcedureOption Class

An option for [PROC CONTENTS] [ContentsProcedure.options] .

Local Features
Name Type and Description
name optional
Identifier
value optional
DatasetSpec
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

CopyOption Class

An option in a COPY statement.

Local Features
Name Type and Description
name String
value String?
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

DatasetOption Class (Abstract) A

A dataset option.

Super Classes
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Subclasses
Used In

DatasetProcedureOption Class (Abstract) A

A PROC DATASETS option.

Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Subclasses
Used In

DatasetProcedureOptionFlag Class

A PROC DATASETS option which is a boolean flag (present = true, absent = false).

Super Classes
Local Features
Name Type and Description
name String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

DatasetProcedureOptionGennum Class

A PROC DATASETS GENNUM option.

Super Classes
Local Features
Name Type and Description
value String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

DatasetProcedureOptionSwitch Class

A PROC DATASETS option which can have a value (foo=bar).

Super Classes
Local Features
Name Type and Description
name String
value String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

DatasetsProcedure Class

A PROC DATASETS section.

Local Features
Name Type and Description
options list of
DatasetProcedureOption A
statements list of
DatasetsStatement A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

DeleteProcedure Class

PROC DELETE.

Local Features
Name Type and Description
dataFile optional
DatasetSpec
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

DropDatasetOption Class

A DROP dataset option.

Super Classes
Local Features
Name Type and Description
variables optional
VariableList A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

ExpandConvertStatement Class

A CONVERT statement for [PROC EXPAND] [ExpandProcedure.statements] .

Local Features
Name Type and Description
newName optional
Identifier
variable optional
Identifier
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

ExpandIdStatement Class

An ID statement for [PROC EXPAND] [ExpandProcedure.statements] .

Local Features
Name Type and Description
name String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

ExpandProcedure Class

PROC EXPAND.

Local Features
Name Type and Description
options list of
ExpandProcedureOption
statements List<ASTNode>
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

ExpandProcedureOption Class

An option for [PROC EXPAND] [ExpandProcedure.options] .

Local Features
Name Type and Description
name optional
Identifier
value optional
Expression A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

ExportProcedure Class

PROC EXPORT.

Local Features
Name Type and Description
dataset optional
DatasetSpec
dbms optional
Identifier
label Boolean
outFile optional
Expression A
outTable optional
Expression A
replace Boolean
statements list of
ExportStatement
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

ExportStatement Class

An export statement for [PROC EXPORT] [ExportProcedure.statements] .

Local Features
Name Type and Description
name optional
Identifier
value optional
Expression A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

ExtendObsCounterDatasetOption Class

An EXTENDOBSCOUNTER dataset option.

Super Classes
Local Features
Name Type and Description
extend Boolean
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

FileOption Class

A file option.

Local Features
Name Type and Description
expression optional
Expression A
identifier optional
Identifier
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

FormatProcedure Class

PROC FORMAT.

Local Features
Name Type and Description
options list of
FormatProcedureOption
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

FormatProcedureOption Class

An option for [PROC FORMAT] [FormatProcedure.options] .

Local Features
Name Type and Description
name optional
Identifier
value optional
Expression A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

FreqProcedure Class

PROC FREQ.

Local Features
Name Type and Description
options list of
FreqProcedureOption A
statements List<ASTNode>
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

FreqProcedureOption Class (Abstract) A

An option for [PROC FREQ] [FreqProcedure.options] .

Super Classes
Local Features
Name Type and Description
name optional
Identifier
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Subclasses
Used In

FreqProcedureOptionDataset Class

A dataset option for [PROC FREQ] [FreqProcedure.options] .

Super Classes
Local Features
Name Type and Description
value optional
DatasetSpec
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
name optional
Identifier

FreqProcedureOptionVariable Class

A variable option for [PROC FREQ] [FreqProcedure.options] .

Super Classes
Local Features
Name Type and Description
variable optional
Identifier
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
name optional
Identifier

FreqProcedureTableOption Class

An option in a TABLE statement for [PROC FREQ] [FreqProcedure.statements] .

Local Features
Name Type and Description
name optional
Identifier
value optional
DatasetSpec
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

FreqProcedureTableStatement Class

A TABLE statement for [PROC FREQ] [FreqProcedure.statements] .

Local Features
Name Type and Description
options list of
FreqProcedureTableOption
table optional
Identifier
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

FreqProcedureTablesStatement Class

A TABLES statement for [PROC FREQ] [FreqProcedure.statements] .

Local Features
Name Type and Description
options list of
Identifier
tables list of
Identifier
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

GenNumDatasetOption Class

A GENNUM dataset option.

Super Classes
Local Features
Name Type and Description
value String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

GenericDatasetOption Class

Generic dataset option that's either a flag (value == null) or a parameter (value != null).

Super Classes
Local Features
Name Type and Description
name String
value String?
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

HttpOption Class

An option for [PROC IMPORT] [ImportProcedure.options] .

Local Features
Name Type and Description
name optional
Identifier
value optional
Expression A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

HttpProcedure Class

PROC HTTP.

Local Features
Name Type and Description
options list of
HttpOption
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

ImportOption Class

An option for [PROC IMPORT] [ImportProcedure.options] .

Local Features
Name Type and Description
name optional
Identifier
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Subclasses
Used In

ImportOptionDataset Class

A dataset option for [PROC IMPORT] [ImportProcedure.options] .

Super Classes
Local Features
Name Type and Description
dataset optional
DatasetSpec
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
name optional
Identifier

ImportOptionString Class

A string option for [PROC IMPORT] [ImportProcedure.options] .

Super Classes
Local Features
Name Type and Description
value optional
SASString A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
name optional
Identifier

ImportProcedure Class

PROC IMPORT.

Local Features
Name Type and Description
options list of
ImportOption
statements list of
ImportStatement
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

ImportStatement Class

A statement for [PROC IMPORT] [ImportProcedure.statements] .

Local Features
Name Type and Description
name optional
Identifier
value ASTNode?
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

InDatasetOption Class

An IN dataset option.

Super Classes
Local Features
Name Type and Description
variables optional
VariableList A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

IndexDatasetOption Class

An INDEX dataset option, see https://support.sas.com/documentation/cdl/en/lrdict/64316/HTML/default/viewer.htm#a000131138.htm.

Super Classes
Local Features
Name Type and Description
name String?
variables list of
Identifier
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

KeepDatasetOption Class

A KEEP dataset option.

Super Classes
Local Features
Name Type and Description
variables optional
VariableList A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

LabelDatasetOption Class

A LABEL dataset option.

Super Classes
Local Features
Name Type and Description
label String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

LibrarySpecification Class

A single library specification in a [LIBNAME statement] [LibraryNameStatement] .

Local Features
Name Type and Description
name optional
SASString A
reference optional
Identifier
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

MeansProcedure Class

PROC MEANS.

Local Features
Name Type and Description
statements list of
Statement
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

ModelDataOption Class

A dataset option for [PROC MODEL] [ModelProcedure.options] and [PROC TMODEL] [TModelProcedure.options] .

Super Classes
Local Features
Name Type and Description
datasetName String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

ModelNoPrintOption Class

A NOPRINT option for [PROC MODEL] [ModelProcedure.options] and [PROC TMODEL] [TModelProcedure.options] .

Super Classes
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

ModelOption Class (Abstract) A

An option for [PROC MODEL] [ModelProcedure.options] and [PROC TMODEL] [TModelProcedure.options] .

Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Subclasses
Used In

ModelProcedure Class

PROC MODEL.

Local Features
Name Type and Description
options list of
ModelOption A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

PrintToProcedure Class

PROC PRINTTO.

Local Features
Name Type and Description
options list of
PrintToProcedureOption A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

PrintToProcedureOption Class (Abstract) A

An option for [PROC PRINTTO] [PrintToProcedure.options] .

Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Subclasses
Used In

PrintToProcedureOptionFlag Class

An option for [PROC PRINTTO] [PrintToProcedure.options] that can only be present or absent.

Super Classes
Local Features
Name Type and Description
name String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

PrintToProcedureOptionSwitch Class

An option for [PROC PRINTTO] [PrintToProcedure.options] that has an associated value.

Super Classes
Local Features
Name Type and Description
name String
stringValue String?
variableValue optional
Identifier
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

Rename Class

A single rename specification in a RENAME dataset option.

Local Features
Name Type and Description
from String
to String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

RenameDatasetOption Class

A RENAME dataset option.

Super Classes
Local Features
Name Type and Description
renames list of
Rename
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

SGPlotProcedure Class

PROC SGPLOT.

Local Features
Name Type and Description
statements List<ASTNode>
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

SortProcedure Class

PROC SORT.

Local Features
Name Type and Description
options list of
SortProcedureOption A
statements List<ASTNode>
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

SortProcedureDataOption Class

A DATA option for [PROC SORT] [SortProcedure.options] .

Super Classes
Local Features
Name Type and Description
dataset optional
DatasetSpec
datasetFile String?
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

SortProcedureOption Class (Abstract) A

An option for [PROC SORT] [SortProcedure.options] .

Super Classes
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Subclasses
Used In

SortProcedureOptionFlag Class

An option for [PROC SORT] [SortProcedure.options] that can only be present or absent.

Super Classes
Local Features
Name Type and Description
name String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

SortProcedureOptionSwitch Class

An option for [PROC SORT] [SortProcedure.options] that has an associated value.

Super Classes
Local Features
Name Type and Description
name String
stringValue String?
value optional
DatasetSpec
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

SortProcedureOutOption Class

An OUT option for [PROC SORT] [SortProcedure.options] .

Super Classes
Local Features
Name Type and Description
dataset optional
DatasetSpec
datasetFile String?
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

SortProcedureSizeOption Class

A SORTSIZE option for [PROC SORT] [SortProcedure.options] .

Super Classes
Local Features
Name Type and Description
memorySpec String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

SummaryProcedure Class

PROC SUMMARY.

Local Features
Name Type and Description
statements list of
Statement
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

TModelProcedure Class

PROC TMODEL.

Local Features
Name Type and Description
options list of
ModelOption A
statements List<ASTNode>
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

TimeseriesIdStatement Class

An ID statement for [PROC TIMESERIES] [TimeseriesProcedure.statements] .

Local Features
Name Type and Description
id optional
Identifier
interval optional
Identifier
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

TimeseriesProcedure Class

PROC TIMESERIES.

Local Features
Name Type and Description
options list of
TimeseriesProcedureOption A
statements List<ASTNode>
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

TimeseriesProcedureOption Class (Abstract) A

An option for [PROC TIMESERIES] [TimeseriesProcedure.options] .

Local Features
Name Type and Description
name optional
Identifier
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Subclasses
Used In

TimeseriesProcedureOptionDataset Class

A dataset option for [PROC TIMESERIES] [TimeseriesProcedure.options] .

Super Classes
Local Features
Name Type and Description
value optional
DatasetSpec
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
name optional
Identifier

TimeseriesProcedureOptionValues Class

A values option for [PROC TIMESERIES] [TimeseriesProcedure.options] .

Super Classes
Local Features
Name Type and Description
values list of
Identifier
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
name optional
Identifier

TimeseriesVarOption Class

An option for the [VAR statement] [TimeseriesVarStatement] for [PROC TIMESERIES] [TimeseriesProcedure.statements] .

Local Features
Name Type and Description
name optional
Identifier
value optional
Identifier
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

TimeseriesVarStatement Class

A VAR statement for [PROC TIMESERIES] [TimeseriesProcedure.statements] .

Local Features
Name Type and Description
cross Boolean
options list of
TimeseriesVarOption
variables list of
Identifier
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

TransposeProcedure Class

PROC TRANSPOSE.

Local Features
Name Type and Description
options list of
TransposeProcedureOption A
statements List<ASTNode>
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

TransposeProcedureOption Class (Abstract) A

An option for [PROC TRANSPOSE] [TransposeProcedure.options] .

Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Subclasses
Used In

TransposeProcedureOptionDataset Class

A dataset option for [PROC TRANSPOSE] [TransposeProcedure.options] .

Super Classes
Local Features
Name Type and Description
name optional
Identifier
value optional
DatasetSpec
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

TransposeProcedureOptionFlag Class

An option for [PROC TRANSPOSE] [TransposeProcedure.options] that can only be present or absent.

Super Classes
Local Features
Name Type and Description
name optional
Identifier
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

TransposeProcedureOptionString Class

A string option for [PROC TRANSPOSE] [TransposeProcedure.options] .

Super Classes
Local Features
Name Type and Description
name optional
Identifier
value String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

Variable Class

A single variable.

Super Classes
Local Features
Name Type and Description
name optional
Identifier
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

VariableList Class (Abstract) A

A specification of one of more variables, such as in an ["of" expression] [OfExpression] . This is an abstract class; see its subclasses for possible implementations.

Super Classes
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Subclasses
Used In

VariableRangeByName Class

A range of variables by position in the dataset, e.g. name--address.

Super Classes
Local Features
Name Type and Description
from optional
Identifier
to optional
Identifier
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

VariableRangeByNumber Class

A range of numbered variables, e.g. v1-v9.

Super Classes
Local Features
Name Type and Description
from optional
Identifier
to optional
Identifier
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

VariableRangeWithPrefix Class

Variables having the same prefix, e.g., `of dateof:`.

Super Classes
Local Features
Name Type and Description
prefix optional
Identifier
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

Variables Class

Multiple variable lists, as in, `of a, b--e, f1-f5`.

Super Classes
Local Features
Name Type and Description
variables list of
VariableList A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

WhereDatasetOption Class

A WHERE dataset option.

Super Classes
Local Features
Name Type and Description
condition optional
Expression A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

Statements

AlterTableStatement Class (Abstract) A

A SQL ALTER TABLE statement.

Super Classes
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

AnalyzeStatement Class

A SQL ANALYZE statement.

Super Classes
Local Features
Name Type and Description
statisticClause optional
StatisticClause A
table optional
TableRef
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

CommentStatement Class

A SQL COMMENT statement.

Super Classes
Local Features
Name Type and Description
comment String
ref optional
Expression A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

CommitStatement Class

A SQL COMMIT statement.

Super Classes
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

ConnectStatement Class

A connect statement.

Super Classes
Local Features
Name Type and Description
connection optional
Identifier
kind optional
Identifier
options list of
ConnectOption
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

CreateTableStatement Class

A SQL CREATE TABLE statement.

Super Classes
Local Features
Name Type and Description
columnDefinitions list of
ColumnDefinition
constraints list of
Constraint A
ifNotExists Boolean
on String?
query optional
Query
table optional
TableRef
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

CreateViewStatement Class

A SQL CREATE VIEW statement.

Super Classes
Local Features
Name Type and Description
query optional
Query
view optional
TableRef
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

DeleteStatement Class

A SQL DELETE statement.

Super Classes
Local Features
Name Type and Description
condition optional
Expression A
hints List<String>
table optional
TableRef
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

DescribeStatement Class

A SQL DESCRIBE statement.

Super Classes
Local Features
Name Type and Description
table optional
TableRef
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

DisconnectStatement Class

A disconnect statement.

Super Classes
Local Features
Name Type and Description
connection String?
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

DropStatement Class

A SQL DROP TABLE statement.

Super Classes
Local Features
Name Type and Description
table optional
TableRef
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

EmptyStatement Class

An empty statement, i.e. a lone semicolon.

Super Classes
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

ExecuteStatement Class

An execute statement.

Super Classes
Local Features
Name Type and Description
by String?
nativeSQL optional
NativeSQL
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

InsertStatement Class

A SQL INSERT statement.

Super Classes
Local Features
Name Type and Description
columns list of
ColumnRef
hints List<String>
query optional
Query
table optional
TableRef
values optional
ValuesExpression
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

MacroStatement Class

A macro statement inside PROC SQL.

Super Classes
Local Features
Name Type and Description
statement ASTNode?
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

MergeStatement Class

A MERGE statement (MS SQL Server only).

Super Classes
Local Features
Name Type and Description
hints List<String>
into optional
TableRelation
on optional
Expression A
using optional
Relation A
whenMatched optional
Statement A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

Query Class

A SQL SELECT query.

Super Classes
Local Features
Name Type and Description
condition optional
Expression A
distinct Boolean
groupings list of
Grouping A
havingCondition optional
Expression A
orderings list of
Ordering
projections list of
Projection
relations list of
Relation A
resultsStore list of
QueryResultsStore
union optional
Query
unionAll Boolean
unique Boolean
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

TruncateStatement Class

A SQL TRUNCATE TABLE statement.

Super Classes
Local Features
Name Type and Description
table optional
TableRef
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

UpdateStatement Class

A SQL UPDATE statement.

Super Classes
Local Features
Name Type and Description
condition optional
Expression A
table optional
TableRelation
updates list of
Update
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

Expressions

AllColumnsExpression Class

"All columns", that is, `*` as in `select * from customers`

Super Classes
Local Features
Name Type and Description
table optional
TableRef

CaseExpression Class

A case...when... expression.

Super Classes
Local Features
Name Type and Description
conditions list of
Expression A
elseResult optional
Expression A
expression optional
Expression A
results list of
Expression A

CastExpression Class

A cast expression, such as `CAST (a + b) AS FLOAT`

Super Classes
Local Features
Name Type and Description
expression optional
Expression A
type optional
TypeSpec

ColumnExpression Class

An expression referring to a column, like `a.b` in `a.b + 1`

Super Classes
Local Features
Name Type and Description
column optional
ColumnRef

DateConstantExpression Class

A literal date value

Super Classes
Local Features
Name Type and Description
constant LocalDate?

DateTimeConstantExpression Class

A literal datetime value

Super Classes
Local Features
Name Type and Description
constant LocalDateTime?

DotExpression Class

The dot, `.`

Super Classes

ExistsExpression Class

(not) exists (select ...)

Super Classes
Local Features
Name Type and Description
negated Boolean
query optional
Query

FloatConstantExpression Class

A literal floating-point value

Super Classes
Local Features
Name Type and Description
constant EBigDecimal

FunctionCallExpression Class

A function call such as `MIN(foo)`.

Super Classes
Local Features
Name Type and Description
arguments list of
Expression A
function String
Subclasses

InformatExpression Class

An informat expression.

Super Classes
Local Features
Name Type and Description
format String

IntConstantExpression Class

A literal integer value

Super Classes
Local Features
Name Type and Description
constant EBigInteger

NoJoinCondition Class

Super Classes

NullConstantExpression Class

A literal NULL

Super Classes

OperatorApplicationExpression Class

Any kind of operator application like `1 + 2 + 3`

Super Classes
Local Features
Name Type and Description
arguments list of
Expression A
op String

QueryExpression Class

Select query expression, as in `where foo = (select foo from bar)`

Super Classes
Local Features
Name Type and Description
query optional
Query

RowExpression Class

A single row in a values expression. see ValuesExpression

Super Classes
Local Features
Name Type and Description
values list of
Expression A
Used In

SetExpression Class

Set membership expression such as `x IN ...`

Super Classes
Local Features
Name Type and Description
element optional
Expression A
op String
query optional
Query
values list of
Expression A

StringConstantExpression Class

A literal string

Super Classes
Local Features
Name Type and Description
constant String

TrimFunctionCallExpression Class

A call to the TRIM function using specialized syntax, such as `TRIM(LEADING FROM foo)`.

Super Classes
Local Features
Name Type and Description
leading Boolean
trailing Boolean
Inherited Features
Name Type and Description
arguments list of
Expression A
function String

UnparsableDateConstantExpression Class

A date value that could not be parsed

Super Classes
Local Features
Name Type and Description
constant String

UnparsableDateTimeConstantExpression Class

A datetime value that could not be parsed

Super Classes
Local Features
Name Type and Description
constant String

ValuesExpression Class

Values expression (`values (a, b, c, ...)`). In general, it can contain multiple rows, although the typical case is with a single row.

Super Classes
Local Features
Name Type and Description
rows list of
RowExpression
Used In

Classes

ColumnDefinition Class

The definition of a single column in a CREATE TABLE statement.

Local Features
Name Type and Description
constraints list of
Constraint A
name String
type optional
TypeSpec
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

ColumnRef Class

A (possibly scoped) reference to a column.

Super Classes
Local Features
Name Type and Description
calculated Boolean
column String
table optional
TableRef
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

ConnectOption Class

Local Features
Name Type and Description
name optional
Identifier
value optional
Expression A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

Constraint Class (Abstract) A

A SQL constraint.

Local Features
Name Type and Description
name String?
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Subclasses
Used In

Grouping Class (Abstract) A

Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

IdentityConstraint Class

An identity constraint.

Super Classes
Local Features
Name Type and Description
increment Integer
seed Integer
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
name String?

JoinRelation Class

A join relation, as in `SELECT * FROM foo JOIN bar...`.

Super Classes
Local Features
Name Type and Description
conditions list of
Expression A
joinTypes list of
JoinType E
relations list of
Relation A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

NativeQueryRelation Class

A native subquery relation, as in `SELECT * FROM CONNECTION TO ... (SELECT ...)`.

Super Classes
Local Features
Name Type and Description
alias String?
connection optional
Identifier
query optional
NativeSQL
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

NativeSQL Class

A node representing a native SQL query or statement. Initially, the native SQL is not parsed and is kept as text. By invoking the [attemptParse] method, we can try to interpret it as SQL code. If successful, the parsed SQL will become a child node of this node.

Local Features
Name Type and Description
parsed ASTNode?
text String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

NullabilityConstraint Class

A NULL/NOT NULL constraint.

Super Classes
Local Features
Name Type and Description
nullsAllowed Boolean
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
name String?

Ordering Class

A definition of an ordering in a SQL query, e.g. `FOO ASC` in an `ORDER BY` clause.

Local Features
Name Type and Description
ascending Boolean
column optional
ColumnRef
columnIndex Integer?
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

PrimaryKeyConstraint Class

A primary key constraint.

Super Classes
Local Features
Name Type and Description
columns List<String>
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
name String?

Projection Class

A projection is any expression that can be returned by a SELECT query.

Super Classes
Local Features
Name Type and Description
alias optional
Identifier
expression optional
Expression A
format String?
label String?
length String?
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

QueryRelation Class

A subquery relation, as in `SELECT * FROM (SELECT ...)`.

Super Classes
Local Features
Name Type and Description
alias String?
connection optional
Identifier
query optional
Query
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

QueryResultsStore Class

The target of a SELECT INTO clause.

Local Features
Name Type and Description
separatedBy String?
toVariable String?
variable String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

Relation Class (Abstract) A

A relation is anything that can go in a SELECT FROM clause.

Super Classes
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Subclasses
Used In

RelationError Class

An invalid relation, due to some error in the source code.

Super Classes
Local Features
Name Type and Description
message String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

SchemaRef Class

A (possibly scoped) reference to a schema.

Local Features
Name Type and Description
catalog String?
schema String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

SqlProcedure Class

PROC SQL.

Local Features
Name Type and Description
feedback Boolean
noPrint Boolean
statements list of
Statement A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?

StatisticClause Class (Abstract) A

A STATISTIC clause.

Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

TableRef Class

A (possibly scoped) reference to a table or view.

Super Classes
Local Features
Name Type and Description
schema optional
SchemaRef
table String
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

TableRelation Class

A single table relation, as in `SELECT * FROM foo`.

Super Classes
Local Features
Name Type and Description
alias String?
table optional
TableRef
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

TypeSpec Class

A type specification like `varchar(255 char)`

Local Features
Name Type and Description
name String
precision Integer?
scale Integer?
size Integer?
unit String?
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

UniqueConstraint Class

A UNIQUE constraint.

Super Classes
Local Features
Name Type and Description
columns List<String>
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
name String?

Update Class

The update of a single column as part of a SQL UPDATE statement.

Local Features
Name Type and Description
column optional
ColumnRef
expression optional
Expression A
Inherited Features
Name Type and Description
position Position?
origin Origin?
destination Destination?
Used In

Data Types

JoinType E

Types of SQL join.

Values
  • INNER
  • CROSS
  • OUTER_FULL
  • OUTER_LEFT
  • OUTER_RIGHT