... and applied. A grammar is organized in graphs of nodes. Nodes are used for consuming words from the input, for executing jumps to other graphs in the grammar or for creating annotations etc.
GGS has a unique feature: It allows the user to write JavaScript code to be executed for nodes of the grammar. This is useful for checking grammatical agreements but not only. The user can: declare variables (including complex js structures), check for boolean conditions, use variables in annotations etc.