diff options
Diffstat (limited to 'src/site-docs/adoc/fragments/apex-policy-model/concept-policy.adoc')
-rw-r--r-- | src/site-docs/adoc/fragments/apex-policy-model/concept-policy.adoc | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/site-docs/adoc/fragments/apex-policy-model/concept-policy.adoc b/src/site-docs/adoc/fragments/apex-policy-model/concept-policy.adoc new file mode 100644 index 000000000..3e48915d9 --- /dev/null +++ b/src/site-docs/adoc/fragments/apex-policy-model/concept-policy.adoc @@ -0,0 +1,34 @@ +// +// ============LICENSE_START======================================================= +// Copyright (C) 2016-2018 Ericsson. All rights reserved. +// ================================================================================ +// This file is licensed under the CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE +// Full license text at https://creativecommons.org/licenses/by/4.0/legalcode +// +// SPDX-License-Identifier: CC-BY-4.0 +// ============LICENSE_END========================================================= +// +// @author Sven van der Meer (sven.van.der.meer@ericsson.com) +// + +== Concept: Policy + +The __Policy__ concept defines a policy in APEX. +The definition is rather straightforward. +A policy is made up of a set of states with the flavor of the policy determining the structure of the policy states and the first state defining what state in the policy executes first. +__Policy__ concepts are keyed with an `ArtifactKey` key. + +The __PolicyFlavour__ of a __Policy__ concept specifies the structure that will be used for the states in the policy. +A number of commonly used policy patterns are supported as APEX policy flavors. +The standard policy flavors are: + +* The __MEDA__ flavor supports policies written to the link:https://www.researchgate.net/publication/282576518_Dynamically_Adaptive_Policies_for_Dynamically_Adaptive_Telecommunications_Networks[MEDA policy pattern] and require a sequence of four states: namely __Match__, __Establish__, __Decide__ and __Act__. +* The __OODA__ flavor supports policies written to the link:https://en.wikipedia.org/wiki/OODA_loop[OODA loop pattern] and require a sequence of four states: namely __Observe__, __Orient__, __Decide__ and __Act__. +* The __ECA__ flavor supports policies written to the link:https://en.wikipedia.org/wiki/Event_condition_action[ECA active rule pattern] and require a sequence of three states: namely __Event__, __Condition__ and __Action__ +* The __XACML__ flavor supports policies written in link:https://en.wikipedia.org/wiki/XACML[XACML] and require a single state: namely __XACML__ +* The __FREEFORM__ flavor supports policies written in an arbitrary style. + A user can define a __FREEFORM__ policy as an arbitrarily long chain of states. + +The __FirstState__ field of a __Policy__ definition is the starting point for execution of a policy. +Therefore, the trigger event of the state referenced in the __FirstState__ field is also the trigger event for the entire policy. + |