Commit 667d0d37 authored by ruiyue's avatar ruiyue
Browse files

Merge branch 'TS_28.312_intent_NRM_For_merge' into 'Integration_Rel17_SA5_141_YAML'

Upload New File

See merge request !256
parents 7bf62f59 f09233f2
Loading
Loading
Loading
Loading

OpenAPI/intentNrm.yaml

0 → 100644
+383 −0
Original line number Diff line number Diff line
openapi: 3.0.2
info:
  title: Intent NRM
  description: OAS 3.0.1 specification of the Intent NRM
  version: 17.0.0
paths: {}
components:
  schemas:

    Intent-Single:
      allOf:
      - $ref: 'genericNrm.yaml#/components/schemas/Top'    
      - type: object
        properties:
          userLabel:
            type: string
          intentExpectations:
            type: array
            items:
              $ref: "#/components/schemas/IntentExpectation"
          intentContexts:
            type: array
            items:
              $ref: "#/components/schemas/IntentContext"
          intentFulfilStatus:
            $ref: "#/components/schemas/IntentFulfilStatus"
    IntentExpectation:
      type: object
      properties:
        expectationId:
          type: string
        expectationObjects:
          type: array
          items:
            $ref: "#/components/schemas/ExpectationObject"
        expectationTargets:
          type: array
          items:
            $ref: "#/components/schemas/ExpectationTarget"
        expectationContexts:
          type: array
          items:
            $ref: "#/components/schemas/ExpectationContext"
    
    ExpectationObject:
      type: object
      properties:
        objectType:
          type: string
          enum:
            - RAN_SubNetwrok  #--value for Radio Network Expectation--#
            - TBD    #-This will be added based on defined scenario specfic intent expectation-#
        objectInstance:
          $ref: "comDefs.yaml#/components/schemas/Dn"
        objectContexts:
          type: array
          items:
            $ref: "#/components/schemas/ObjectContext"            
    
    ExpectationTarget:
      oneOf:
      #--ExpectationTargets defind for Radio Network Expectation (ObjectType is RAN_SubNetwork)- #      
        - $ref: "#/components/schemas/WeakRSRPRatioTarget"
        - $ref: "#/components/schemas/LowSINRRatioTarget"
        - $ref: "#/components/schemas/AveULRANUEThptTarget"
        - $ref: "#/components/schemas/AveDLRANUEThptTarget"
        - $ref: "#/components/schemas/LowULRANUEThptRatioTarget"
        - $ref: "#/components/schemas/LowDLRANUEThptRatioTarget"
      #--ExpectationTargets defind for Radio Network Expectation (ObjectType is RAN_SubNetwork)- #   
      
      #--ExpectationTargets defind for other Scenario specific Expectation-----TBD---------------# 
      #--ExpectationTargets defind for other Scenario specific Expectation-----TBD---------------# 
    
    
    ObjectContext:
      oneOf:
      #--ObjectContext defind for Radio Network Expectation (ObjectType is RAN_SubNetwork)-------#          
        - $ref: "#/components/schemas/CoverageAreaPolygonContext"
        - $ref: "#/components/schemas/CoverageTACContext"
        - $ref: "#/components/schemas/PLMNContext"
        - $ref: "#/components/schemas/NRFqBandContext"
        - $ref: "#/components/schemas/RATContext"
      #--ObjectContext defind for Radio Network Expectation (ObjectType is RAN_SubNetwork)------#   

      #--ObjectContext defind for other Scenario specific Expectation -----------TBD------------#  
      #--ObjectContext defind for other Scenario specific Expectation -----------TBD------------#  

 

    ExpectationContext:
      type: object
      properties:
        contextAttribute:
          type: string
        contextCondition:
          $ref: "#/components/schemas/Condition"
        contextValueRange:
          type: array
          items:
            type: number

    IntentContext:
      type: object
      properties:
        contextAttribute:
          type: string
        contextCondition:
          $ref: "#/components/schemas/Condition"
        contextValueRange:
          type: array
          items:
            type: number 
    Condition:
      type: string
      enum:
        - Is_equal_to
        - Is_less_than
        - Is_greater_than
        - Is_within_the_range

    IntentFulfilStatus:
      type: string
      enum:
          - FULFILLED
          - NOT_FULFILLED
   #-------Definition of the concrete ExpectationTarget dataType----------#     
    WeakRSRPRatioTarget:
      type: object
      properties:
        targetName:
          type: string
          enum:
            - WeakRSRPRatio
        targetCondition:
          type: string
          enum:
            - Is_less_than
        targetValueRange:
          type: integer
          minimum: 0
          maximum: 100
        targetContexts:
          $ref: "#/components/schemas/WeakRSRPContext"

    WeakRSRPContext:
      type: object
      properties:
        contextAttribute:
          type: string
          enum:
            - WeakRSRPThreshold
        contextCondition:
          type: string
          enum:
            - Is_less_than
        contextValueRange:
          type: number

    LowSINRRatioTarget:
      type: object
      properties:
        targetName:
          type: string
          enum:
            - LowSINRRatio
        targetCondition:
          type: string
          enum:
            - Is_less_than
        targetValueRange:
          type: integer
          minimum: 0
          maximum: 100
        targetContexts:
          $ref: "#/components/schemas/LowSINRContext"

    LowSINRContext:
      type: object
      properties:
        contextAttribute:
          type: string
          enum:
            - LowSINRThreshold
        contextCondition:
          type: string
          enum:
            - Is_less_than
        contextValueRange:
          type: integer

    AveULRANUEThptTarget:
      type: object
      properties:
        targetName:
          type: string
          enum:
            - AveULRANUEThpt
        targetCondition:
          type: string
          enum:
            - Is_greater_than
        targetValueRange:
          type: integer

    AveDLRANUEThptTarget:
      type: object
      properties:
        targetName:
          type: string
          enum:
            - AveDLRANUEThpt
        targetCondition:
          type: string
          enum:
            - Is_greater_than
        targetValueRange:
          type: integer

    LowULRANUEThptRatioTarget:
      type: object
      properties:
        targetName:
          type: string
          enum:
            - LowULRANUEThptRatio
        targetCondition:
          type: string
          enum:
            - Is_less_than
        targetValueRange:
          type: integer
          minimum: 0
          maximum: 100
        targetContexts:
          $ref: "#/components/schemas/LowULRANUEThptContext"

    LowULRANUEThptContext:
      type: object
      properties:
        contextAttribute:
          type: string
          enum:
            - LowULRANUEThptThreshold
        contextCondition:
          type: string
          enum:
            - Is_less_than
        contextValueRange:
          type: number

    LowDLRANUEThptRatioTarget:
      type: object
      properties:
        targetName:
          type: string
          enum:
            - LowDLRANUEThptRatio
        targetCondition:
          type: string
          enum:
            - Is_less_than
        targetValueRange:
          type: integer
          minimum: 0
          maximum: 100
        targetContexts:
          $ref: "#/components/schemas/LowDLRANUEThptContext"

    LowDLRANUEThptContext:
      type: object
      properties:
        contextAttribute:
          type: string
          enum:
            - LowDLRANUEThptThreshold
        contextCondition:
          type: string
          enum:
            - Is_less_than
        contextValueRange:
          type: number
   #-------Definition of the concrete ExpectationTarget  dataType----------#  
   
   #-------Definition of the concrete ObjectTarget dataType----------------#  
    CoverageAreaPolygonContext:
      type: object
      properties:
        contextAttribute:
          type: string
          enum:
            - CoverageAreaPolygon
        contextCondition:
          type: string
          enum:
            - Is_within_the_range
        contextValueRange:
          type: array
          items:
            $ref: "#/components/schemas/CoverageArea"
    CoverageArea:
      type: string
    CoverageTACContext:
      type: object
      properties:
        contextAttribute:
          type: string
          enum:
            - CoverageAreaTac
        contextCondition:
          type: string
          enum:
            - Is_within_the_range
        contextValueRange:
          type: array
          items:
            $ref: "nrNrm.yaml#/components/schemas/NrTac"

    PLMNContext:
      type: object
      properties:
        contextAttribute:
          type: string
          enum:
            - PLMN
        contextCondition:
          type: string
          enum:
            - Is_within_the_range
        contextValueRange:
          type: array
          items:
            $ref: "nrNrm.yaml#/components/schemas/PlmnId"

    NRFqBandContext:
      type: object
      properties:
        contextAttribute:
          type: string
          enum:
            - NRFqBand
        contextCondition:
          type: string
          enum:
            - Is_within_the_range
        contextValueRange:
          type: array
          items:
            type: string

    RATContext:
      type: object
      properties:
        contextAttribute:
          type: string
          enum:
            - RAT
        contextCondition:
          type: string
          enum:
            - Is_within_the_range
        contextValueRange:
          type: array
          items:
            type: string
            enum:
              - UTRAN
              - EUTRAN
              - NR
   #-------Definition of the concrete ObjectTarget dataType----------------#
   
   #------Definition of JSON arrays for name-contained IOCs ---------------#
                                
    Intent-Multiple:
      type: array
      items:
        $ref: '#/components/schemas/Intent-Single'              
   #------Definition of JSON arrays for name-contained IOCs --------------#
   
   #----- Definitions in TS 28.312 for TS 28.532 --------------------------#
    resources-intentNrm:
      oneOf:
       - $ref: '#/components/schemas/Intent-Single'
   #----- Definitions in TS 28.312 for TS 28.532 --------------------------#