See also this tutorial movie of the active validation system in action
MD UML and MD SysML now (since 15.5) have improved "active" and "passive" validation engines. The "active" validation engine observes a model as it is created, and identifies broken constraints, highlights them (with a yellow warning box), and offers possible solutions to problems.
The active validation Engine does NOT prevent (intercept) the creation of incorrect models, it only flags problems, and offers fixes.
As an example we examine here a model of a stereo audio system with a non-atomic FlowPort that is typed by a FlowSpecification Stereo with a 'l:~' (left) and 'r:~' (right) FlowProperty, both with direction 'out', where ~ is a DataType that indicates an audio flow. The 'direction' of a FlowPort typed by Stereo should therefore also be out:
From SysML1.0: 9.3.2.3 FlowPort:
.. A nonatomic flow port relays items of several types as specified by a FlowSpecification... If a flow port is typed by a flow specification, then it is nonatomic ..
[3]If the FlowPort is nonatomic, and the FlowSpecification typing the port has flow properties with direction "in," the FlowPort direction is "in" (or "out" if isConjugated=true). If the flow properties are all out, the FlowPort direction is out (or in if isConjugated=true). If flow properties are both in and out, the direction is inout.
The FlowPort o:Stereo does not have any direction set at all yet, so the passive validation engine alerts the user with a yellow box around the port symbol:

If the user then clicks on that port symbol once a small warning sign appears at the top of the smart manipulators:
If you hold the mouse pointer over the warning sign a text box "tool tip" will briefly appear with the related constraints text.
Click on the warning sign and a small dialog with possible fixes is offered. We will select:"Set direction of flowport to:out"

The fix is applied. the 'direction' of the nonAtomic FlowPort is now correctly set to out, and the yellow box warning is gone:
