Relationship between the BOM and the Excel file
When you use Excel as the format for your scenarios, columns in the Scenarios and Expected Results sheets of the Excel scenario file are generated by using information contained in the BOM of the rule project.
This section explains how information retrieved from the BOM affects the sheets of the Excel scenarios file.
Scenarios sheet
The columns in the Scenarios sheet are defined by the BOM classes that define instances of input parameters required to run the rulesets.
- Required columns
- These provide the data that is required to run your rulesets. The name of a required column displays in bold in the Excel sheet.
- Optional columns
- These provide additional information on the scenarios. The attributes
of the BOM class define the optional column headings. Each optional
column corresponds to an attribute. If the attribute is verbalized,
the name in the column heading is the verbalization of the attribute.Note: You can use only attributes that are non-static, and writable ("read/write" and "write only") to create optional columns.
A class or an interface in the BOM requires a constructor for it be useful in an Excel scenario file. A constructor of the BOM class defines the required columns. Choose the constructor that you want to use for the Excel scenario file.
A class sometimes has a default constructor that does not have any arguments. When there are several constructors in a class, the class uses the constructor with no arguments by default. If a class has several constructors, you must specify the one you want to use in your tests by selecting the Testing and simulation constructor option in the General Information section of the BOM editor.

The name of the arguments in the constructor define the required column headings.
By default, when you generate a BOM from a XOM, the constructor arguments have generic names such as arg1, arg2, and arg3, as shown in the following figure:

To obtain meaningful column headings, you must rename these arguments. Make sure that the name of the constructor arguments are meaningful to a business user.
You must rename each argument that references an attribute with the name of the attribute. For example, if arg1 sets the value of the attribute firstName, you must rename arg1 to firstName. You must rename other arguments with a name that is meaningful to a business user. The following figure shows an example of arguments that have been renamed:

- If the attribute has an explicit verbalization, the verbalization is used as column heading.
- If the attribute does not have an explicit verbalization, or if the argument is an implementation parameter that does not correspond to an attribute, the column heading uses a default verbalization. For example, if the argument name is dateOfBirth, the default verbalization is date of birth.
Expected Results sheet
The ruleset output parameters and the BOM classes define the columns in the Expected Results sheet of the Excel scenario file.
The attributes of the BOM class define the column headings. Each column corresponds to an attribute.
You must verbalize each attribute because the name in the column heading is the verbalization of the attribute. If the attribute is a collection, you must define the domain.