General intent model
Introduction
For complex intent, such as the intent of cloud leased line, it is necessary to decompose the complex intent into sub intents of different dimensions, and implement the user's original intent through the execution of sub intents. So we need to deal with machin-machine intent, and for different intents or sub intents in the system, it is necessary to provide general intent model to ensure that all intents(especially machine-machine intents) operate according to the same expression.
For detailed requirement information, see the following links: REQ-1267: General intent model and general intent interface requirements in R11Done
Benefits of introducing general intent model in ONAP
Improve interoperability between components/systems via standarded intent description.
Model federation mechanism is introduced (later explained in detail) to enable domain extension.
Based on the general intent model, the machine-machine intent is supported.
Enhance standardization based on the existing standards.
Reuse the existing domain related models which enables extension to different application scenarios.
Intent model organization form
Intent Information Element
Attribute | Qualifier | Cardinality | Content | Description |
intentId | M | 1 | String | The identifier of this intent. |
intentName | M | 1 | String | It describes the name of the intent. |
intentExpectations | M | 1..N | IntentExpectation | Multiple expectation lists contained in one intent. |
intentContexts | O | 1..N | Context | It describes the list of IntentContext(s) which represents the constraints and conditions that should apply for the entire intent. |
intentFulfilmentinfo | O | 1 | FulfilmentInfo | It describes status of fulfilment of an intent and the related reasons for that status. |
IntentExpectation Information Element
Attribute | Qualifier | Cardinality | Content | Description |
expectationId | M | 1 | String | The identifier of this expectation. |
expectationName | M | 1 | String | It describes the name of the expectation. |
expectationType | O | 1 | ENUM | It describes the characteristic of the intentExpectation and is the property that describes the types of intentExpectations. Value:
|
expectationObject | O | 1 | ExpectationObject | Represents the Object of the IntentExpectation that are required to be applied on. |
expectationTargets | M | 1..N | ExpectationTarget | It describes the list of ExpectationTarget(s) which represent specific outcomes on the metrics that characterize the performance of the object(s) or some abstract index that expresses the behavior of the object(s) that are desired to be realized for a given intentExpectation. |
expectationContexts | O | 1..N | Context | It describes the list of context(s) which represents the constraints and conditions that should apply for a specific intentExpectation. |
expectationfulfilmentInfo | O | 1 | FulfilmentInfo | It describes status of fulfilment of an intentExpectation and the related reasons for that status. |
ExpectationObject Information Element
Attribute | Qualifier | Cardinality | Content | Description |
objectType | CM | 1 | ENUM | It describes the type of expectation object of the IntentExpectation that are required to be applied on. It can be class name of the managed object. Condition: The intent expectation is not for a specific object instance or intent owner have no knowledge of the MOI of this specific object instance. Value:
|
objectInstance | CM | 1 | String | It describes a specific object instance (e.g. instance of managed object) to which the intentExpectation should apply. Condition: The intent expectation is for a specific object instance and intent owner have the knowledge of the MOI of this specific object instance. |
objectContexts | O | 1..N | Context | It describes the list of ObjectContext(s) which represents the constraints and conditions to be used as filter information to identify the object(s) to which a given intentExpectation should apply. |
ExpectationTarget Information Element
Attribute | Qualifier | Cardinality | Content | Description |
targetId | M | 1 | String | The identifier of this target. |
targetName | M | 1 | String | It describes the name of the expectation target. |
targetConditions | M | 1..N | Condition | It represents the conditions that the expectation target needs to meet. |
targetContexts | O | 1..N | Context | It describes the list of constraints and conditions that should apply for a specific expectationTarget. |
targetFulfilmentInfo | O | 1 | FulfilmentInfo | It describes status of fulfilment of an expectationTarget and the related reasons for that status. |
Condition Information Element
Attribute | Qualifier | Cardinality | Content | Description |
conditionId | M | 1 | String | The identifier of this condition. |
conditionName | M | 1 | String | It describes the name of the condition. |
operator | M | 1 | Enum | If conditionValue exists, represents the specific requirements for condition. Value:
If conditionList exists, representing the relationship between all conditions. Value:
|
conditionValue | CM | 1 | String | If it is a simlpe condition, represents the specific value of the condition. |
conditionList | CM | 1..N | Condition | If it is a composite condition, represents a group of conditions. |
Context Information Element
Attribute | Qualifier | Cardinality | Content | Description |
contextId | M | 1 | String | The identifier of this context. |
contextName | M | 1 | String | It describes the name of the context. |
contextConditions | M | 1..N | Condition | It represents the conditions that the context needs to meet. |
FulfilmentInfo Information Element
Attribute | Qualifier | Cardinality | Content | Description |
fulfilmentStatus | M | 1 | ENUM | It describes the current status of the fulfilment result. Value:
|
notFulfilledState | CM | 1 | ENUM | It describes the current progress of or the reason for not achieving fulfilment for the intent, intentExpectation or expectationTarget. Value:
|
notFulfilledReasons | CO | 1 | String | It describes the reasons/observations related to the specific noted notFulfilledState. |
Additional information
This model refers to the existing intent model information in 3GPP TS 28.312 V17.0.1 and TMF TR290 Intent Common Model v2.1.0.