Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Jira Ref. 

Jira Legacy
serverSystem Jira
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-277

Analyze all API GET calls listed on this page: https://wikilf-onap.onapatlassian.orgnet/wiki/display/DW/CPS+APIs

(#2 and #21 have already been analyzed and required queries been identified)

...

  1. Wiki Page with the conclusion for each API call
  2. Add new query functionality if needed to  https://wiki.onap.org/display/DW/CPS-235%3A+Overview+of+%28early%29+CPS+Query+and+Update+Scenariosto CPS-235: Overview of (early) CPS Query
  3. Review with the full team

...



No

API endpoint

HTTP Method

Model

Description

CPS Path Query Description

Comments and Status

Jira
1./api​/sdnc-config-db​/v4​/nearrtric-list​/{trackingArea}
GET
cps ran schema model

Get ​complete details associated with a list of NearRT RIC's

andcorresponding

and corresponding managed elements



xpath : /cps-ran-schema/NearRTRIC[@idNearRTRIC="22"]/GNBDUFunction[@idGNBDUFunction="6"]/NRCellDU[@idNRCellDU="15548"]/

attributes : {"nRPCI": 12, "nRTAC": 310, "cellLocalId": 15548}

Note. nRTAC is not the key!


//NRCellDU[ ? ]

Proposed cps query, 2 step approach (inside CPS Core):

  1. Retrieve all unique NRCellDU list entries based on xpath postfix and attribute key and value. Options:
    1. /cps-ran-schema/NearRTRIC[?]/GNBDUFunction[?]/NRCellDU[@nRTAC=310]
      i.e. Match full xpath with wildcard for each list-ancestor list key
      Hard to implement, more model knowledge needed
    2. //NRCellDU[@nRTAC=310]
      i.e. xpath ends with NRCellDU[?] and attributes contain nRTAC=310
      Already have similar? existing code for this in: FragmentRepository.getByAnchorAndXpathAndLeafAttributes()

  2.  Retrieve unique NearRTRIC ancestors (using bookstore generic examples)
    1. //book[@name="Feersum Endjinn"]/ancestor::*[position()=3]
      Less flexible, less readable
    2. //book[@name="Chapters"]/ancestor::bookstore 
      //NRCellDU[@nRTAC=310]/ancestor::NearRTRIC
Preferred
    1. The preferred option, enough information an unambiguous enough to correctly resolve the query for
tis
    1. this API call

e.g.

/dataspace/"NFP-Operational"/anchor/"ran-slicing"

From our discussion with Ruslan Kashapov and Niamh Core, we came to an understanding that we would require a special query mechanism that can retrieve the parent from its attribute values.


<Ahila> Please note the below:

  1. Fetch the List of Cells using API #2
  2. Fetch the parents and grandparents pertaining to those cells

For team review

Jira Legacy
serverSystem Jira
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-305

2./api/sdnc-config-db/v4/cell-list/{trackingArea}
GET
cps ran schema modelGet a list of cells that correspond to a specific tracking area
Done
9./api/sdnc-config-db/v4/du-list/{sNSSAI}
GET
cps ran schema model

Fetch the DU functions for sNSSAI


Path - cps-ran-schema/NearRTRIC/GNBDUFunction/NRCellDU/attributes/pLMNInfoList/sNSSAIList/sNssai

Query - get ancestor GNBDUFunctionbased on the sNSSAI. 

9,10 and 12 belong to the cps ran schema model

//sNSSAIList[@sNssai=1]/ancestor::GNBDUFunction

Needs clarification from the network slicing team

NOTE - sNssai is the key

For team review

Possible same solution as #1.


10./api/sdnc-config-db/v4/du-cell-list/{sNSSAI}
GET
cps ran schema model

Fetch DU Cells for sNSSAI


Path - cps-ran-schema/NearRTRIC/GNBDUFunction/NRCellDU/attributes/pLMNInfoList/sNSSAIList/sNssai

Query - get ancestor NRCellDU based on the sNSSAI.

//sNSSAIList[@sNssai=1]/ancestor::NRCellDU

Needs clarification from the network slicing team

NOTE - sNssai is the key

For team review

Possible same solution as #1.


11./api/sdnc-config-db/v4/profile-config/{sNSSAI}
GET

Fetch slice profile configuration for
a
an sNSSAINot NeededIgnore this API
12./api/sdnc-config-db/v4/slice-config/{sNSSAI}
GET
cps ran schema model

Fetch NearRTRIC configuration for a sNSSAI

cps



Path - cps-ran-schema/NearRTRIC[ ? ]/attributes/pLMNInfoList[ ? ]/sNSSAIList/sNssai

Query -

get a sibling value based on the given sNSSAI.

Get the sibling configData of sNSSAI from the sNSSAIList.

//sNSSAIList[@sNssai=1]/ (include children)

This will use query 3 CPS-235: Overview of (early) CPS Query

and Update ScenariosNeeds clarification from the network slicing team

NOTE - sNssai is the key

For team review

Jira Legacy
serverSystem Jira
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-309

13./api/sdnc-config-db/v4/subscriber-details/{sNSSAI}
GET

Fetch subscriber details
Ignore this API
19.api/sdnc-config-db/v4/nearrtric/{ranNFNSSIId}
GET
cps ran schema model

Fetches the NearRTRICs for the RANNFNSSI

The RANNFNSSI is stored within the ranNFNSSIIdList.//ranNFNSSIIdList[@RANNFNSSI =1


Uses cps ran schema model

Query - We need a query that will get the immediate parent (NearRTRICs) based on attribute values from the list of ranNFNSSIIdList (child).

We may need to add a new cps query CPS-235: Overview of (early) CPS Query and Update Scenarios to 

get a parent value based on the ranNFNSSIId value

//ranNFNSSIIdList[@RANNFNSSI =1]/ancestor::NearRTRICs

NOTE Model has changed, ranNFNSSIIdList representation now is a leaf-list, thus new type of query is needed 'leaf-list contains a given value'
Here are 2 possible options:

  1. //attributes/ranNFNSSIIdList/element[normalize-space(text())= "ac8ca1a9-e1ec-4480-8720-c74e92566885"]/ancestor::NearRTRIC
  2. //attributes/ranNFNSSIIdList/element[text()="ac8ca1a9-e1ec-4480-8720-c74e92566885"]/ancestor::
NearRTRICs
  1. NearRTRIC


For team review

Possible same solution as #1.

Jira Legacy
serverSystem Jira
serverId4733707d-2057-3a0f-ae5e-4fd8aff50176
keyCPS-452

20./api/sdnc-config-db/v4/plmn/{sliceProfileId}
GET
Uses cps ran inventory model

Returns PLMN id for the sliceProfile

The


Uses cps ran

inventory

model

was used for this study.

Query - We need the following query; based on the sliceProfileId key we will get the sibling that is a pLMIDList.

This will use API 2 CPS-235: Overview of (early) CPS Query and Update Scenarios
Filter list element by other (then key)
e.g xpath[sliceProfileId=value]

//sliceProfilesList[@sliceProfileId=1] include descendants (pLMIDList is descendant)
For team review
21.

/api/sdnc-config-db/v4/ta-list/{mcc}/{mnc}/{coverageArea}

/api/sdnc-config-db/v4/ta-list/{PLMNId}/{coverageArea}

GET

Returns List of a tracking area (coverageAreaTAList) of the specified coverage area
Done




Question Comment
1

API 9 & 10:

There are multiple placeholders for it in the same ancestor of DU, RTRIC, CUUP and CUCP NFs.


For DU-list we have identified:

cps-ran-schema/GNBDUFunction/attributes/RRMPolicyRatio/attributes/sNSSAI

For the DU list, we can also use the sNSSAI from cell-list which comes under DU.


For cell-list we have identified:

cps-ran-schema/NRCellDU/attributes/pLMNInfoList/sNSSAIList/sNSSAI
cps-ran-schema/NRCellDU/attributes/RRMPolicyRatio/attributes/rRMPolicyMemberList/sNSSAI

Would you please guide us as to what would be the right attributes to be considered in the search for these GET APIs?

From: ahila.pandaram@wipro.com <ahila.pandaram@wipro.com>

As per the current SDN-R implementation, sNSSAI is configured in NRCellDU, NRCellCU & gNBCUUP. NearRTRIC is configured only in closed loop scenarios.


So please make use of this for the APIs (9) & (10). cps-ran-schema/GNBDUFunction/NRCellDU/attributes/pLMNInfoList/sNSSAIList/sNssai



2

API 12:

We did not identify the slice config attribute for API#12 to be mapped in the Network Slicing.

Kindly provide us with the right model and data.

From: ahila.pandaram@wipro.com <ahila.pandaram@wipro.com>

API (12) can make use of this: cps-ran-schema/NearRTRIC/attributes/pLMNInfoList/sNSSAIList/sNssai

3

The questions are as follows

  1. When inserting a value that already exists into a list do we reject it or replace it without warning? - <Ahila> It can be rejected.
  2. For API number 4, 5 and 6, when this API is called does it create a new entry or does it update an existing entry? <Ahila> - Create a new entry, if it does not exists. Update, if it already exists.
  3. Could you confirm the exact list you are referring to for API number 7? <Ahila> - The comment was updated by Toine. He is referring to the list below. The expected behaviour here is that update to the parent and the child list.


+--rw rRMPolicyMemberList* [idx]

        |        |  +--rw idx       uint32

        |        |  +--rw mcc       Mcc

        |        |  +--rw mnc       Mnc

        |        |  +--rw sNSSAI?   SNssai