summaryrefslogtreecommitdiffstats
path: root/kubernetes/dcaegen2-services/resources/external/schemas/sa88-rel16/coslaNrm.yaml
blob: 48c85eca18c8f8b9ead1f4260eadf72cb3c9f232 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
openapi: 3.0.3

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; 5G NRM, Slice NRM
  url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.536/

paths: {}

components:

  schemas:

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

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

    TimeUnit:
      anyOf:
        - type: string
          enum:
            - SECOND
            - MINUTE
            - HOUR
            - DAY
        - type: string

    OperationalState:
      anyOf:
        - type: string
          enum:
            - ENABLED
            - DISABLED
        - type: string

    AdministrativeState:
      anyOf:
        - type: string
          enum:
            - LOCKED
            - SHUTTING_DOWN
            - UNLOCKED
        - type: string

    ObservationTime:
      type: integer

    ObservationTimePeriod:
      type: object

    AssuranceControlLoopGoal:
      type: object

    AssuranceGoalStatus:
      type: object

    AssuranceGoalStatusObserved:
      type: object

    AssuranceGoalStatusPredicted:
      type: object

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

    AssuranceControlLoop-Single:
      allOf:
        - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr'
        - type: object
          properties:
            operationalState:
              $ref: '#/components/schemas/OperationalState'
            administrativeState:
              $ref: '#/components/schemas/AdministrativeState'
            controlLoopLifeCyclePhase:
              $ref: '#/components/schemas/ControlLoopLifeCyclePhase'
            observationTimePeriod:
              allOf:
                - $ref: '#/components/schemas/ObservationTimePeriod'
                - type: object
                  properties:
                    observationTime:
                      $ref: '#/components/schemas/ObservationTime'
                    timeUnit:
                      $ref: '#/components/schemas/TimeUnit'
            AssuranceGoalStatus:
              allOf:
                - $ref: '#/components/schemas/AssuranceGoalStatus'
                - type: object
                  properties:
                    assuranceGoalStatusObserved:
                      $ref: '#/components/schemas/AssuranceGoalStatusObserved'
                    assuranceGoalStatusPredicted:
                      $ref: '#/components/schemas/AssuranceGoalStatusPredicted'
            managedEntity-Multiple:
              $ref: '#/components/schemas/ManagedEntity-Multiple'
            assuranceControlLoopGoal:
              $ref: '#/components/schemas/AssuranceControlLoopGoal'

    ManagedEntity-Single:
      oneOf:
        - $ref: 'sliceNrm.yaml#/components/schemas/NetworkSlice'
        - $ref: 'sliceNrm.yaml#/components/schemas/NetworkSliceSubnet'
        - $ref: 'genericNrm.yaml#/components/schemas/ManagedFunction-Attr'
        - $ref: 'genericNrm.yaml#/components/schemas/ManagedElement-Attr'

#-------- Definition of JSON arrays for name-contained IOCs ----------------------

    AssuranceControlLoop-Multiple:
      type: array
      items:
        $ref: '#/components/schemas/AssuranceControlLoop-Single'

    ManagedEntity-Multiple:
      type: array
      items:
        $ref: '#/components/schemas/ManagedEntity-Single'