Gate extends Action, ActionEdgeSource, ConditionEdgeDestination, GeneratedElement, GeneratesElements, NamedElement, RequiresEdgesSource

Restricts access into, or out of, a Scope until all incoming Conditions are satisfied.

A Scope may contain a single entry Gate through entryGate, and a single exit Gate through exitGate.

Entry Gate

An entry Gate must have at least one outgoing ECARule which has a destination of a Frame; this first target Frame represents the incoming gate. If an entry Gate is executed as an Action, and the entry Gate has been satisfied, the browser is redirected to the Frame which triggered the entry Gate (the resume location). If the satisfied entry Gate was not triggered by a Frame, or the entry Gate is not satisfied, then the browser is redirected to the incoming gate.

When a Frame directly contained within this Scope is accessed or rendered, this entry Gate must first be satisfied; that is, all incoming Conditions must be considered successful. If the entry Gate is not satisfied, , then the failure rules of that exit Gate are executed in descending priority order according to the execution semantics of ECARule.

If an entry Gate is executed as an Action, and the entry Gate has been satisfied, the browser is redirected to the Frame which triggered the entry Gate (the resume location). If the satisfied entry Gate was not triggered by a Frame, or the entry Gate is not satisfied, then the browser is redirected to the incoming gate.

An entry Gate may have an outgoing ECARule to a Frame with an name "first". This Frame must reside outside of the containing Scope of that Gate. When this model is completed through model completion, this entry Gate will be extended to first check that the current user has successfully visited this Frame.

Exit Gate

An exit Gate must have at least one outgoing ECARule which has a destination of a Frame; this first target Frame represents the outgoing gate. If an exit Gate is executed as an Action, and the exit Gate has been satisfied, the browser is redirected to the Frame which triggered the exit Gate (the resume location). If the satisfied exit Gate was not triggered by a Frame, or the exit Gate is not satisfied, then the browser is redirected to the outgoing gate.

When a Frame within the model, but not contained (directly or indirectly) within that Scope is accessed or rendered, this exit Gate must first be satisfied; that is, all incoming Conditions must be considered successful. If the exit Gate is not satisfied, then the failure rules of that exit Gate are executed in descending priority order according to the execution semantics of ECARule.

If an exit Gate is executed as an Action, and the exit Gate has been satisfied, the browser is redirected to the Frame which triggered the exit Gate (the resume location). If the satisfied exit Gate was not triggered by a Frame, or the exit Gate is not satisfied, then the browser is redirected to the outgoing gate.

A exit Gate may have an outgoing ECARule to a Frame with a name "last". This Frame must reside within the containing Scope of that exit Gate. When this model is completed through model completion, the exit Gate will be extended to first check that the current user has successfully visited this Frame.

[Gate.html]

Examples

Implementation Notes

Inference Rules

Constraints

Attributes

(none)

Inherited Attributes

Children

(none)

Inherited Children

References

(none)

Inherited References

Extensions

Inherited Extensions