The language syntax of USRPROPS.TXT is composed of a series of strings. At least one white space character is required to separate strings from each other (white space includes spaces, tabs, commas, carriage returns or line feeds, and some others). When there are several white space characters one after the other, such as a carriage return followed by a tab, they are grouped together and treated as one.
If a string includes one or more embedded spaces, enclose it in double quotes, for example, use "Data Flow", not Data Flow.
Keywords
The USRPROPS.TXT language has a certain set of keywords. Depending on its placement, a keyword is considered to be either a command or an argument. For a list of the keywords that are allowed in USRPROPS.TXT, see Keywords for USRPROPS.
Case‑insensitivity of keywords
Keywords in USRPROPS.TXT are not case‑sensitive, and you can use capital letters, or small letters, or mixed. In this manual and the sample USRPROPS.TXT file, commands and all other keywords are uppercase for readability. Examples of commands are:
BEGIN or Begin or BegiN EDIT or Edit LIST or List or LiST LISTONLY or Listonly or ListOnly RENAME or Rename or ReName, and so on
Commands
Commands are always keywords, and they always start a new phrase. When System Architect parses USRPROPS.TXT, it knows that the first string in the file must be a valid keyword command. Each command must be followed by a known number of argument strings (zero or one or more), and then another command must be found.
Arguments
Strings that follow commands are arguments. Some arguments might be keywords. Other arguments consist of textual strings that provide the names of diagrams, symbols, definitions, properties, list values, labels, help strings, and so on, that are found in subsequent dialogs. Here are some examples:
LIST "Processor Scheduling"
Processor Scheduling is not a keyword. In this expression, it is used as an argument.
DISPLAY { FORMAT KEY LEGEND "Key data" }
KEY is a keyword. In this expression, it is used as an argument.
Case‑sensitivity of arguments that are text strings
Keywords are not case‑sensitive. However, arguments that are text strings are case‑sensitive. For example, using the LIST "Processor Scheduling" argument above, any references to that list in either SAPROPS.CFG or USRPROPS.TXT must be spelled exactly the same way, with the same case‑sensitivity. For example, if you specify the following list:
LIST "Processor Scheduling" { VALUE "preemptive" VALUE "nonpreemptive" }
Then a valid reference to that list must have the same exact spelling:
DEFINITION "Hardware Processor" PROPERTY "Scheduling" { EDIT text LIST "Processor Scheduling" LENGTH 20 DISPLAY { LEGEND "Sched" } }
However, the following syntax causes an error that says, “List “PROCESSOR SCHEDULING” not Found.”
DEFINITION "Hardware Processor" PROPERTY "Scheduling" { EDIT text LIST "PROCESSOR SCHEDULING" LENGTH 20 DISPLAY { LEGEND "Sched" } }
Similarly, any properties referenced in reports must use the spelling and case of the entry in SAPROPS.CFG and/or USRPROPS.TXT file.