Validate Data Module Against the BREX
To validate the current data module against the product’s business rules, as specified in the BREX data module:
1. In Arbortext Editor, select > .
2. A message box is displayed, indicating if the validation was successful.
If not, the Brex Validation dialog box displays information and error messages as applicable.
Business rules in a BREX data module are based on values of the allowedObjectFlag attributes for permitted objects or elements in a project data module. Messages are generated for the objects or elements during BREX validation:
Messages Generated During BREX Validation
Value
|
Meaning
|
Message Generated
|
0
|
Object is not allowed in context
|
Error
If object is present in context
|
1
|
Object must be included in context
|
Error
If object is not present in current context
|
2
|
Object is optional in context
(Issue 4.1 and later)
|
Information
If object is present in context
|
Not set
|
Object is optional in context
(Assumed)
|
Information
If object is present in context
|
|
See Additions to BREX validation for 4.2 Products below for information on messages generated during validation of Issue 4.2 content.
|
You can generate debug information about a BREX validation action. For more information, see
Troubleshoot a BREX Validation Action.
BREX Validation against a Specific Context
You can specify that a BREX validation rule should only be processed when validating a certain context. Include a rulesContext attribute for the contextRules element that represents a BREX rule, to define the schema of its target data module type.
For example, this rule will only be processed for a comment 4.1 data module:
<contextRules rulesContext="http://www.s1000d.org/S1000D_4-1/xml_schema_flat/comment.xsd">
<structureObjectRuleGroup>
<structureObjectRule>
<objectPath allowedObjectFlag="2">//comment</objectPath>
<objectUse>The comment object is not applied to these projects</objectUse>
</structureObjectRule>
</structureObjectRuleGroup>
</contextRules>
If the rulesContext attribute is not set for a rule, it is assumed that the rule is valid for all contexts.
Check In after BREX Validation
After BREX validation, check in of the project data module is permitted if:
• Validation resulted in no messages
• Only information messages were generated during validation
• The product attribute Allow Check In With Invalid Brex is set to Yes (if errors were generated during validation)
A Release for Verification task for a data module can also be completed if only information messages were generated during validation..
Additions to BREX validation for 4.2 Products
Additional refinement for a BREX validation process is included for S1000D 4.2 products:
• Business rules severity levels —settings for individual rules or a default level for the whole BREX data module
◦ Severity level for individual rules
Set a value for the brSeverityLevel attribute for rule elements nonContextRule, notationRule, snsRules, and structureObjectRule (optional)
◦ Default severity level for whole BREX or Business Rules Document data module, or for rules in the data module that don’t have an individual level set
Set a value for the defaultBrSeverityLevel attribute for the root element brex (S1000D 4.2 BREX) or brDoc (S1000D 4.2 Business Rules Document)
• Business rules breach severity levels preference — list of severity levels for which a breach of a rule with one of the listed levels will cause a failure of BREX validation
For more information, see
Business Rules.
With these options, it is possible to configure BREX validation to only fail if rules of a specific severity level are breached. BREX validation refers to the list of severity levels specified with the preference as constituting a validation failure. It then analyzes any severity level set for individual rule, and any default severity level set, and passes/fails content accordingly:
• If content fails against a rule whose severity (from individual setting or from default level) is listed in the preference — BREX validation fails
• If content fails against a rule whose severity (from individual setting or from default level) is not listed in the preference, BREX validation will not fail but the breaches are listed in the validation report:
◦ if the allowedObjectFlag attribute for the rule is set to 0 or 1 — output as a Warning
◦ if allowedObjectFlag is set to 2, or is not set — output as Information
• If content fails against a rule that does not have a severity set, either individually or as part of the default setting, BREX validation operates as in 4.0.1 and 4.1 products. The breaches are listed in the validation report based on the value of the rule’s allowedObjectFlag attribute (see table Messages Generated During BREX Validation above).