Weiter oben wurde bereits über die Notwendigkeit des Maskierens einzelner Funktionsaufrufe oder Parameter gesprochen. Die Standard-Syntax von checkerberry db ist auf eine problemlose Verwendbarkeit innerhalb von Java und XML hin ausgelegt. Es ist jedoch auch möglich, die Syntax mit anderen Schlüsselwerten zu belegen.
Beispiel 2.32. Elemente der Syntax
->function(arg1,arg2) ^$( ${parameter} -> functionCallPrefix ( functionCallOpeningBracket , argumentSeparator ) functionCallClosingBracket ^ escapeCharacter ${ parameterPrefix } parameterSuffix
Beispiel 2.32, „Elemente der Syntax“ listet alle syntaktischen Elemente von checkerberry db auf. Die Konfiguration stellt Methoden für die Anpassung der einzelnen Elemente zur Verfügung.
Beispiel 2.33. Rekonfiguration der Syntax
configuration.setEscapeCharacter("?"); configuration.setFunctionCallSyntax("=", "[-", "-]"); configuration.setArgumentSeparator(":"); configuration.setParameterSyntax("(", ")");
Die obigen Anweisungen passen die Syntax derart an, dass
„=save[-Homer:name-]
“ künftig als
Funktionsaufruf mit 2 Parametern und „(name)
“
künftig als Parameter interpretiert wird – es sei denn sie wurden
durch ein „?
“ maskiert.
Auch wenn sich die Syntax auf diese Weise sehr flexibel
konfigurieren lässt, so gibt es doch gewisse Anforderungen an sie. Sie
sollte beispielsweise eindeutig sein und sich effizient parsen lassen.
Um das Konfigurieren dennoch benutzerfreundlich zu gestalten,
überprüft checkerberry db die neue Syntax direkt vor der ersten
Benutzung, weißt gegebenenfalls durch die Fehlermeldung
CB-DB-1027
auf einen Missstand hin und gibt
Informationen, welche 2 syntaktischen Elemente sich nicht miteinander
vertragen. Wenn es keinen expliziten Grund gibt, empfehlen wir die
Syntax unverändert zu lassen.