Guidance for defining keywords

This topic contains the rules to follow when defining keywords. Keywords and their values are displayed in the properties view of a deployed object.

A number of objects in WebSphere Message Broker can have additional information added to the object. This information can display information about an object after the object has been deployed. The default information that is displayed is the time the object was deployed and the last time the object was modified.

You can define custom keywords and their values that the Configuration Manager will interpret as additional information to be displayed in the properties view. For example, you can define keywords for "Author" and "Subflow 1 Version":

$MQSI Author=John Smith MQSI$
$MQSI Subflow 1 Version=v1.3.2 MQSI$

The information the Configuration Manager shows is:

Object name  
Deployment Time 28-Aug-2004 15:04
Modification Time 28-Aug-2004 14:27
Version v1.0
Author John Smith
Subflow 1 Version v1.3.2

In this display the version information has also been defined using the Version property of the object. If the version information had not been defined using the property, it would be omitted from this display.

The syntax for defining a keyword and its associated value is:

$MQSI KeywordName = KeywordValue MQSI$

Where:

$MQSI
$MQSI opens the definition. It can be followed by an optional underscore or white space character that is ignored.
KeywordName
The name of the keyword that you are setting the value for. It can be made up of any sequence of alphanumeric characters apart from the equals (=) sign. It can contain white space characters, but any leading or trailing white space characters will be omitted.
=
The equals (=) sign is the delimiter between the keyword and the value that you are setting it to.
KeywordValue
The value that the keyword will be set to. It can be made up of any sequence of alphanumeric characters. It can contain white space characters, but any leading or trailing white space characters will be omitted.
MQSI$
MQSI$ closes the keyword definition.

Examples

Example definitions Interpreted keyword and value Comments

$MQSIAuthor=JohnMQSI$ or
$MQSI Author=John MQSI$ or
$MQSI Author = John MQSI$

Keyword = "Author"
Value = "John"

Each of these is a basic example of what can be set and shows that the leading and trailing white space characters for the name and value parameters is ignored.
$MQSI_Author = John MQSI$

Keyword = "Author"
Value = "John"

The first character after $MQSI can be an underscore character. The underscore character is omitted in the interpreted keyword. If a second underscore character appears, this will form part of the keyword name.
$MQSI Flow designer = John Smith MQSI$

Keyword = "Flow designer"
Value = "John Smith"

White space characters are accepted for each parameter value.
$MQSI bar = MQSI$

Keyword = "bar"
Value = ""

The keyword value can be set to an empty ("") string.
$MQSI_mqsitag=$MQSI$MQSI$

Keyword = "mqsitag"
Value = "$"

This is a poorly formatted definition. After defining the keyword name the parser is looking to find the delimiters that form the boundary of the value to be set. In this case the only character prior to the MQSI$ that closes the definition is a '$' and that is set as the keyword value.
$MQSI=barMQSI$   This pattern is ignored because the keyword name cannot be an empty string.
$MQSItagbarMQSI$   This pattern is ignored because there is not a separator (=) between the keyword name and the keyword value.
Start of change
Use of the following keywords is not recommended:
VERSION
When you use the Message Brokers Toolkit to edit message flows and dictionaries, it is possible to set the Version property in the Properties pane, which you can then view in the Broker Archive file editor. If you were to set this property, a keyword called VERSION is added to the resulting cmf or dictionary file. For this reason, adding $MQSI_VERSION=...MQSI$ to these files is not recommended.
BAR
The BAR keyword is associated with each object automatically when it is deployed and it contains the full path name of the broker archive file that deployed the object.
The values of both keywords are defined programmatically in the class com.ibm.broker.config.proxy.DeployedObject.
End of change
Related concepts
The message model
Message sets overview
Viewing version and keyword information for deployable objects
Related tasks
Developing message models
Working with a message set
Related reference
Message model reference information
Message set properties
Documentation properties for a message set
Message set preferences