3GPP TS 28.312 Intent Nrm API

OAS 3.0.1 definition of the Intent NRM. An OpenAPI 3.0.1 data-model-only document (no paths; it defines the schemas/Network Resource Model consumed by the Provisioning and Performance management services), API version 19.5.0, published verbatim by 3GPP in 3GPP TS 28.312 as part of the Management Services (SA5 OAM) suite and mirrored in the public 3GPP Forge GitLab repository.

OpenAPI Specification

3gpp-ts28312-intentnrm.yml Raw ↑
openapi: 3.0.1
info:
  title: Intent NRM
  version: 19.5.0
  description: >-
    OAS 3.0.1 definition of the Intent NRM
    © 2026, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC).
    All rights reserved.
externalDocs:
  description: 3GPP TS 28.312; Intent driven management services for mobile networks
  url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.312/
paths: {}
components:
  schemas:

  #-------- Definition of types for name-containments ------
    SubNetwork-ncO-IntentNrm:
      type: object
      properties:
        IntentHandlingFunction:
          $ref: '#/components/schemas/IntentHandlingFunction-Multiple'
       
   #-------Definition of generic IOCs ----------#  

    Intent-Single:
      description: >-
        This IOC represents the properties of an Intent driven management information between MnS consumer and MnS producer.  
      allOf:
      - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top'
      - type: object
        properties:
          userLabel:
            type: string
          intentExpectations:
            type: array
            uniqueItems: true
            minItems: 1
            items:
              type: object
              oneOf:
                - $ref: '#/components/schemas/IntentExpectation'
                - $ref: 'TS28312_IntentExpectations.yaml#/components/schemas/RadioNetworkExpectation'
                - $ref: 'TS28312_IntentExpectations.yaml#/components/schemas/EdgeServiceSupportExpectation'
                - $ref: 'TS28312_IntentExpectations.yaml#/components/schemas/5GCNetworkExpectation'
                - $ref: 'TS28312_IntentExpectations.yaml#/components/schemas/RadioServiceExpectation'
                - $ref: 'TS28312_IntentExpectations.yaml#/components/schemas/NetworkMaintenanceExpectation'
          intentMgmtPurpose:
            $ref: '#/components/schemas/IntentMgmtPurpose'
          contextSelectivity:
            $ref: '#/components/schemas/Selectivity'
          consumerSatisfactionIndexThreshold:
            type: integer
          expectationSelectivity:
            $ref: '#/components/schemas/Selectivity'
          intentContexts:
            type: array
            uniqueItems: true
            items:
              $ref: '#/components/schemas/Context'
            description: >-
              It describes the list of Context(s) which represents the constraints and conditions that should apply 
              for the entire intent even if there may be specific contexts defined for specific parts of the intent  
          intentAdminState:
            type: string
            enum:
              - ACTIVATED
              - DEACTIVATED
            default: ACTIVATED
            description: >-
              It describes the intent administrative state. 
              This attribute is used when MnS consumer-suspension mechanism is supported
          intentPriority:
            type: integer
            minimum: 1
            maximum: 100
            default: 1
            description: It expresses the priority of the stated intent within a MnS consumer.   
          intentPreemptionCapability:
            type: boolean
            default: false
          intentReportControl:
            type: array
            uniqueItems: true
            items:
              $ref: '#/components/schemas/IntentReportControl'
          implicitIntentIndex:
            type: boolean
            default: false
          intentReportReference:
            $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnRo'
          intentUtilityFormulaRef:
            $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn'
        required:
          - userLabel
          - intentExpectations
          - intentMgmtPurpose
          - intentReportControl
          - intentReportReference
    IntentReport-Single:
      description: It represents intent report information from MnS producer to MnS consumer.
      allOf:
      - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top'
      - type: object
        properties:
          intentFulfilmentReport:
            $ref: '#/components/schemas/IntentFulfilmentReport'
          intentConflictReports:
            type: array
            uniqueItems: true
            items:
              $ref: '#/components/schemas/IntentConflictReport'
          intentFeasibilityCheckReport:
            $ref: '#/components/schemas/IntentFeasibilityCheckReport'
          intentExplorationReport:
            $ref: '#/components/schemas/IntentExplorationReport'
          intentUtilityReports:
            type: array
            uniqueItems: true
            items:
              $ref: '#/components/schemas/IntentUtilityReport'
          intentFulfilmentNegotiationReport:
            $ref: '#/components/schemas/IntentFulfilmentNegotiationReport'
          lastUpdatedTime:
            $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTimeRo'
          intentReference:
            $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnRo'
      required:
        - lastUpdatedTime
        - intentReference
    IntentHandlingFunction-Single:
      description: >- 
        It represents the intent handling capabilities can be supported by a specific intent 
        handling function of MnS producer.
      allOf:
      - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top'
      - type: object
        properties:
          intentHandlingCapabilityList:
            type: array
            uniqueItems: true
            minItems: 1
            items:
              $ref: '#/components/schemas/IntentHandlingCapability'
          supportedUtilityList:
            type: array
            items:
              $ref: '#/components/schemas/UtilityDefinition'
            uniqueItems: true
          Intent:
            $ref: '#/components/schemas/Intent-Multiple'
          IntentReport:
            $ref: '#/components/schemas/IntentReport-Multiple'
          IntentUtilityFormula:
             $ref: '#/components/schemas/IntentUtilityFormula-Multiple'
    IntentUtilityFormula-Single:
      description: >- 
       It represents an intent utility function instance.
      allOf:
      - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top'
      - type: object
        properties:
          utilityFunctionId:
            type: string
          utilityParameterList:
            type: array
            items:
              $ref: '#/components/schemas/UtilityParameter'
            uniqueItems: true
          utilityScale:
            type: number
            default: 1
          utilityOffset:
            type: number
            default: 0
      required:
        - utilityFunctionId
        - utilityParameterList
   #-------Definition of generic IOCs ----------#  

   #-------Definition of the generic IntentExpectation dataType ----------#    
    IntentExpectation:
      description: >-
        This data type is the "IntentExpectation" data type without specialisations
        It represents MnS consumer's requirements, goals and contexts given to a 3GPP system 
      type: object
      properties:
        expectationId:
          type: string
          description: A unique identifier of the intentExpectation within the intent.
        expectationVerb:
           $ref: "#/components/schemas/ExpectationVerb"
        expectationObject:
          $ref: "#/components/schemas/ExpectationObject"
        expectationTargets:
          type: array
          uniqueItems: true
          minItems: 1
          items:
            $ref: '#/components/schemas/ExpectationTarget'
        contextSelectivity:
          $ref: "#/components/schemas/Selectivity"
        expectationContexts:
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/Context'
        preferenceWeight:
          type: integer
          minimum: 0
          maximum: 10
          description: It represents the preference information of the Consumer on expectations.
      required:
        - expectationId
        - expectationObject
        - expectationTargets
   #-------Definition of the generic IntentExpectation dataType ----------#    

   #-------Definition of the generic ExpectationObject dataType ----------#    
    ExpectationObject:
      description: >-
        It represents the Object to which the IntentExpectation should apply.
        This data type is the "ExpectationObject" data type without specialisations
      type: object
      properties:
        objectType:
          type: string
          enum:
            - RAN_SUBNETWORK  #value for Radio Network Expectation--#
            - EDGE_SERVICE_SUPPORT  #value for Edge Service Support Expectation--#
            - 5GC_SUBNETWORK  #value for 5GC Network Expectation--#
            - RADIO_SERVICE  #value for Radio Service Expectation--#
            - SUBNETWORK  #value for Network Maintenance Expectation--#
        objectInstance:
          $ref: 'TS28623_ComDefs.yaml#/components/schemas/Dn'
        objectContexts:
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/Context'
          description: >-
           It describes the list of Context(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.
   #-------Definition of the generic ExpectationObject dataType ----------# 

   #-------Definition of the generic dataType --------------#
    Condition:
      type: string
      enum:
        - IS_EQUAL_TO
        - IS_LESS_THAN
        - IS_GREATER_THAN
        - IS_WITHIN_RANGE
        - IS_OUTSIDE_RANGE
        - IS_ONE_OF
        - IS_NOT_ONE_OF
        - IS_EQUAL_TO_OR_LESS_THAN
        - IS_EQUAL_TO_OR_GREATER_THAN
        - IS_ALL_OF
    Selectivity:
      type: string
      enum:
        - ALL_OF
        - ONE_OF
        - ANY_OF
      default: ALL_OF
    IntentMgmtPurpose:
      description: >-
        It describes the MnS consumer requirements for the management purpose (required procedures)
        of the created or modified intent instance
      type: string
      enum:
        - FEASIBILITYCHECK
        - FULFILMENT_WITHOUT_NEGOTIATION
        - EXPLORATION
        - FULFILMENT_WITH_NEGOTIATION
      default: FULFILMENT_WITHOUT_NEGOTIATION
    FulfilmentStatus:
      type: string
      readOnly: true
      enum:
          - FULFILLED
          - NOT_FULFILLED
      default: NOT_FULFILLED
      description: It describes the current status of the intent fulfilment result.
    NotFulfilledState:
      type: string
      readOnly: true
      enum:
          - ACKNOWLEDGED
          - COMPLIANT
          - DEGRADED
          - SUSPENDED
          - TERMINATED
          - FULFILMENTFAILED
      default: ACKNOWLEDGED
      description: It describes the current progress of or the reason for not achieving fulfilment
                   for the intent, intentExpectation or expectationTarget.
                   An attribute which is used when FulfilmentInfo is implemented for IntentFulfilmentInfo
    FulfilmentInfo:
      description: >-
        This dataType represents the properties of a specific fulfilment information for an aspect of 
        the intent (i.e. either an expectation, a target or the whole intent).
      type: object
      properties:
        fulfilmentStatus:
          $ref: '#/components/schemas/FulfilmentStatus'
        notFullfilledState:
          $ref: "#/components/schemas/NotFulfilledState"
        notFulfilledReasons:
          type: array
          uniqueItems: true
          items: 
            type: string
          readOnly: true
          description: An attribute which is used when FulfilmentInfo is implemented for IntentFulfilmentInfo
      required: 
        - fulfilmentStatus  
    ExpectationVerb:
      type: string
      enum:
          - DELIVER
          - ENSURE
          - MAINTAIN
      description: It describes the characteristic of the intentExpectation and is the property that describes the types of intentExpectations. Vendor extensions are allowed    
    Frequency:
      description: >-
        It desribes the RF reference frequency (i.e. Absolute Radio Frequency Channel Number) 
        and/or the frequency operating band used for a given direction (UL or DL) in FDD or 
        for both UL and DL directions in TDD.
      type: object
      properties:
        arfcn:
          type: integer
          description: >- 
            This attribute shall be supported, when the frequency information represent RF reference frequency.
            The allowed values for NR see TS 38.104 subclause 5.4.2.1; The allowed values for EUTRAN see TS 36.104 [X] subclause 5.7.3; 
        freqband:
          type: string
          description: >-
            This attribute shall be supported, when the frequency information represent frequency operating band. 
            The allowed values for NR see TS 38.104 subclause 5.4.2.3; The allowed value for EUTRAN see TS 36.104 subclause 5.7.3       
    ValueRangeType: 
      oneOf:
        - type: number
        - type: string
        - type: boolean
        - type: integer
        - $ref: 'TS28623_ComDefs.yaml#/components/schemas/TimeWindow'
        - $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime'
        - $ref: 'TS28623_ComDefs.yaml#/components/schemas/GeoArea'
        - $ref: 'TS28623_ComDefs.yaml#/components/schemas/PlmnId'
        - $ref: 'TS28623_ComDefs.yaml#/components/schemas/GeoCoordinate'
        - $ref: '#/components/schemas/UEGroup'
        - $ref: '#/components/schemas/Frequency'
        - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SchedulingTime'
    UEGroup:
      description: >-
        It describes the UE Group, 
        which is represented by specific 5QI, specific S-NSSAI, specific PLMNId or 
        a specific combination of S-NSSAI, 5QI and PLMNId.
      type: object
      properties:
        pLMNId:
          $ref: 'TS28623_ComDefs.yaml#/components/schemas/PlmnId'
        fiveQI:
          type: integer
          minimum: 0
          maximum: 255
        sNssai: 
          $ref: 'TS28541_NrNrm.yaml#/components/schemas/Snssai'
   #-------Definition of the generic dataType --------------#
   
   #-------Definition of the generic ExpectationTarget dataType----------#
    ExpectationTarget:
      description: >-
        This data type represents the target of the IntentExpectation that are required to be achieved.
        This data type is the "ExpectationTarget" data type without specialisations
      type: object
      properties:
        targetName:
          type: string
        targetCondition:
          $ref: '#/components/schemas/Condition'
        targetValueRange:
          oneOf:
            - type: array
              uniqueItems: true
              minItems: 1
              items:
                $ref: "#/components/schemas/ValueRangeType"
            - $ref: "#/components/schemas/ValueRangeType"
        contextSelectivity:
          $ref: "#/components/schemas/Selectivity"
        targetContexts:
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/Context'
          description: It describes the list of constraints and conditions that should apply for a specific expectationTarget.
        preferenceWeight:
          type: integer
          minimum: 0
          maximum: 10
          description: It represents the preference information of the Consumer on expectationTargets.
      required:
        - targetName
        - targetCondition
        - targetValueRange

   #-------Definition of the generic ExpectationTarget  dataType----------#  
   
   #-------Definition of the generic Context dataType----------------#
    Context:
      description: >-
        This data type is the "Context" data type without specialisations
      type: object
      properties:
        contextAttribute:
          type: string
        contextCondition:
          $ref: '#/components/schemas/Condition'
        contextValueRange:
            oneOf:
              - type: array
                uniqueItems: true
                minItems: 1
                items:
                  $ref: "#/components/schemas/ValueRangeType"
              - $ref: "#/components/schemas/ValueRangeType"
      required:
        - contextAttribute
        - contextCondition
        - contextValueRange
   #-------Definition of the generic Context dataType----------------#

  #-------Definition of the generic IntentReportControl dataType----------------#
    IntentReportControl:
      description: >-
        It describes intent report subscription information
      type: object
      properties:
        reportRecipientAddress:
          description: >-
            It indicates the address of report recipient for MnS consumer. 
            It shall be supported when the implicit intent report subscription mechanism is supported.
          type: string
        observationPeriod:
          description: >-
            It indicates the time period for which the fulfilment process is observed
            and at the end of which the fulfilmentInfo for corresponding
            ExpectationTargets, IntentExpectations and Intent is updated.
          type: integer
        expectedReportTypes:
          description: >-
            It indicates the type of IntentReports.
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/ExpectedReportType'
        reportingConditions:
          description: >-
             It indicates the specified conditions for intent reporting.
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/ReportingCondition'
        reportingTargets:
          description: >-
            It indicates the specified targets needed to be reported.
          type: array
          items: 
            type: string
      required:
        - observationPeriod
    ExpectedReportType:
      type: string
      enum:
        - INTENT_FULFILMENT_REPORT
        - INTENT_CONFLICT_REPORT
        - INTENT_FEASIBILITY_CHECK_REPORT
        - INTENT_EXPLORATION_REPORT
        - INTENT_FULFILMENT_NEGOTIATION_REPORT
        - INTENT_UTILITY_REPORT
    ReportingCondition:
      description: >-
        It describes  the specified conditions for intent reporting.
      oneOf:
        - $ref: '#/components/schemas/TimeCondition'
        - $ref: '#/components/schemas/TargetFulfilmentCondition'
    TimeCondition:
      $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SchedulingTime'
    TargetFulfilmentCondition:
      description: >-
        It indicates the specified conditions of target fulfilment for intent reporting.
      type: object
      properties:
        targetName:
          type: string
        targetCondition:
          $ref: '#/components/schemas/Condition'
        targetValueRange:
          oneOf:
            - type: array
              uniqueItems: true
              items:
                $ref: '#/components/schemas/ValueRangeType'
            - $ref: '#/components/schemas/ValueRangeType'
      required:
        - targetName
        - targetCondition
        - targetValueRange
   #-------Definition of the concrete IntentReportControl dataType----------------#


   #-------Definition of the generic IntentFulfilmentReport dataType----------------#
    IntentFulfilmentReport:
      description: >-
        It includes the intentFulfilmentInfo and expectationFulfilmetResult. 
        This attribute shall be supported when intent fulfilment information is supported by IntentReport
      type: object
      properties:
        intentFulfilmentInfo:
          $ref: '#/components/schemas/FulfilmentInfo'
        expectationFulfilmentResult:
          type: array
          uniqueItems: true
          minItems: 1
          items: 
            $ref: '#/components/schemas/ExpectationFulfilmentResult'
        additionalFulfilmentInfo:
          description: >- 
            It describes the additional information of intent intent fulfilment.The content and format is vendor specific.
             Examples of additional fulfilment information could be:Types for the list of managed objects (e.g. NE, NF, Cell) 
             which are updated during intent fulfilment, or, Instance information for the list of managed objects (e.g. NE, NF,
              Cell)  and corresponding attributes which are updated during intent fulfilment.
          type: string
          readOnly: true
      required:
          - intentFulfilmentInfo
   #-------Definition of the concrete IntentFulfilmentReport dataType----------------#

   #-------Definition of the generic ExpectationFulfilmentResult dataType----------------#
    ExpectationFulfilmentResult:
      description: >-
        It includes the expectationFulfilmentInfo and targetFulfilmentResults for each IntentExpectation.   
      type: object
      properties:
        expectaitonId:
          type: string
          readOnly: true
        expectationFulfilmentInfo:
          $ref: '#/components/schemas/FulfilmentInfo'
        targetFulfilmentResults:
          type: array
          uniqueItems: true
          items: 
            $ref: '#/components/schemas/TargetFulfilmentResult'
      required:
        - expectaitonId
        - expectationFulfilmentInfo    
   #-------Definition of the concrete ExpectationFulfilmentResult dataType----------------#

   #-------Definition of the generic TargetFulfilmentResult dataType----------------#
    TargetFulfilmentResult:
      description: >-
        This data type includes targetFulfilmentInfo and targetAchievedValue for each ExpectationTarget.
      type: object
      properties:
        targetName:
          type: string
          readOnly: true
        targetFulfilmentInfo:
          $ref: '#/components/schemas/FulfilmentInfo'
        targetAchievedValue:
          description: >-
            It describes the value that has been achieved for the expectation target at the time at which
            the report is generated.
          $ref: "#/components/schemas/ValueRangeType"
        targetContexts:
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/Context'
      required:
        - targetName
        - targetFulfilmentInfo
   #-------Definition of the concrete TargetFulfilmentResult dataType----------------#

   #-------Definition of the generic IntentConflictReport dataType----------------#
    IntentConflictReport:
      description: >-
        It represents the conflict information for the detected conflict
        This attribute shall be supported when intent conflict information is supported by IntentReport         
      type: object
      properties:
        conflictId:
          type: string
          readOnly: true
        conflictType:
          type: string
          enum:
              - INTENT_CONFLICT
              - EXPECTATION_CONFLICT
              - TARGET_CONFLICT
          readOnly: true    
        conflictingIntent:
          description: >-
            This will be present if the MnS producer supports reporting on INTENT_CONFLICT or EXPECTATION_CONFLICT 
            or TARGET_CONFLICT.
          $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnRo'
        conflictingExpectation:
          description: >-
            This will be present if the MnS producer supports reporting on conflicts of type EXPECTATION_CONFLICT or 
            TARGET_CONFLICT.
          type: string
          readOnly: true
        conflictingTarget:
          description: >-
            This will be present if the MnS producer supports reporting on conflicts of type TARGET_CONFLICT.
          type: string
          readOnly: true 
        recommendedSolutions:
          type: string
          readOnly: true
          enum:
              - MODIFY
              - DELETE
      required:
        - conflictId
        - conflictType
   #-------Definition of the concrete IntentConflictReport dataType----------------#


#-------Definition of the generic IntentUtilityReport dataType----------------#
    IntentUtilityReport:
      description: >-
        It represents the utility function results.
      type: object
      properties:
        utilityResultList:
          type: array
          uniqueItems: true
          items:
            $ref: '#/components/schemas/UtilityResult'
   #-------Definition of the concrete IntentUtilityReport dataType----------------#

   #-------Definition of the generic IntentFeasibilityCheckReport dataType----------------#
    IntentFeasibilityCheckReport:
      description: >-
        It represents the intent feasibility check information
        This attribute shall be supported when intent feasibility check information information is supported by IntentReport
      type: object
      properties:
        feasibilityCheckResult:
          type: string
          readOnly: true
          enum:
              - FEASIBLE
              - INFEASIBLE
        infeasibilityReasons:
          description: An attribute which is used when feasibilityCheckResult is INFEASIBLE
          type: array
          uniqueItems: true
          items:
            type: string
            readOnly: true
            enum:
               - INVALID_INTENT_EXPRESSION
               - INTENT_CONFLICT
        inFeasibleExpectationInfos:
          type: array
          items:
            $ref: '#/components/schemas/InFeasibleExpectationInfo'
      required:
        - feasibilityCheckResult
        - infeasibilityReasons
    InFeasibleExpectationInfo:
      description: >-
        It describes the list of InFeasibleExpectationInfo for all infeasible IntentExpectations
         in the intent
      type: object
      properties:
        expectationId:
          type: string
          readOnly: true
        inFeasibleTargets:
          type: array
          uniqueItems: true
          items:
            type: string
            readOnly: true
          description: It describes the list of TargetNames for the InFeasibleTargets
      required:
        - expectationId
        - inFeasibleTargets    
   #-------Definition of the concrete IntentFeasibilityCheckReport dataType----------------#


   #-------Definition of the generic IntentExplorationReport dataType----------------#
    IntentExplorationReport:
      description: >-
        It represents the intent exploration information
        This attribute shall be supported when intent exploration information is supported by IntentReport
      type: object
      properties:
        expectationExplorationResults:
          type: array
          items:
            $ref: '#/components/schemas/ExpectationExplorationResult'
          uniqueItems: true
          minItems: 1
    ExpectationExplorationResult:
      description: >-
        It represents the expectation exploration result for a specific intent expectation
      type: object
      properties:
        expectationId:
          type: string
          readOnly: true
        targetExplorationResults:
          type: array
          items:
            $ref: '#/components/schemas/ExpectationTarget'
          uniqueItems: true
          minItems: 1
        contextExplorationResults:
          type: array
          items:
            $ref: '#/components/schemas/Context'
          uniqueItems: true
          minItems: 1
      required:
        - expectationId
        - targetExplorationResults
   #-------Definition of the generic IntentExplorationReport dataType----------------#



   #-------Definition of the generic IntentFulfilmentNegotiationReport dataType----------------#
    IntentFulfilmentNegotiationReport:
      description: >-
        It represents the intent negotiation information during fulfilment phase
        This attribute shall be supported when intent fulfilment negotiation information is supported by IntentReport
      type: object
      properties:
        possibleIntentOutcomeList:
          type: array
          items:
            $ref: '#/components/schemas/PossibleIntentOutcome'
          uniqueItems: true
          minItems: 1
        intentFulfilmentNegotiationConsumerFeedback:
          $ref: '#/components/schemas/IntentFulfilmentNegotiationFeedback'
        implicitIntent:
          $ref: '#/components/schemas/ImplicitIntent'
    PossibleIntentOutcome:
      description: >-
        It represents a single outcome evaluated by the MnS producer
      type: object
      properties:
        possibleIntentOutcomeId:
          type: integer
          readOnly: true
        intentFulfilmentInfo:
          $ref: '#/components/schemas/FulfilmentInfo'
        expectationFulfilmentResults:
          type: array
          items:
            $ref: '#/components/schemas/ExpectationFulfilmentResult'
          uniqueItems: true
          minItems: 1
        possibleImpacts:
          type: array
          items:
            $ref: '#/components/schemas/PossibleImpact'
          uniqueItems: true
          minItems: 1
      required:
        - possibleIntentOutcomeId
        - intentFulfilmentInfo
    PossibleImpact:
      description: >-
        It represents the possible impact of the possible outcome
      type: object
      properties:
        impactedObjects:
          type: array
          items:
            $ref: 'TS28623_ComDefs.yaml#/components/schemas/DnRo'
          minItems: 1
        impactedAttributes:
          type: array
          items:
            $ref: 'TS28623_ComDefs.yaml#/components/schemas/AttributeNameValuePairSet'
          minItems: 1
    IntentFulfilmentNegotiationFeedback:
      description: >-
        It represents the feedback information that the MnS consumer provides to the 
        MnS producer as response during intent fulfilment Negotiation.
      type: object
      properties:
        referredIntentOutcomeId:
          type: integer
        consumerSatisfactionIndex:
          type: integer
    ImplicitIntent:
      description: >-
        It represents the implicit intent which includes the information 
        that MnS consumers have not explicitly pointed out in its intent.
      type: object
      properties:
        implicitIntentExpectations:
          type: array
          items:
            $ref: '#/components/schemas/IntentExpectation'
        implicitIntentContexts:
          type: array
          items:
            $ref: '#/components/schemas/Context'

   #-------Definition of the generic IntentFulfilmentNegotiationReport dataType----------------#


   #-------Definition of the generic IntentHandlingCapability dataType----------------#
    IntentHandlingCapability:   
      description: >-
        It represents expectation object information and expectation target information 
        which can be supported by a specific intent handling function of MnS producer.
      type: object
      properties:
        intentHandlingCapabilityId:
          type: string
          readOnly: true
        supportedExpectationObjectType:
          type: string
          enum: 
            - RAN_SUBNETWORK
            - EDGE_SERVICE_SUPPORT
            - 5GC_SUBNETWORK 
            - RADIO_SERVICE
          readOnly: true  
          description: It describes the expectation object type which can be supported by a specific intent handling function of MnS producer.            
        supportedExpectationTargetInfoList:
          type: array
          items:
            $ref: '#/components/schemas/SupportedExpectationTargetInfo'
          uniqueItems: true
          minItems: 1
      required:
        - intentHandlingCapabilityId
        - supportedExpectationObjectType
        - supportedExpectationTargetInfoList
    SupportedExpectationTargetInfo:
      description: >-
        It indicates the detailed information about what the intent driven MnS producer supports for a given supportedExpectationObjectType.
      type: object
      properties:
        supportedTargetName:
          type: string
          readOnly: true
        supportedTargetCondition:
          $ref: '#/components/schemas/Condition'
        supportedTargetValueRange:
          oneOf:
            - type: array
              uniqueItems: true
              minItems: 1
              items:
                $ref: '#/components/schemas/ValueRangeType'
            - $ref: '#/components/schemas/ValueRangeType'
      required:
        - supportedTargetName
   #-------Definition of the concrete IntentHandlingCapability dataType----------------#


   #-------Definition of the generic UtilityParameter dataType----------------#
    UtilityParameter:   
      description: >-
        It represents the inputs for the specified Intent

# --- truncated at 32 KB (34 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/3gpp/refs/heads/main/openapi/3gpp-ts28312-intentnrm.yml