Commit 569879c6 authored by lengyelb's avatar lengyelb
Browse files

add back all yaml 3

parent 368ff6eb
Loading
Loading
Loading
Loading

OpenAPI/5gcNrm.yaml

0 → 100644
+1978 −0

File added.

Preview size limit exceeded, changes collapsed.

+277 −0
Original line number Diff line number Diff line
openapi: 3.0.1
info:
  title: TS 28.550 Performance Measurement Job Control Service
  version: 16.8.0
  description: >-
    OAS 3.0.1 specification of the Performance Measurement Job Control Service
    @ 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC).
    All rights reserved.
externalDocs:
  description: 3GPP TS 28.550 V16.8.0; Performance assurance
  url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.550/
servers:
  - url: '{MnSRoot}/PerfMeasJobCtrlMnS/{MnSVersion}'
    variables:
      MnSRoot:
        description: See clause 4.4.2 of TS 32.158
        default: http://example.com/3GPPManagement
      MnSVersion:
        description: Version number of the OpenAPI definition
        default: XXX
paths:
  /measJobs:
    post:
      summary: Create a measurement job
      description: To create a measurement job the representation of the measurement job is POSTed on the /measJobs collection resource.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/measJobCreation-RequestType'
      responses:
        '201':
          description: Success case ("201 Created"). The representation of the newly created measurement job resource shall be returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/measJobCreation-ResponseType'
        '202':
          description: Partial success case ("202 Partically created"). The representation of the newly created measurement job resource with unsupported list shall be returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/measJobCreation-ResponseType'
        default:
          description: Error case.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error-ResponseType'
    get:
      summary: Read resources of measurement jobs
      description: 'With HTTP GET, resources of measurement jobs are read. The resources to be read are identified with the path component (base resource) and the query component (jobIdList) of the URI. The fields query component allows to select the resource properties to be returned.'
      parameters:
        - name: jobIdList
          in: query
          description: This parameter identifies the list of jobId to select the resources from the collection resources identified with the path component of the URI.
          required: true
          schema:
            type: array
            items:
              type: string
      responses:
        '200':
          description: 'Success case ("200 OK"). The resources identified in the request for retrieval are returned in the response message body. In case the fields query parameter is used, the selected resources are returned.'
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/measJobsRetrieval-ResponseType'
        default:
          description: Error case.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error-ResponseType'
  '/measJobs/{jobId}':
    get:
      summary: Read resource of a single measurement job
      description: 'With HTTP GET, resource of a measurement job is read. The resource to be read is identified with the path component of the URI.'
      parameters:
        - name: jobId
          in: path
          description: Identifies the measurement job to be read.
          required: true
          schema:
            $ref: '#/components/schemas/uri-Type'
      responses:
        '200':
          description: 'Success case ("200 OK"). The resource identified in the path for retrieval is returned in the response message body. '
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/measJobsRetrieval-ResponseType'
        default:
          description: Error case.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error-ResponseType'
    delete:
      summary: Delete a single measurement job
      description: The measurement job is deleted by deleting the corresponding measurement job resource. The resource to be deleted is identified with the path component of the URI.
      parameters:
        - name: jobId
          in: path
          description: Identifies the measurement job to be deleted.
          required: true
          schema:
            $ref: '#/components/schemas/uri-Type'
      responses:
        '204':
          description: Success case ("204 No Content"). The measurement job resource has been deleted. The response message body is absent.
        default:
          description: Error case.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error-ResponseType'
components:
  schemas:
    dateTime-Type:
      type: string
      format: date-Time
    uri-Type:
      type: string
    measJobCreation-RequestType:
      type: object
      properties:
        iOCName:
          type: string
        iOCInstanceList:
          type: array
          items:
            $ref: '#/components/schemas/uri-Type'
        measurementCategoryList:
          type: array
          items:
            type: string
        reportingMethod:
          $ref: '#/components/schemas/reportingMethod-Type'
        granularityPeriod:
          type: integer
        reportingPeriod:
          type: integer
        startTime:
          $ref: '#/components/schemas/dateTime-Type'
        stopTime:
          $ref: '#/components/schemas/dateTime-Type'
        schedule:
          $ref: '#/components/schemas/schedule-Type'
        streamTarget:
          type: string
        priority:
          $ref: '#/components/schemas/priority-Type'
        reliability:
          type: string
    measJobCreation-ResponseType:
      type: object
      properties:
        unsupportedList:
          type: array
          items:
            $ref: '#/components/schemas/unsupportedMeas-Type'
    measJobsRetrieval-ResponseType:
      type: object
      properties:
        jobInfoList:
          type: array
          items:
            $ref: '#/components/schemas/measJobInfo-ResourceType'
    error-ResponseType:
      type: object
      properties:
        error:
          type: object
          properties:
            errorInfo:
              type: string
    measJobInfo-ResourceType:
      type: object
      properties:
        href:
          $ref: '#/components/schemas/uri-Type'
        iOCName:
          type: string
        iOCInstanceList:
          type: array
          items:
            $ref: '#/components/schemas/uri-Type'
        measurementCategoryList:
          type: array
          items:
            type: string
        reportingMethod:
          $ref: '#/components/schemas/reportingMethod-Type'
        granularityPeriod:
          type: integer
        reportingPeriod:
          type: integer
        startTime:
          $ref: '#/components/schemas/dateTime-Type'
        stopTime:
          $ref: '#/components/schemas/dateTime-Type'
        schedule:
          $ref: '#/components/schemas/schedule-Type'
        streamTarget:
          type: string
        priority:
          $ref: '#/components/schemas/priority-Type'
        reliability:
          type: string
    schedule-Type:
      type: object
      properties:
        scheduleOption:
          $ref: '#/components/schemas/scheduleOption-Type'
        dailySchedule:
          type: array
          items:
            $ref: '#/components/schemas/timeInterval-Type'
        weeklySchedule:
          type: array
          items:
            $ref: '#/components/schemas/scheduleOfDay-Type'
    timeInterval-Type:
      type: object
      properties:
        intervalStart:
          type: string
          format: Time
        intervalEnd:
          type: string
          format: Time
    scheduleOfDay-Type:
      type: object
      properties:
        dayOfWeek:
          $ref: '#/components/schemas/dayOfWeek-Type'
        intervalsOfDay:
          type: array
          items:
            $ref: '#/components/schemas/timeInterval-Type'
    unsupportedMeas-Type:
      type: object
      properties:
        iOCInstance:
          $ref: '#/components/schemas/uri-Type'
        measurementTypeName:
          type: string
        reason:
          type: string
    reportingMethod-Type:
      type: string
      enum:
        - file
        - streaming
    priority-Type:
      type: string
      enum:
        - low
        - medium
        - high
    scheduleOption-Type:
      type: string
      enum:
        - daily
        - weekly
    dayOfWeek-Type:
      type: string
      enum:
        - Monday
        - Tuesday
        - Wednesday
        - Thursday
        - Friday
        - Saturday
        - Sunday

OpenAPI/comDefs.yaml

0 → 100644
+182 −0
Original line number Diff line number Diff line
openapi: 3.0.1
info:
  title: Common Type Definitions
  version: 16.8.0
  description: >-
    OAS 3.0.1 specification of common type definitions in the Generic NRM
    © 2021, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC).
    All rights reserved.
externalDocs:
  description: 3GPP TS 28.623; Generic NRM; Common type definitions
  url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.623/
paths: {}
components:
  schemas:
  
    Float:
      type: number
      format: float
    DateTime:
      type: string
      format: date-time
    Latitude:
      type: number
      format: float
      minimum: -90
      maximum: 90
    Longitude:
      type: number
      format: float
      minimum: -180
      maximum: 180

    Dn:
      type: string
    DnList:
      type: array
      items:
        $ref: '#/components/schemas/Dn'

    Mcc:
      type: string
      pattern: '^[0-9]{3}$'
    Mnc:
      type: string
      pattern: '^[0-9]{2,3}$'
    Nid:
      type: string
      pattern: '^[A-Fa-f0-9]{11}$'
    PlmnId:
      type: object
      properties:
        mcc:
          $ref: '#/components/schemas/Mcc'
        mnc:
          $ref: '#/components/schemas/Mnc'
    Tac:
      type: string
      pattern: '(^[A-Fa-f0-9]{4}$)|(^[A-Fa-f0-9]{6}$)'
    EutraCellId:
      type: string
      pattern: '^[A-Fa-f0-9]{7}$'
    NrCellId:
      type: string
      pattern: '^[A-Fa-f0-9]{9}$'

    Fqdn:
      type: string
    Ipv4Addr:
      type: string
      pattern: '^(([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])$'
      example: '198.51.100.1'
    Ipv6Addr:
      type: string
      allOf:
        - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))$'
        - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))$'
      example: '2001:db8:85a3::8a2e:370:7334'
    Ipv6Prefix:
      type: string
      allOf:
        - pattern: '^((:|(0?|([1-9a-f][0-9a-f]{0,3}))):)((0?|([1-9a-f][0-9a-f]{0,3})):){0,6}(:|(0?|([1-9a-f][0-9a-f]{0,3})))(\/(([0-9])|([0-9]{2})|(1[0-1][0-9])|(12[0-8])))$'
        - pattern: '^((([^:]+:){7}([^:]+))|((([^:]+:)*[^:]+)?::(([^:]+:)*[^:]+)?))(\/.+)$'
      example: '2001:db8:abcd:12::0/64'
    IpAddr:
      oneOf:
        - $ref: '#/components/schemas/Ipv4Addr'
        - $ref: '#/components/schemas/Ipv6Addr'
    HostAddr:
      #  This definition will be deprecated, when all occurances of HostAddr
      #  are replaced by Host.
      oneOf:
        - $ref: '#/components/schemas/Ipv4Addr'
        - $ref: '#/components/schemas/Ipv6Addr'
        - $ref: '#/components/schemas/Fqdn'
    Host:
      oneOf:
        - $ref: '#/components/schemas/IpAddr'
        - $ref: '#/components/schemas/Fqdn'
    Uri:
      type: string

    AdministrativeState:
      type: string
      enum:
        - LOCKED
        - UNLOCKED
    OperationalState:
      type: string
      enum:
        - ENABLED
        - DISABLED
    UsageState:
      type: string
      enum:
        - IDEL
        - ACTIVE
        - BUSY

    AttributeNameValuePairSet:
      description: >-
        The key of this map is the attribute name, and the value the attribute value.
      type: object
      minProperties: 1
      additionalProperties:
        nullable: true
    AttributeValueChangeSet:
      description: >-
        The first array item contains the attribute name value pairs with the new values,
        and the second array item the attribute name value pairs with the optional old values.
      type: array
      items:
        $ref: '#/components/schemas/AttributeNameValuePairSet'
        minItems: 1
        maxItems: 2

    Filter:
      description: >-
        The filter format shall be compliant to XPath 1.0.
      type: string
    SystemDN:
      type: string

    NotificationId:
      type: integer
    NotificationType:
      oneOf:
        - $ref: 'faultMnS.yaml#/components/schemas/AlarmNotificationTypes'
        - $ref: 'provMnS.yaml#/components/schemas/CmNotificationTypes'
        - $ref: 'perfMnS.yaml#/components/schemas/PerfNotificationTypes'
        - $ref: 'heartbeatNtf.yaml#/components/schemas/HeartbeatNotificationTypes'
        - $ref: 'fileDataReportingMnS.yaml#/components/schemas/FileNotificationTypes'
    NotificationHeader:
      type: object
      properties:
        href:
          $ref: '#/components/schemas/Uri'
        notificationId:
          $ref: '#/components/schemas/NotificationId'
        notificationType:
          $ref: '#/components/schemas/NotificationType'
        eventTime:
          $ref: '#/components/schemas/DateTime'
        systemDN:
          $ref: '#/components/schemas/SystemDN'
      required:
        - href
        - notificationId
        - notificationType
        - eventTime
        - systemDN

    ErrorResponse:
      description: >-
        Default schema for the response message body in case the request
        is not successful.
      type: object
      properties:
        error:
          type: object
          properties:
            errorInfo:
              type: string

OpenAPI/coslaNrm.yaml

0 → 100644
+152 −0
Original line number Diff line number Diff line
openapi: 3.0.2

info:
  title: coslaNrm
  version: 16.4.0
  description: 
    OAS 3.0.1 specification of the Cosla NRM
    © 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC).
    All rights reserved.

externalDocs:
  description: 3GPP TS 28.536 V16.4.0; Cosla NRM
  url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.536/

paths: {}

components:

  schemas:

#------------ Type definitions ---------------------------------------------------

    ControlLoopLifeCyclePhase:
      type: string
      enum:
        - PREPARATION
        - COMMISSIONING
        - OPERATION
        - DECOMMISSIONING

    ObservationTime:
      type: integer

    AssuranceGoalStatusObserved:
      type: string
      enum:
        - FULFILLED
        - NOT_FULFILLED

    AssuranceGoalStatusPredicted:
      type: string
      enum:
        - FULFILLED
        - NOT_FULFILLED

    AssuranceTarget:
      type: object
      properties:
        assuranceTargetName:
          type: string
        assuranceTargetValue:
          type: string
         
    AssuranceTargetList:
      type: array
      items:
         $ref: '#/components/schemas/AssuranceTarget'


#-------- Definition of concrete IOCs --------------------------------------------

    SubNetwork-Single:
      allOf:
        - $ref: 'genericNrm.yaml#/components/schemas/Top'
        - type: object
          properties:
            attributes:
              allOf:
                - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr'
        - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO'
        - type: object
          properties:
            AssuranceClosedControlLoop:
              $ref: '#/components/schemas/AssuranceClosedControlLoop-Multiple'
 
    ManagedElement-Single:
      allOf:
        - $ref: 'genericNrm.yaml#/components/schemas/Top'
        - type: object
          properties:
            attributes:
              allOf:
                - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-Attr'
        - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-ncO'
        - type: object
          properties:
            AssuranceClosedControlLoop:
              $ref: '#/components/schemas/AssuranceClosedControlLoop-Multiple'

    AssuranceClosedControlLoop-Single:
      allOf:
        - $ref: 'genericNrm.yaml#/components/schemas/Top'
        - type: object
          properties:
            attributes:
              type: object
              properties:
                    operationalState:
                      $ref: 'comDefs.yaml#/components/schemas/OperationalState'
                    administrativeState:
                      $ref: 'comDefs.yaml#/components/schemas/AdministrativeState'
                    controlLoopLifeCyclePhase:
                      $ref: '#/components/schemas/ControlLoopLifeCyclePhase'
            AssuranceGoal:
              $ref: '#/components/schemas/AssuranceGoal-Multiple'

    AssuranceGoal-Single:
      allOf:
        - $ref: 'genericNrm.yaml#/components/schemas/Top'
        - type: object
          properties:
            attributes:
              allOf:
                - type: object
                  properties:
                    observationTime:
                      $ref: '#/components/schemas/ObservationTime'
                    assuranceTargetList:
                      $ref: '#/components/schemas/AssuranceTargetList'
                    assuranceGoalStatusObserved:
                      $ref: '#/components/schemas/AssuranceGoalStatusObserved'
                    assuranceGoalStatusPredicted:
                      $ref: '#/components/schemas/AssuranceGoalStatusPredicted'
                    serviceProfileId:
                      type: string
                    sliceProfileId:
                      type: string
                    networkSliceRef:
                      $ref: 'comDefs.yaml#/components/schemas/Dn'
                    networkSliceSubnetRef:
                      $ref: 'comDefs.yaml#/components/schemas/Dn' 
                      
#-------- Definition of JSON arrays for name-contained IOCs ----------------------
                                
    AssuranceClosedControlLoop-Multiple:
      type: array
      items:
        $ref: '#/components/schemas/AssuranceClosedControlLoop-Single'                 
               
    AssuranceGoal-Multiple:
      type: array
      items:
        $ref: '#/components/schemas/AssuranceGoal-Single'   

#------------ Definitions in TS 28.536 for TS 28.623 ----------------------------- 

    resources-coslaNrm:
      oneOf:
       - $ref: '#/components/schemas/AssuranceClosedControlLoop-Single'
       - $ref: '#/components/schemas/AssuranceGoal-Single'    
       - $ref: '#/components/schemas/SubNetwork-Single'
       - $ref: '#/components/schemas/ManagedElement-Single'

OpenAPI/faultMnS.yaml

0 → 100644
+1058 −0

File added.

Preview size limit exceeded, changes collapsed.

Loading