Syntax Explanation
Each page contains both syntax notation and a diagram.
- The non-diagrammed syntax conventions are as follows
- Uppercase syntax words are required BR keywords that may be specified as acceptable abbreviations.
- Although the keywords are uppercase in the diagrams, they may be specified in upper, lower or mixed case.
- Items in [square brackets] are optional.
- [,...] indicates the preceding term can be repeated (comma separated).
- A bar | within a braced group (e.g. {aaa|bbb} )signifies OR, meaning the braces enclose a bar separated list. One of the bar separated terms must be specified.
- Terms in <angle brackets> must be replaced with appropriate items. When not inherently logical i.e. #<file number>, item descriptions are found in subsequent lines.
- Punctuation, other than "{}, [], <> and ...", must be specified - i.e. quotation marks, commas, colons etc.
- Spaces between items mean one or more space is required.
- Additional spaces may be specified ahead of or following commas.
Example:
blue {black|grey|white} red {pink|orange}
Satisfactory outcomes would be:
blue black red pink blue grey red orange blue white red pink etc...
- All program lines require a line number (although it's not included in syntax notation).
Example: Delete Statement
DELETE #<file number>[,REC=<numeric expression>|,KEY=<string expression>][,RESERVE|,RELEASE] : {<error condition> <line ref>,}
numeric expression <number>|<numeric variable>|<numeric internal function>|<numeric user-defined function>|<conditional expression> number <A rational number up to 15 digits long>. See RD in BRConfig.sys. numeric variable <1-30 alphanumeric characters and underscores, the first of which must be a letter (but not FN). They also cannot be reserved words> numeric internal function <An internal function which produces a numeric value> numeric user-defined function <A user defined function that returns a numeric value>
conditional expression <number> <comparison operator> <number> |<numeric expression> <comparison operator> <numeric expression> |<numeric expression> <comparison operator> <numeric expression> {AND|OR} <conditional expression> |<string expression> <comparison operator> <string expression> |<string expression><comparison operator><string expression> {AND|OR} [NOT]<string expression><comparison operator><string expression>}
string expression <string internal function>|<string user-defined function>|<string constant>|<string variable> {<substring operations>} {<concatenation operations>} string internal function <An internal function with a string value> string user-defined function <One with a string value> string constant <"a series of characters enclosed in quotation marks"> string variable <1-30 alphanumeric characters and underscores, the first of which must be a letter (but not FN) which ends in a $. They also cannot be reserved words>