Commit 4af3ea30 authored by gautamd's avatar gautamd Committed by ruiyue
Browse files

Upload New File

parent f04722f1
Loading
Loading
Loading
Loading
+136 −0
Original line number Diff line number Diff line
openapi: 3.0.1
info:
  title: 3GPP NRM
  version: 18.5.0
  description: >-
    OAS 3.0.1 specification of the DSORecovery NRM
    © 2023, 3GPP Organizational DSORecovery Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC).
    All rights reserved.
externalDocs:
  description: 3GPP TS 28.318; DSORecovery NRM
  url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.318/
paths: {}
components:
  schemas:
  
#-------- Definition of types-----------------------------------------------------
    DsoInterventionInfo:
      type: object
      properties:
        dsoFeederRestoreTime:
          $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime'
        dsoRequiredInterventionDuration:
          type: integer
        isDsoPriorityRecoveryLocation:
          type: boolean
    ServiceRestoreInfo:
      type: object
      properties:
        dsoRestoreTimeActual:
          $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime'
        isDsoRestoreComplete:
          type: boolean
    ServiceLocationIdentifier:
      type: object
      properties:
        geoCoordinate:
          $ref: 'TS28623_ComDefs.yaml#/components/schemas/GeoCoordinate'
        energySupplyId:
          type: string
    UpsInfo:
      type: object
      properties:
        isUpsAvailable:
          type: boolean
        totalUpsBackupDuration:
          type: integer
        remainingUpsBackupDuration:
          type: integer
        baseStationId:
          type: string




#-------- Definition of concrete IOCs --------------------------------------------
    MnS:
      oneOf:
        - type: object
          properties:
            SubNetwork:
              $ref: '#/components/schemas/SubNetwork-Multiple'

    SubNetwork-Single:
      allOf:
        - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top'
        - type: object
          properties:
            attributes:
              allOf:
                - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SubNetwork-Attr'
        - type: object
          properties:
            Subnetwork:
              $ref: '#/components/schemas/SubNetwork-Multiple'
            DsoRapidRecovery:
              $ref: '#/components/schemas/DsoRapidRecovery-Multiple'
        - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/SubNetwork-ncO'

    DsoRapidRecovery-Single:
      allOf:
        - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top'
        - type: object
          properties:
            dsoOutStartTime:
              $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime'
            dsoRestoreTimeExpected:
              $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime'
            dsoRapidInterventionInfo:
              $ref: '#/components/schemas/DsoInterventionInfo'
            dsoServiceRestoreInfo:
              $ref: '#/components/schemas/ServiceRestoreInfo'
            dsoRapidRecoveryLocation:
              $ref: '#/components/schemas/ServiceLocationIdentifier'
            upsInfo:
              $ref: '#/components/schemas/UpsInfo'       
        - type: object
          properties:
            MnoRapidInterventionInfo:
              $ref: '#/components/schemas/MnoRapidInterventionInfo-Multiple'
    MnoRapidInterventionInfo-Single:
      allOf:
        - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/Top'
        - type: object
          properties:
            mnoInterventionTime:
              $ref: 'TS28623_ComDefs.yaml#/components/schemas/DateTime'
            mnoInterventionDuration:
              type: integer
            isMnoInterventionPossible:
              type: boolean



#-------- Definition of JSON arrays for name-contained IOCs ----------------------                               
          
    SubNetwork-Multiple:
      type: array
      items:
        $ref: '#/components/schemas/SubNetwork-Single'
    DsoRapidRecovery-Multiple:
      type: array
      items:
        $ref: '#/components/schemas/DsoRapidRecovery-Single'
    MnoRapidInterventionInfo-Multiple:
      type: array
      items:
        $ref: '#/components/schemas/MnoRapidInterventionInfo-Single'
        
#--------------------------------- Definition ------------------------------------                          

    resources-DSORecovery:
      oneOf:
        - $ref: '#/components/schemas/MnS'
        - $ref: '#/components/schemas/SubNetwork-Single'
        - $ref: '#/components/schemas/DsoRapidRecovery-Single'
        - $ref: '#/components/schemas/MnoRapidInterventionInfo-Single'