blob: 9bf5319fc4acdc1db035176847e19988b4ab0946 [file] [log] [blame]
Michal Banka028e1c22021-05-10 11:00:39 +02001openapi: 3.0.1
2info:
3 title: Slice NRM
4 version: 16.8.0
5 description: >-
6 OAS 3.0.1 specification of the Slice NRM
7 @ 2020, 3GPP Organizational Partners (ARIB, ATIS, CCSA, ETSI, TSDSI, TTA, TTC).
8 All rights reserved.
9externalDocs:
10 description: 3GPP TS 28.541 V16.4.0; 5G NRM, Slice NRM
11 url: http://www.3gpp.org/ftp/Specs/archive/28_series/28.541/
12paths: {}
13components:
14 schemas:
15
16#------------ Type definitions ---------------------------------------------------
17
18 Float:
19 type: number
20 format: float
21 MobilityLevel:
22 type: string
23 enum:
24 - STATIONARY
25 - NOMADIC
26 - RESTRICTED MOBILITY
27 - FULLY MOBILITY
28 SharingLevel:
29 type: string
30 enum:
31 - SHARED
32 - NON-SHARED
33 NetworkSliceSharingIndicator:
34 type: string
35 enum:
36 - SHARED
37 - NON-SHARED
38 PerfReqEmbb:
39 type: object
40 properties:
41 expDataRateDL:
42 type: number
43 expDataRateUL:
44 type: number
45 areaTrafficCapDL:
46 type: number
47 areaTrafficCapUL:
48 type: number
49 userDensity:
50 type: number
51 activityFactor:
52 type: number
53 PerfReqEmbbList:
54 type: array
55 items:
56 $ref: '#/components/schemas/PerfReqEmbb'
57 PerfReqUrllc:
58 type: object
59 properties:
60 cSAvailabilityTarget:
61 type: number
62 cSReliabilityMeanTime:
63 type: string
64 expDataRate:
65 type: number
66 msgSizeByte:
67 type: string
68 transferIntervalTarget:
69 type: string
70 survivalTime:
71 type: string
72 PerfReqUrllcList:
73 type: array
74 items:
75 $ref: '#/components/schemas/PerfReqUrllc'
76 PerfReq:
77 oneOf:
78 - $ref: '#/components/schemas/PerfReqEmbbList'
79 - $ref: '#/components/schemas/PerfReqUrllcList'
80 Category:
81 type: string
82 enum:
83 - CHARACTER
84 - SCALABILITY
85 Tagging:
86 type: array
87 items:
88 type: string
89 enum:
90 - PERFORMANCE
91 - FUNCTION
92 - OPERATION
93
94
95 Exposure:
96 type: string
97 enum:
98 - API
99 - KPI
100 ServAttrCom:
101 type: object
102 properties:
103 category:
104 $ref: '#/components/schemas/Category'
105 tagging:
106 $ref: '#/components/schemas/Tagging'
107 exposure:
108 $ref: '#/components/schemas/Exposure'
109 Support:
110 type: string
111 enum:
112 - NOT SUPPORTED
113 - SUPPORTED
114 DelayTolerance:
115 type: object
116 properties:
117 servAttrCom:
118 $ref: '#/components/schemas/ServAttrCom'
119 support:
120 $ref: '#/components/schemas/Support'
121 DeterministicComm:
122 type: object
123 properties:
124 servAttrCom:
125 $ref: '#/components/schemas/ServAttrCom'
126 availability:
127 $ref: '#/components/schemas/Support'
128 periodicityList:
129 type: string
130 DLThptPerSlice:
131 type: object
132 properties:
133 servAttrCom:
134 $ref: '#/components/schemas/ServAttrCom'
135 guaThpt:
136 $ref: '#/components/schemas/Float'
137 maxThpt:
138 $ref: '#/components/schemas/Float'
139 DLThptPerUE:
140 type: object
141 properties:
142 servAttrCom:
143 $ref: '#/components/schemas/ServAttrCom'
144 guaThpt:
145 $ref: '#/components/schemas/Float'
146 maxThpt:
147 $ref: '#/components/schemas/Float'
148 ULThptPerSlice:
149 type: object
150 properties:
151 servAttrCom:
152 $ref: '#/components/schemas/ServAttrCom'
153 guaThpt:
154 $ref: '#/components/schemas/Float'
155 maxThpt:
156 $ref: '#/components/schemas/Float'
157 ULThptPerUE:
158 type: object
159 properties:
160 servAttrCom:
161 $ref: '#/components/schemas/ServAttrCom'
162 guaThpt:
163 $ref: '#/components/schemas/Float'
164 maxThpt:
165 $ref: '#/components/schemas/Float'
166 MaxPktSize:
167 type: object
168 properties:
169 servAttrCom:
170 $ref: '#/components/schemas/ServAttrCom'
171 maxsize:
172 type: integer
173 MaxNumberofConns:
174 type: object
175 properties:
176 servAttrCom:
177 $ref: '#/components/schemas/ServAttrCom'
178 nOofConn:
179 type: integer
180 KPIMonitoring:
181 type: object
182 properties:
183 servAttrCom:
184 $ref: '#/components/schemas/ServAttrCom'
185 kPIList:
186 type: string
187 UserMgmtOpen:
188 type: object
189 properties:
190 servAttrCom:
191 $ref: '#/components/schemas/ServAttrCom'
192 support:
193 $ref: '#/components/schemas/Support'
194 V2XCommModels:
195 type: object
196 properties:
197 servAttrCom:
198 $ref: '#/components/schemas/ServAttrCom'
199 v2XMode:
200 $ref: '#/components/schemas/Support'
201 TermDensity:
202 type: object
203 properties:
204 servAttrCom:
205 $ref: '#/components/schemas/ServAttrCom'
206 density:
207 type: integer
208 NsInfo:
209 type: object
210 properties:
211 nsInstanceId:
212 type: string
213 nsName:
214 type: string
215 ServiceProfile:
216 type: object
217 properties:
guillaume.lambert30ec3902021-09-14 12:32:24 +0200218 serviceProfileId:
Michal Banka028e1c22021-05-10 11:00:39 +0200219 type: string
220 plmnInfoList:
221 $ref: 'nrNrm.yaml#/components/schemas/PlmnInfoList'
222 maxNumberofUEs:
223 type: number
224 latency:
225 type: number
226 uEMobilityLevel:
227 $ref: '#/components/schemas/MobilityLevel'
228 sst:
229 $ref: 'nrNrm.yaml#/components/schemas/Sst'
230 networkSliceSharingIndicator:
231 $ref: '#/components/schemas/NetworkSliceSharingIndicator'
232 availability:
233 type: number
234 delayTolerance:
235 $ref: '#/components/schemas/DelayTolerance'
236 deterministicComm:
237 $ref: '#/components/schemas/DeterministicComm'
238 dLThptPerSlice:
239 $ref: '#/components/schemas/DLThptPerSlice'
240 dLThptPerUE:
241 $ref: '#/components/schemas/DLThptPerUE'
242 uLThptPerSlice:
243 $ref: '#/components/schemas/ULThptPerSlice'
244 uLThptPerUE:
245 $ref: '#/components/schemas/ULThptPerUE'
246 maxPktSize:
247 $ref: '#/components/schemas/MaxPktSize'
248 maxNumberofConns:
249 $ref: '#/components/schemas/MaxNumberofConns'
250 kPIMonitoring:
251 $ref: '#/components/schemas/KPIMonitoring'
252 userMgmtOpen:
253 $ref: '#/components/schemas/UserMgmtOpen'
254 v2XModels:
255 $ref: '#/components/schemas/V2XCommModels'
256 coverageArea:
257 type: string
258 termDensity:
259 $ref: '#/components/schemas/TermDensity'
260 activityFactor:
261 $ref: '#/components/schemas/Float'
262 uESpeed:
263 type: integer
264 jitter:
265 type: integer
266 survivalTime:
267 type: string
268 reliability:
269 type: string
270 SliceProfile:
271 type: object
272 properties:
273 sliceProfileId:
274 type: string
275
276 plmnInfoList:
277 $ref: 'nrNrm.yaml#/components/schemas/PlmnInfoList'
278 perfReq:
279 $ref: '#/components/schemas/PerfReq'
280 maxNumberofUEs:
281 type: number
282 coverageAreaTAList:
283 $ref: '5gcNrm.yaml#/components/schemas/TACList'
284 latency:
285 type: number
286 uEMobilityLevel:
287 $ref: '#/components/schemas/MobilityLevel'
288 resourceSharingLevel:
289 $ref: '#/components/schemas/SharingLevel'
290
291 IpAddress:
292 oneOf:
293 - $ref: 'genericNrm.yaml#/components/schemas/Ipv4Addr'
294 - $ref: 'genericNrm.yaml#/components/schemas/Ipv6Addr'
295 ServiceProfileList:
296 type: array
297 items:
298 $ref: '#/components/schemas/ServiceProfile'
guillaume.lambert30ec3902021-09-14 12:32:24 +0200299
Michal Banka028e1c22021-05-10 11:00:39 +0200300 SliceProfileList:
301 type: array
302 items:
303 $ref: '#/components/schemas/SliceProfile'
304
305#------------ Definition of concrete IOCs ----------------------------------------
306
307 SubNetwork-Single:
308 allOf:
309 - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr'
310 - type: object
311 properties:
312 attributes:
313 allOf:
314 - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr'
315 - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-ncO'
316 - type: object
317 properties:
318 SubNetwork:
319 $ref: '#/components/schemas/SubNetwork-Multiple'
320 NetworkSlice:
321 $ref: '#/components/schemas/NetworkSlice-Multiple'
322 NetworkSliceSubnet:
323 $ref: '#/components/schemas/NetworkSliceSubnet-Multiple'
324 EP_Transport:
325 $ref: '#/components/schemas/EP_Transport-Multiple'
326
327 NetworkSlice-Single:
328 allOf:
329 - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr'
330 - type: object
331 properties:
332 attributes:
333 allOf:
334 - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr'
335 - type: object
336 properties:
337 networkSliceSubnetRef:
338 $ref: 'comDefs.yaml#/components/schemas/Dn'
339 operationalState:
340 $ref: 'comDefs.yaml#/components/schemas/OperationalState'
341 administrativeState:
342 $ref: 'comDefs.yaml#/components/schemas/AdministrativeState'
343 serviceProfileList:
344 $ref: '#/components/schemas/ServiceProfileList'
345
346 NetworkSliceSubnet-Single:
347 allOf:
348 - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr'
349 - type: object
350 properties:
351 attributes:
352 allOf:
353 - $ref: 'genericNrm.yaml#/components/schemas/SubNetwork-Attr'
354 - type: object
355 properties:
356 managedFunctionRefList:
357 $ref: 'comDefs.yaml#/components/schemas/DnList'
358 networkSliceSubnetRefList:
359 $ref: 'comDefs.yaml#/components/schemas/DnList'
360 operationalState:
361 $ref: 'comDefs.yaml#/components/schemas/OperationalState'
362 administrativeState:
363 $ref: 'comDefs.yaml#/components/schemas/AdministrativeState'
364 nsInfo:
365 $ref: '#/components/schemas/NsInfo'
366 sliceProfileList:
367 $ref: '#/components/schemas/SliceProfileList'
368 epTransportRefList:
369 $ref: 'comDefs.yaml#/components/schemas/DnList'
370
371 EP_Transport-Single:
372 allOf:
373 - $ref: 'genericNrm.yaml#/components/schemas/Top-Attr'
374 - type: object
375 properties:
376 attributes:
377 type: object
378 properties:
379 ipAddress:
380 $ref: '#/components/schemas/IpAddress'
381 logicInterfaceId:
guillaume.lambert30ec3902021-09-14 12:32:24 +0200382 type: string
Michal Banka028e1c22021-05-10 11:00:39 +0200383 nextHopInfo:
guillaume.lambert30ec3902021-09-14 12:32:24 +0200384 type: string
Michal Banka028e1c22021-05-10 11:00:39 +0200385 qosProfile:
guillaume.lambert30ec3902021-09-14 12:32:24 +0200386 type: string
Michal Banka028e1c22021-05-10 11:00:39 +0200387 epApplicationRefs:
388 $ref: 'comDefs.yaml#/components/schemas/DnList'
guillaume.lambert30ec3902021-09-14 12:32:24 +0200389
Michal Banka028e1c22021-05-10 11:00:39 +0200390#-------- Definition of JSON arrays for name-contained IOCs ----------------------
391 SubNetwork-Multiple:
392 type: array
393 items:
394 $ref: '#/components/schemas/SubNetwork-Single'
395
396 NetworkSlice-Multiple:
397 type: array
398 items:
399 $ref: '#/components/schemas/NetworkSlice-Single'
400
401 NetworkSliceSubnet-Multiple:
402 type: array
403 items:
404 $ref: '#/components/schemas/NetworkSliceSubnet-Single'
405
406 EP_Transport-Multiple:
407 type: array
408 items:
409 $ref: '#/components/schemas/EP_Transport-Single'
410
411#------------ Definitions in TS 28.541 for TS 28.532 -----------------------------
412
413 resources-sliceNrm:
414 oneOf:
415 - $ref: '#/components/schemas/SubNetwork-Single'
416 - $ref: '#/components/schemas/NetworkSlice-Single'
417 - $ref: '#/components/schemas/NetworkSliceSubnet-Single'
418 - $ref: '#/components/schemas/EP_Transport-Single'