Commit c40eae6c authored by sunse's avatar sunse
Browse files

CR0860 NRF NRM

parent 36c2f5ac
Loading
Loading
Loading
Loading
Loading
+247 −28
Original line number Diff line number Diff line
@@ -1136,6 +1136,249 @@ components:
          anyOf:
            - $ref: 'TS29571_CommonData.yaml#/components/schemas/Dnn'
            - $ref: 'TS29571_CommonData.yaml#/components/schemas/WildcardDnn'
    UdrInfo:
      description: Information of an UDR NF Instance
      type: object
      properties:
        groupId:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/NfGroupId'
        supiRanges:
          type: array
          items:
            $ref: '#/components/schemas/SupiRange'
          minItems: 1
        gpsiRanges:
          type: array
          items:
            $ref: '#/components/schemas/IdentityRange'
          minItems: 1
        externalGroupIdentifiersRanges:
          type: array
          items:
            $ref: '#/components/schemas/IdentityRange'
          minItems: 1
        supportedDataSets:
          type: array
          items:
            $ref: '#/components/schemas/DataSetId'
          minItems: 1
        sharedDataIdRanges:
          type: array
          items:
            $ref: '#/components/schemas/SharedDataIdRange'
          minItems: 1

    UdmInfo:
      description: Information of an UDM NF Instance
      type: object
      properties:
        groupId:
          $ref: 'TS29571_CommonData.yaml#/components/schemas/NfGroupId'
        supiRanges:
          type: array
          items:
            $ref: '#/components/schemas/SupiRange'
          minItems: 1
        gpsiRanges:
          type: array
          items:
            $ref: '#/components/schemas/IdentityRange'
          minItems: 1
        externalGroupIdentifiersRanges:
          type: array
          items:
            $ref: '#/components/schemas/IdentityRange'
          minItems: 1
        routingIndicators:
          type: array
          items:
            type: string
            pattern: '^[0-9]{1,4}$'
          minItems: 1
        internalGroupIdentifiersRanges:
          type: array
          items:
            $ref: '#/components/schemas/InternalGroupIdRange'
          minItems: 1
        suciInfos:
          type: array
          items:
            $ref: '#/components/schemas/SuciInfo'
          minItems: 1
    NrfInfo:
      description: Information of an NRF NF Instance, used in hierarchical NRF deployments
      type: object
      properties:
        servedUdrInfo:
          description: A map (list of key-value pairs) where nfInstanceId serves as key
          type: object
          additionalProperties:
            anyOf:
              - $ref: '#/components/schemas/UdrInfo'
              - $ref: 'TS29571_CommonData.yaml#/components/schemas/EmptyObject'
          minProperties: 1
        servedUdrInfoList:
          description: A map (list of key-value pairs) where nfInstanceId serves as key
          type: object
          additionalProperties:
            description: A map (list of key-value pairs) where a valid JSON string serves as key
            type: object
            additionalProperties:
              anyOf:
                - $ref: '#/components/schemas/UdrInfo'
                - $ref: 'TS29571_CommonData.yaml#/components/schemas/EmptyObject'
            minProperties: 1
          minProperties: 1
        servedUdmInfo:
          description: A map (list of key-value pairs) where nfInstanceId serves as key
          type: object
          additionalProperties:
            anyOf:
              - $ref: '#/components/schemas/UdmInfo'
              - $ref: 'TS29571_CommonData.yaml#/components/schemas/EmptyObject'
          minProperties: 1
        servedUdmInfoList:
          description: A map (list of key-value pairs) where nfInstanceId serves as key
          type: object
          additionalProperties:
            description: A map (list of key-value pairs) where a valid JSON string serves as key
            type: object
            additionalProperties:
              anyOf:
                - $ref: '#/components/schemas/UdmInfo'
                - $ref: 'TS29571_CommonData.yaml#/components/schemas/EmptyObject'
            minProperties: 1
          minProperties: 1
        servedAusfInfo:
          description: A map (list of key-value pairs) where nfInstanceId serves as key
          type: object
          additionalProperties:
            anyOf:
              - $ref: '#/components/schemas/AusfInfo'
              - $ref: 'TS29571_CommonData.yaml#/components/schemas/EmptyObject'
          minProperties: 1
        servedAusfInfoList:
          description: A map (list of key-value pairs) where nfInstanceId serves as key
          type: object
          additionalProperties:
            description: A map (list of key-value pairs) where a valid JSON string serves as key
            type: object
            additionalProperties:
              anyOf:
                - $ref: '#/components/schemas/AusfInfo'
                - $ref: 'TS29571_CommonData.yaml#/components/schemas/EmptyObject'
            minProperties: 1
          minProperties: 1
        servedNwdafInfo:
          description: A map (list of key-value pairs) where nfInstanceId serves as key
          type: object
          additionalProperties:
            anyOf:
              - $ref: '#/components/schemas/NwdafInfo'
              - $ref: 'TS29571_CommonData.yaml#/components/schemas/EmptyObject'
          minProperties: 1
        servedNwdafInfoList:
          type: object
          description: A map (list of key-value pairs) where NF Instance Id serves as key
          additionalProperties:
            type: object
            description: A map (list of key-value pairs) where a valid JSON string serves as key
            additionalProperties:
              $ref: '#/components/schemas/NwdafInfo'
            minProperties: 1
          minProperties: 1
        servedLmfInfo:
          description: A map (list of key-value pairs) where nfInstanceId serves as key
          type: object
          additionalProperties:
            anyOf:
              - $ref: '#/components/schemas/LmfInfo'
              - $ref: 'TS29571_CommonData.yaml#/components/schemas/EmptyObject'
          minProperties: 1
        servedUdsfInfo:
          description: A map (list of key-value pairs) where nfInstanceId serves as key
          type: object
          additionalProperties:
            anyOf:
              - $ref: '#/components/schemas/UdsfInfo'
              - $ref: 'TS29571_CommonData.yaml#/components/schemas/EmptyObject'
          minProperties: 1
        servedUdsfInfoList:
          description: A map (list of key-value pairs) where nfInstanceId serves as key
          type: object
          additionalProperties:
            description: A map (list of key-value pairs) where a valid JSON string serves as key
            type: object
            additionalProperties:
              anyOf:
                - $ref: '#/components/schemas/UdsfInfo'
                - $ref: 'TS29571_CommonData.yaml#/components/schemas/EmptyObject'
            minProperties: 1
          minProperties: 1
        servedScpInfoList:
          description: A map (list of key-value pairs) where nfInstanceId serves as key
          type: object
          additionalProperties:
            anyOf:
              - $ref: '#/components/schemas/ScpInfo'
              - $ref: 'TS29571_CommonData.yaml#/components/schemas/EmptyObject'
          minProperties: 1
        servedSeppInfoList:
          description: A map (list of key-value pairs) where nfInstanceId serves as key
          type: object
          additionalProperties:
            anyOf:
              - $ref: '#/components/schemas/SeppInfo'
              - $ref: 'TS29571_CommonData.yaml#/components/schemas/EmptyObject'
          minProperties: 1
        servedEasdfInfoList:
          type: object
          description: A map (list of key-value pairs) where NF Instance Id serves as key
          additionalProperties:
            type: object
            description: A map (list of key-value pairs) where a valid JSON string serves as key
            additionalProperties:
              $ref: '#/components/schemas/EasdfInfo'
            minProperties: 1
        servedTrustAfInfo:
          type: object
          description: A map (list of key-value pairs) where NF Instance Id serves as key
          additionalProperties:
            $ref: '#/components/schemas/TrustAfInfo'
          minProperties: 1
        servedNssaafInfo:
          type: object
          description: A map (list of key-value pairs) where NF Instance Id serves as key
          additionalProperties:
            $ref: '#/components/schemas/NssaafInfo'
          minProperties: 1

# note to code moderator: the following are only dummy xxxInfo for validation, actual definition are from new CR as below
# CR0861	TS28.541 Rel-18 NRM enhancements for LMFFunction  (LmfInfo)
# CR0862	TS28.541 Rel-18 NRM enhancements for AFFunction   (TrustAfInfo)
# CR0863	TS28.541 Rel-18 NRM enhancements for EASDFFunction (EasdfInfo)
# CR0864	TS28.541 Rel-18 NRM enhancements for NSSAAFFunction (NssaafInfo)
    LmfInfo:
      type: object
      properties:
        dummy:
          type: string
    TrustAfInfo:
      type: object
      properties:
        dummy:
          type: string
    EasdfInfo:
      type: object
      properties:
        dummy:
          type: string                              
    NssaafInfo:
      type: object
      properties:
        dummy:
          type: string
# End of dummy datatype

#-------- Definition of concrete IOCs --------------------------------------------
    ProvMnS:
@@ -1634,22 +1877,8 @@ components:
                      $ref: '#/components/schemas/CommModelList'
                    eCSAddrConfigInfo:
                      $ref: '#/components/schemas/ECSAddrConfigInfo'
                    groupId:
                      type: string
                    supiRanges:
                      $ref: '#/components/schemas/SupiRangeList'
                    gpsiRanges:
                      $ref: '#/components/schemas/IdentityRangeList'
                    externalGroupIdentifiersRanges:
                      $ref: '#/components/schemas/IdentityRangeList'
                    routingIndicators:
                      type: array
                      items:
                        type: string
                    internalGroupIdentifiersRanges:
                      $ref: '#/components/schemas/InternalGroupIdRangeList'
                    suciInfos:
                      $ref: '#/components/schemas/SuciInfoList'
                    udmInfo:
                      $ref: '#/components/schemas/UdmInfo'
        - $ref: 'TS28623_GenericNrm.yaml#/components/schemas/ManagedFunction-ncO'
        - type: object
          properties:
@@ -1675,18 +1904,8 @@ components:
                      type: string
                    managedNFProfile:
                      $ref: '#/components/schemas/ManagedNFProfile'
                    groupId:
                      type: string
                    supiRanges:
                      $ref: '#/components/schemas/SupiRangeList'
                    gpsiRanges:
                      $ref: '#/components/schemas/IdentityRangeList'
                    externalGroupIdentifiersRanges:
                      $ref: '#/components/schemas/IdentityRangeList'
                    supportedDataSets:
                      $ref: '#/components/schemas/SupportedDataSetList'
                    sharedDataIdRanges:
                      $ref: '#/components/schemas/SharedDataIdRangeList'
                    udrInfo:
                      $ref: '#/components/schemas/UdrInfo'

    UdsfFunction-Single:
      allOf:
+18 −1
Original line number Diff line number Diff line
##### Special note: CT R16 local copy for SA5 OAM Forge branch only, it shall not be used otherwise. S5-222029 on 4.4.2022
##### Special note: CT R16 local copy for SA5 OAM Forge branch only, it shall not be used otherwise. S5-222029 on 4.4.2022. Updated to sync with 1.5.0 for SA5#147 (17.02.2023)
openapi: 3.0.0

info:
@@ -217,6 +217,23 @@ components:
    TimeOfDay:
      type: string
      description: String with format partial-time or full-time as defined in clause 5.6 of IETF RFC 3339. Examples, 20:15:00, 20:15:00-08:00 (for 8 hours behind UTC).
    EmptyObject:
      description: Empty JSON object { }, it is defined with the keyword additionalProperties false
      type: object
      additionalProperties: false

    Fqdn:
      description: Fully Qualified Domain Name
      type: string
      pattern: '^([0-9A-Za-z]([-0-9A-Za-z]{0,61}[0-9A-Za-z])?\.)+[A-Za-z]{2,63}\.?$'
      minLength: 4
      maxLength: 253

    FqdnRm:
      description: Fully Qualified Domain Name, but it also allows the null value
      anyOf:
        - $ref: '#/components/schemas/Fqdn'
        - $ref: '#/components/schemas/NullValue'
#
#   COMMON ENUMERATED DATA TYPES
#