Validate Where Rule

Note: This function can only be used with the EDMmodelChecker license key fully installed.
Menu path: Data>Validate>Where rule
This command invokes the EDMmodelChecker to validate a specified instance against a specified WHERE rule (local rule).
The actual instance to validate can be specified by its unique numeric instanceID or by a query.
The validation result report will be written to the specified diagnostic file or to the EDMsupervisor output window when no diagnostic file is specified.
Optionally the validation process can be supplied with arguments, hence the validation process can be parameterized.
The interactive EDMdebugger and the EDMsupervisor expressions logging facility can be used for debugging and testing the actual rule as well as finding the reason for the rule being violated.
Arguments:

instanceID or query?

Specify one of the following:
instanceID: The instance to validate will be specified by its instanceID number.
query: The instance to validate will be specified by a query.
When activating the Select button, the two legal alternatives instanceID and query are displayed in the related selection list.

InstanceId:

Specify an unsigned integer value denoting the EDMdatabase unique instanceID of the instance to validate. This argument is only effective when the <instanceID or query?> argument is set to instanceID.

Repository:

Specify the name of the open repository that holds the actual instance. Repository names are case sensitive. This argument is only effective when the <instanceID or query?> argument is set to query.
When activating the Select button, the name of all open repositories will be displayed in the related selection list.

Model:

Specify the name of the model that holds the actual instance. Model names are case sensitive. This argument is only effective when the <instanceID or query?> argument is set to query. This model must be open.
When activating the Select button, the name of all open models located in the repository(ies) specified by the <Repository> argument will be displayed in the related selection list.

Entity:

Specify the name of the entity, i.e. the type of the instance to display. Entity names are case insensitive. This argument is only effective when the <instanceID or query?> argument is set to query
When activating the Select button, the name of all existing instance types in the model(s) specified by the arguments <Repository> and <Model> will be displayed in the related selection list.

First instance index to check:

Specify an integer value denoting the index, i.e., element number in the entity extent aggregate that holds all instances of the same type in a model. The value of the <First instance index to check> argument specifies the index of the first instance to be queried. The instance type is specified by the <Entity> argument. The first instance in the entity extent aggregate has index zero.
This argument is only effective when the <instanceID or query?> argument is set to query.
This argument will be automatically updated to the index of the last instance that matched the query plus one, when the option [update indexes] is set. This feature makes it convenient to query all instances of a particular type in several consecutive queries.

Condition:

Specify the conditions the actual instance should match. All queried instances will match the query when this argument is empty (blank). This argument is effective only when the <instanceID or query?> argument is set to query.

Rule Schema

Specify the name of Rule schema(ta) in the EDMdatabase that defines the applicable rules. Schema names are case insensitive.
When this argument is blank, the specified <Where Rule> must be defined in the underlying EXPRESS schema of the specified population (model) to validate.
When activating the Select button, the names of all existing schemata will be displayed in the related selection list.

Where Rule:

Specify the name of the actual where rule. If the argument <Rule Schema> is blank, the specified <Where Rule> must be defined in the EXPRESS schema that defines the actual instance to validate. When a rule schema is defined by the <Rule Schema> argument, the specified <Where Rule> must be defined in this rule schema.
When activating the Select button, the names of all available where rules will be displayed in the related selection list.

User output file

Output produced by the edm extension xpxPrintf , can be directed to a file.
When activating the Select button, a window is opened to allow browsing the directory structure and select/specify the desired file.

Options:

accumulating command output:

A global option that appends the command output to the EDMsupervisor output window. Otherwise the output window is refreshed and only the last command output is displayed.

match selected input:

A global option that specifies that only items that partly or exactly matches the string in the related argument input field when activating a Select button, will be in the selection list. An empty (blank) string will match all items.
This option has no effect on file name arguments.

update indexes

A global option that specifies that the <First instance to check> argument will be updated to the next index after the one currently displayed.

activate debugger:

The EDMdebugger will be invoked when the actual where rule will be executed by the EDMexpressVM.

user parameters:

When this option is enabled, a new dialogue will be shown when the OK-button on the actual dialogue is pushed. In the new dialogue the number of arguments have to be specified, and for each argument the argument data type and argument data value have to be specified.
The number of related input field in the new dialogue limits the number of arguments that can be supplied to the validation process.