Versions Compared

Key

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

...

The Data Synchronization watchdog updates the cps database with RAN CM Handle data. The Synchronization uses DMI passthrough service and SDNC to get the data from RAN. Refer here for more information.

The steps involved in this process,

...

Code Block
languagexml
titleCPS Path
//state[@cm-handle-state="READY"]/ancestor::cm-handles | //state/datastore/operational[@sync-state="UNSYNCHRONIZED"]/ancestor::cm-handles

CPS do not support AND operation in the query. Create a new user story to introduce this feature. 

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

The agreed solution is to split the query to get the CM Handles where the operational sync state in UNSYNCHRONIZED and select a random CM Handle and check the status of the CM Handle in READY state.

Code Block
languagexml
titleCPS Path
Query 1:
//state/datastore/operational[@sync-state="UNSYNCHRONIZED"]/ancestor::cm-handles

Query 2:
//cm-handles[@id='some-cm-handle']/state[@cm-handle-state="READY"]

Step 2: 

Get the CM Handle data from RAN through DMI passthrough service.

...

A PNF Simulator is used with YANG Model.

module stores
Code Block
languagexml
titleBookstore YANG Model
titleBookstore YANG Model
module stores {

    yang-version 1.1;

    namespace "org:onap:ccsdk:sample";

    prefix book-store;

	import ietf-yang-types { prefix yang; }
	import ietf-inet-types { prefix inet; }

    revision "2020-09-15" {
        description
        "Sample Model";
    }

    typedef year {
        type uint16 {
     yang-version 1.1;      namespacerange "org:onap:ccsdk:sample";1000..9999";
        }
 prefix book-store;

	import ietf-yang-types { prefix yang; }
	import ietf-inet-types { prefix inet; }   }

    container bookstore {

        leaf bookstore-name {
            type string;
        }

     revision "2020-09-15" { list categories {

    description        key "Sample Modelcode";

      }      typedefleaf yearcode {
        type uint16 {      type string;
     range "1000..9999";      }

 }     }      containerleaf bookstorename {
         leaf bookstore-name {     type string;
      type string;     }

  }          list categoriesbooks {
                key "code"title;

                leaf codetitle {
                    type string;
                }
                leaf namelang {
                    type string;
                }
                leaf-list booksauthors {
                    keytype title;
string;
                }
                leaf titlepub_year {
                     type stringyear;
                }
                leaf langprice {
                     type stringuint64;
                }
            }
         leaf-list authors {
   }
   }
}


This PNF Simulator is mounted in SDNC and the response from SDNC to get all the resources from RAN,

Code Block
languagexml
titleSDNC Url
http://<ip>:8282/rests/data/network-topology:network-topology/topology=topology-netconf/node=Bookstore/yang-ext:mount


The DMI passthrough service is used to write the data to the RAN Simulator and the response from it through SDNC is shown below,

Code Block
languagexml
titleSDNC Response
{
  "ietf-netconf-monitoring:netconf-state": {
    "schemas": {
          type string;
 "schema": [
              }
                leaf pub_year {
          "identifier": "ietf-tls-server",
         type year;
 "version": "2016-11-02",
          "format": "ietf-netconf-monitoring:yang",
   }         "namespace": "urn:ietf:params:xml:ns:yang:ietf-tls-server",
       leaf price { "location": [
            "NETCONF"
      type uint64;   ]
        },
    }    {
        }  "identifier": "nc-notifications",
     }    }
}

This PNF Simulator is mounted in SDNC and the response from SDNC to get all the resources from RAN,

Code Block
languagexml
titleSDNC Url
http://<ip>:8282/rests/data/network-topology:network-topology/topology=topology-netconf/node=Bookstore/yang-ext:mount

The DMI passthrough service is used to write the data to the RAN Simulator and the response from it through SDNC is shown below,

Code Block
languagexml
titleSDNC Response
{
  "version": "2008-07-14",
          "format": "ietf-netconf-monitoring:netconf-state": {yang",
          "schemasnamespace": {"urn:ietf:params:xml:ns:netmod:notification",
          "schemalocation": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietf-tlsssh-server",
          "version": "2016-11-02",
          "format": "ietf-netconf-monitoring:yangyin",
          "namespace": "urn:ietf:params:xml:ns:yang:ietf-tlsssh-server",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ncturing-notificationsmachine",
          "version": "20082013-0712-1427",
          "format": "ietf-netconf-monitoring:yang",

         "namespace": "urn:ietf:params:xml:ns:netmod:notification "namespace": "http://example.net/turing-machine",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietf-sshyang-servermetadata",
          "version": "2016-1108-0205",
          "format": "ietf-netconf-monitoring:yin",
          "namespace": "urn:ietf:params:xml:ns:yang:ietf-sshyang-servermetadata",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "turingiana-crypt-machinehash",
          "version": "20132014-1208-2706",
          "format": "ietf-netconf-monitoring:yangyin",
          "namespace": "http://example.net/turing-machineurn:ietf:params:xml:ns:yang:iana-crypt-hash",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietf-yang-metadatadatastores",
          "version": "20162017-08-0517",
          "format": "ietf-netconf-monitoring:yinyang",
          "namespace": "urn:ietf:params:xml:ns:yang:ietf-yang-metadatadatastores",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ianaietf-netconf-cryptwith-hashdefaults",
          "version": "20142011-0806-0601",
          "format": "ietf-netconf-monitoring:yin",
          "namespace": "urn:ietf:params:xml:ns:yang:ianaietf-netconf-cryptwith-hashdefaults",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietf-datastores-x509-cert-to-name",
          "version": "20172014-0812-1710",
          "format": "ietf-netconf-monitoring:yang",
          "namespace": "urn:ietf:params:xml:ns:yang:ietf-datastores-x509-cert-to-name",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietf-netconf-with-defaultsnetconf",
          "version": "2011-06-01",
          "format": "ietf-netconf-monitoring:yinyang",
          "namespace": "urn:ietf:params:xml:ns:yang:ietf-netconf-with-defaultsnetconf:base:1.0",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietf-x509-cert-to-namekeystore",
          "version": "20142016-1210-1031",
          "format": "ietf-netconf-monitoring:yangyin",
          "namespace": "urn:ietf:params:xml:ns:yang:ietf-x509-cert-to-namekeystore",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietf-netconf-with-defaults",
          "version": "2011-06-01",
          "format": "ietf-netconf-monitoring:yang",
          "namespace": "urn:ietf:params:xml:ns:yang:netconf:base:1.0ietf-netconf-with-defaults",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietf-inet-keystoretypes",
          "version": "20162013-1007-3115",
          "format": "ietf-netconf-monitoring:yinyang",
          "namespace": "urn:ietf:params:xml:ns:yang:ietf-inet-keystoretypes",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietf-netconf-with-defaultskeystore",
          "version": "20112016-0610-0131",
          "format": "ietf-netconf-monitoring:yang",
          "namespace": "urn:ietf:params:xml:ns:yang:ietf-netconf-with-defaultskeystore",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietfturing-inet-typesmachine",
          "version": "2013-0712-1527",
          "format": "ietf-netconf-monitoring:yangyin",
          "namespace": "urn:ietf:params:xml:ns:yang:ietf-inet-typeshttp://example.net/turing-machine",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietf-netconf-keystoreacm",
          "version": "20162018-1002-3114",
          "format": "ietf-netconf-monitoring:yang",
          "namespace": "urn:ietf:params:xml:ns:yang:ietf-netconf-keystoreacm",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "turing-machineyang",
          "version": "20132017-1202-2720",
          "format": "ietf-netconf-monitoring:yinyang",
          "namespace": "http://example.net/turing-machineurn:ietf:params:xml:ns:yang:1",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietf-netconfyang-acmtypes",
          "version": "20182013-0207-1415",
          "format": "ietf-netconf-monitoring:yang",
          "namespace": "urn:ietf:params:xml:ns:yang:ietf-netconfyang-acmtypes",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "yangietf-system",
          "version": "20172014-0208-2006",
          "format": "ietf-netconf-monitoring:yang",
          "namespace": "urn:ietf:params:xml:ns:yang:1ietf-system",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietfnc-yang-typesnotifications",
          "version": "20132008-07-1514",
          "format": "ietf-netconf-monitoring:yangyin",
          "namespace": "urn:ietf:params:xml:ns:yang:ietf-yang-typesnetmod:notification",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietf-systemstores",
          "version": "20142020-0809-0615",
          "format": "ietf-netconf-monitoring:yang",
          "namespace": "urnorg:ietfonap:params:xml:ns:yang:ietf-systemccsdk:sample",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ncietf-yang-notificationsmetadata",
          "version": "20082016-0708-1405",
          "format": "ietf-netconf-monitoring:yinyang",
          "namespace": "urn:ietf:params:xml:ns:netmod:notificationyang:ietf-yang-metadata",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "storesietf-netconf-notifications",
          "version": "20202012-0902-1506",
          "format": "ietf-netconf-monitoring:yangyin",
          "namespace": "org:onap:ccsdk:sampleurn:ietf:params:xml:ns:yang:ietf-netconf-notifications",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietf-yangnetconf-metadatamonitoring",
          "version": "20162010-0810-0504",
          "format": "ietf-netconf-monitoring:yangyin",
          "namespace": "urn:ietf:params:xml:ns:yang:ietf-yangnetconf-metadatamonitoring",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietf-netconf-notificationsserver",
          "version": "20122016-11-02-06",
          "format": "ietf-netconf-monitoring:yinyang",
          "namespace": "urn:ietf:params:xml:ns:yang:ietf-netconf-notificationsserver",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietf-netconf-monitoringstores",
          "version": "20102020-1009-0415",
          "format": "ietf-netconf-monitoring:yin",
          "namespace": "urnorg:ietfonap:params:xml:ns:yang:ietf-netconf-monitoringccsdk:sample",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietf-netconfyang-servertypes",
          "version": "20162013-1107-0215",
          "format": "ietf-netconf-monitoring:yangyin",
          "namespace": "urn:ietf:params:xml:ns:yang:ietf-netconfyang-servertypes",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "storesietf-yang-library",
          "version": "20202019-0901-1504",
          "format": "ietf-netconf-monitoring:yinyang",
          "namespace": "org:onap:ccsdk:sampleurn:ietf:params:xml:ns:yang:ietf-yang-library",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietf-yangnetconf-typesnotifications",
          "version": "20132012-0702-1506",
          "format": "ietf-netconf-monitoring:yinyang",
          "namespace": "urn:ietf:params:xml:ns:yang:ietf-yangnetconf-typesnotifications",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietf-yang-library",
          "version": "2019-01-04",
          "format": "ietf-netconf-monitoring:yangyin",
          "namespace": "urn:ietf:params:xml:ns:yang:ietf-yang-library",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietf-netconf-notifications",
          "version": "20122008-0207-0614",
          "format": "ietf-netconf-monitoring:yang",
          "namespace": "urn:ietf:params:xml:ns:netconf:yang:ietf-netconf-notificationsnotification:1.0",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietf-yangtls-libraryserver",
          "version": "20192016-0111-0402",
          "format": "ietf-netconf-monitoring:yin",
          "namespace": "urn:ietf:params:xml:ns:yang:ietf-yangtls-libraryserver",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "notificationsiana-crypt-hash",
          "version": "20082014-0708-1406",
          "format": "ietf-netconf-monitoring:yang",
          "namespace": "urn:ietf:params:xml:ns:netconf:notification:1.0yang:iana-crypt-hash",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietf-tls-servernetconf",
          "version": "20162011-1106-0201",
          "format": "ietf-netconf-monitoring:yin",
          "namespace": "urn:ietf:params:xml:ns:netconf:yang:ietf-tls-serverbase:1.0",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "iana-crypt-hashnotifications",
          "version": "20142008-0807-0614",
          "format": "ietf-netconf-monitoring:yangyin",
          "namespace": "urn:ietf:params:xml:ns:yang:iana-crypt-hashnetconf:notification:1.0",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietf-netconf-monitoring",
          "version": "20112010-0610-0104",
          "format": "ietf-netconf-monitoring:yinyang",
          "namespace": "urn:ietf:params:xml:ns:yang:netconf:base:1.0ietf-netconf-monitoring",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "notificationsyang",
          "version": "20082017-0702-1420",
          "format": "ietf-netconf-monitoring:yin",
          "namespace": "urn:ietf:params:xml:ns:netconf:notificationyang:1.0",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietf-x509-cert-netconfto-monitoringname",
          "version": "20102014-12-10-04",
          "format": "ietf-netconf-monitoring:yangyin",
          "namespace": "urn:ietf:params:xml:ns:yang:ietf-netconf-monitoringx509-cert-to-name",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "yangietf-inet-types",
          "version": "20172013-0207-2015",
          "format": "ietf-netconf-monitoring:yin",
          "namespace": "urn:ietf:params:xml:ns:yang:1ietf-inet-types",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietf-x509-cert-to-namessh-server",
          "version": "20142016-1211-1002",
          "format": "ietf-netconf-monitoring:yinyang",
          "namespace": "urn:ietf:params:xml:ns:yang:ietf-x509-cert-to-namessh-server",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietf-inet-typesdatastores",
          "version": "20132017-0708-1517",
          "format": "ietf-netconf-monitoring:yin",
          "namespace": "urn:ietf:params:xml:ns:yang:ietf-inet-typesdatastores",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietf-sshnetconf-server",
          "version": "2016-11-02",
          "format": "ietf-netconf-monitoring:yangyin",
          "namespace": "urn:ietf:params:xml:ns:yang:ietf-sshnetconf-server",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietf-netconf-datastoresacm",
          "version": "20172018-0802-1714",
          "format": "ietf-netconf-monitoring:yin",
          "namespace": "urn:ietf:params:xml:ns:yang:ietf-datastoresnetconf-acm",
          "location": [
            "NETCONF"
          ]
        },
        {
          "identifier": "ietf-netconf-serversystem",
          "version": "20162014-1108-0206",
          "format": "ietf-netconf-monitoring:yin",
          "namespace": "urn:ietf:params:xml:ns:yang:ietf-netconf-serversystem",
          "location": [
            "NETCONF"
          ]
        },
      ]
    },
{    "statistics": {
      "identifierout-rpc-errors": 0,
      "ietfout-netconf-acm"notifications": 0,
      "in-bad-hellos": 0,
  "version": "2018-02-14",
       "dropped-sessions": 0,
      "in-sessions": 1,
      "in-rpcs": 78,
      "formatnetconf-start-time": "ietf2022-netconf05-monitoring19T14:23:yin27Z",
 
        "namespace": "urn:ietf:params:xml:ns:yang:ietf-netconf-acm",
"in-bad-rpcs": 0
    },
    "locationsessions": [{
      "session": [
    "NETCONF"    {
      ]    "session-id": 1,
   },         {"source-host": "172.21.0.3",
          "identifierusername": "ietf-systemnetconf",
          "versionlogin-time": "20142022-08-0605-19T14:32:39Z",
          "formatout-rpc-errors": "ietf-netconf-monitoring:yin"0,
          "namespacetransport": "urn:ietf:params:xml:ns:yang:ietf-systemietf-netconf-monitoring:netconf-tls",
          "locationout-notifications": [0,
          "in-rpcs": 78,
"NETCONF"           ]"in-bad-rpcs": 0
        }
      ]
    },
    "statisticscapabilities": {
      "out-rpc-errorscapability": 0,[
        "out-notifications": 0urn:ietf:params:netconf:capability:xpath:1.0",
      "in-bad-hellos": 0,
      "dropped-sessions": 0,
      "in-sessions": 1,  "urn:ietf:params:xml:ns:yang:ietf-x509-cert-to-name?module=ietf-x509-cert-to-name&revision=2014-12-10",
        "in-rpcs": 78,urn:ietf:params:netconf:base:1.1",
        "netconf-start-time": "2022-05-19T14:23:27Z",urn:ietf:params:netconf:capability:startup:1.0",
        "in-bad-rpcs": 0urn:ietf:params:netconf:capability:yang-library:1.0?revision=2019-01-04&module-set-id=23",
    },     "sessions": {
      "session": [
 "urn:ietf:params:netconf:base:1.0",
      {  "urn:ietf:params:xml:ns:yang:ietf-netconf-notifications?module=ietf-netconf-notifications&revision=2012-02-06",
        "session-id": 1urn:ietf:params:xml:ns:yang:ietf-netconf-acm?module=ietf-netconf-acm&revision=2018-02-14",
          "source-host": "172.21.0.3"urn:ietf:params:xml:ns:netconf:base:1.0?module=ietf-netconf&revision=2011-06-01&features=writable-running,candidate,rollback-on-error,validate,startup,url,xpath",
          "username": "netconf"urn:ietf:params:xml:ns:netmod:notification?module=nc-notifications&revision=2008-07-14",
          "login-time": "2022-05-19T14:32:39Z",
 "urn:ietf:params:xml:ns:yang:ietf-yang-metadata?module=ietf-yang-metadata&revision=2016-08-05",
        "out-rpc-errors": 0,
 urn:ietf:params:netconf:capability:writable-running:1.0",
        "transport": "ietf-netconf-monitoring:netconf-tlsurn:ietf:params:xml:ns:yang:ietf-yang-types?module=ietf-yang-types&revision=2013-07-15",
          "out-notifications": 0"urn:ietf:params:netconf:capability:notification:1.0",
          "in-rpcs": 78"http://example.net/turing-machine?module=turing-machine&revision=2013-12-27",
          "in-bad-rpcs": 0
        }
      ]
    },
    "capabilities": {"urn:ietf:params:xml:ns:yang:1?module=yang&revision=2017-02-20",
        "urn:ietf:params:netconf:capability": [:rollback-on-error:1.0",
        "urn:ietf:params:netconf:capability:xpathwith-defaults:1.0?basic-mode=explicit&also-supported=report-all,report-all-tagged,trim,explicit",
        "urn:ietf:params:xml:ns:yang:ietf-x509netconf-certwith-to-namedefaults?module=ietf-x509netconf-certwith-to-namedefaults&revision=20142011-1206-1001",
        "urn:ietf:params:netconf:base:1.1",
        "urn:ietf:params:netconf:capability:startupcandidate:1.0",
        "urn:ietf:params:xml:ns:netconf:capability:yang-librarynotification:1.0?module=notifications&revision=20192008-01-04&module-set-id=2307-14",
        "urn:ietf:params:netconf:capability:baseinterleave:1.0",
        "urn:ietf:params:xml:ns:yang:ietfiana-netconfcrypt-notificationshash?module=ietfiana-netconfcrypt-notificationshash&revision=20122014-0208-06",
        "urn:ietf:params:xml:ns:yang:ietf-netconf-acmmonitoring?module=ietf-netconf-acmmonitoring&revision=20182010-0210-1404",
        "urn:ietf:params:xmlnetconf:nscapability:netconfvalidate:base:1.0?module=ietf-netconf&revision=2011-06-01&features=writable-running,candidate,rollback-on-error,validate,startup,url,xpath1.1",
        "urn:ietf:params:xml:ns:netmod:notification?module=nc-notifications&revision=2008-07-14",
        "urn:ietf:params:xml:ns:yang:ietf-yanginet-metadatatypes?module=ietf-yanginet-metadatatypes&revision=20162013-0807-0515",
        "urn:ietf:params:netconf:capability:writable-runningurl:1.0",
        "urn:ietf:params:xml:ns:yang:ietf-yang-typessystem?module=ietf-yang-typessystem&revision=2013-07-15",2014-08-06&features=authentication,local-users"
      ]
 "urn:ietf:params:netconf:capability:notification:1.0",   }
  },
  "http://example.net/turing-machine?module=:turing-machine&revision=2013-12-27",
": {
    "transition-function": {
       "delta"urn:ietf:params:xml:ns:yang:1?module=yang&revision=2017-02-20",
 : [
        {
      "urn:ietf:params:netconf:capability:rollback-on-error:1.0    "label": "separator",
          "output"urn:ietf:params:netconf:capability:with-defaults:1.0?basic-mode=explicit&also-supported=report-all,report-all-tagged,trim,explicit",: {
            "urn:ietf:params:xml:ns:yang:ietf-netconf-with-defaults?module=ietf-netconf-with-defaults&revision=2011-06-01",state": 1,
            "symbol"urn:ietf:params:netconf:capability:candidate:1.0",: "1"
          "urn:ietf:params:xml:ns:netconf:notification:1.0?module=notifications&revision=2008-07-14"},
        "urn:ietf:params:netconf:capability:interleave:1.0",
  "input": {
       "urn:ietf:params:xml:ns:yang:iana-crypt-hash?module=iana-crypt-hash&revision=2014-08-06",     "state": 0,
  "urn:ietf:params:xml:ns:yang:ietf-netconf-monitoring?module=ietf-netconf-monitoring&revision=2010-10-04",          "urn:ietf:params:netconf:capability:validate:1.1",symbol": "0"
          "urn:ietf:params:xml:ns:yang:ietf-inet-types?module=ietf-inet-types&revision=2013-07-15",}
        "urn:ietf:params:netconf:capability:url:1.0",},
          "urn:ietf:params:xml:ns:yang:ietf-system?module=ietf-system&revision=2014-08-06&features=authentication,local-users"{
          "label": "right end",
]     }   },   "turing-machine:turing-machine"output": {
    "transition-function": {       "deltastate": 2,
   [         {
"head-move": "left"
         "label": "separator" },
          "outputinput": {
            "state": 1,
            "symbol": "1""
          }
        },
        {
 "input         "label": "write separator",
          "output": {
            "state": 03,
            "symbolhead-move": "0"left",
            "symbol": "0"
 }         },
          "input": {
  {           "labelstate": "right end",2,
            "outputsymbol": {"1"
          }
    "state": 2,   },
        {
"head-move": "left"         "label": "right }summand",
          "input": {
            "state": 1,
            "symbol": "1"
          }
        },
        {
          "label": "writego separatorhome",
          "output": {
            "state": 3,
            "head-move": "left",
  
         "symbol": "0"
          },
          "input": {
            "state": 23,
            "symbol": "1"
          }
        },
        {
          "label": "rightfinal summandstep",
          "inputoutput": {
            "state": 1,4
            "symbol": "1"},
           }
"input": {
       },     "state": 3,
  {           "labelsymbol": ""go home",
          }
    "output": {   },
        {
"head-move": "left"         "label": "left }summand",
          "input": {
            "state": 30,
            "symbol": "1"
          }
        },
      ]
 {   }
    },
  "labelstores:bookstore": "final{
step",    "categories": [
     "output": {
 
          "statecode": 4"05",
          },
"books": [
         "input": {
            "statetitle": 3"A Romance Book",
            "symbolprice": "2000",
          }         },
        {"pub_year": 2002,
            "labellang": "left summandEnglish",
            "inputauthors": [
 {             "stateLathish":
   0,         ]
   "symbol": "1"      }
    }    ],
    }    "name": "Romance"
 ]     }
    ]
  },
  "storesietf-keystore:bookstorekeystore": {
    "categoriesprivate-keys": [
      {
        "codeprivate-key": "05",[
        "books":{
[           {
"name": "server_key",
           "titlecertificate-chains": "A Romance Book",{
            "pricecertificate-chain": "2000", [
              {
 "pub_year": 2002,               "langname": "Englishserver_cert",
                "authorscertificate": [
              "Lathish    "MIIECTCCAvGgAwIBAgIBCDANBgkqhkiG9w0BAQsFADCBjDELMAkGA1UEBhMCQ1oxFjAUBgNVBAgMDVNvdXRoIE1vcmF2aWExDTALBgNVBAcMBEJybm8xDzANBgNVBAoMBkNFU05FVDEMMAoGA1UECwwDVE1DMRMwEQYDVQQDDApleGFtcGxlIENBMSIwIAYJKoZIhvcNAQkBFhNleGFtcGxlY2FAbG9jYWxob3N0MB4XDTE1MDczMDA3MjU1MFoXDTM1MDcyNTA3MjU1MFowgYUxCzAJBgNVBAYTAkNaMRYwFAYDVQQIDA1Tb3V0aCBNb3JhdmlhMQ8wDQYDVQQKDAZDRVNORVQxDDAKBgNVBAsMA1RNQzEXMBUGA1UEAwwOZXhhbXBsZSBzZXJ2ZXIxJjAkBgkqhkiG9w0BCQEWF2V4YW1wbGVzZXJ2ZXJAbG9jYWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsdI1TBjzX1PgQXFuPCw5/kQwU7qkrhirMcFAXhI8EoXepPa9fKAVuMjHW32P6nNzDpnhFe0YGdNloIEN3hJJ87cVOqj4o7zZMbq3zVG2L8As7MTA8tYXm2fSC/0rIxxRRemcGUXM0q+4LEACjZj2pOKonaivF5VbhgNjPCO1Jj/TamUc0aViE577C9L9EiObGM+bGbabWk/KWKLsvxUc+sKZXaJ7psTVgpggJAkUszlmwOQgFiMSR53E9/CAkQYhzGVCmH44Vs6Hzs3RZjOTbce4wr4ongiA5LbPeSNSCFjy9loKpaE1rtOjkNBVdiNPCQTmLuODXUTKgkeL+9v/OwIDAQABo3sweTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVyYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQU83qEtQDFzDvLoaIIvqiU6k7j1uswHwYDVR0jBBgwFoAUc1YQIqjZsHVwlea0AB4N+ilNI2gwDQYJKoZIhvcNAQELBQADggEBAJ+QOLi4gPWGofMkLTqSsbv5xRvTw0xa/sJnEeiejtygAu3oMcAsyevSH9EYVPCANxzISPzd9SFaO56HxWgcxLn9vi8ZNvo2wIp9zucNu285ced1K/2nDZfBmvBxXnj/n7spwqOyuoIc8sR7P7YyI806Qsfhk3ybNZE5UHJFZKDRQKvRJ1t4nk9saeo87kIuNEDfYNdwYZzRfXoGJ5qIJQK+uJJv9noaIhfFowDW/G14Ji5pVh/YtvnOPh7aBjOj8jmzk8MqzK+TZgT7GWu48Nd/NaV8g/DNg9hlN047LaNsJly3NX3+VBlpMnA4rKwl1OnmYSirIVh9RJqNwqe6k/k="
                ]
          }    }
      ],      ]
  "name": "Romance"       }
     ]   },
  "ietf-keystore:keystore": {
    "private-keys": {
      "private-key": [         {"name": "ssh_host_rsa_key",
           "namealgorithm": "server_key",ietf-keystore:rsa"
        }
  "certificate-chains": {   ]
    },
    "certificatetrusted-chaincertificates": [
      {
        {
"name": "trusted_ca_list",
        "trusted-certificate": [
     "name": "server_cert",    {
            "certificatename": ["ca",
                  "MIIECTCCAvGgAwIBAgIBCDANBgkqhkiG9w0BAQsFADCBjDELMAkGA1UEBhMCQ1oxFjAUBgNVBAgMDVNvdXRoIE1vcmF2aWExDTALBgNVBAcMBEJybm8xDzANBgNVBAoMBkNFU05FVDEMMAoGA1UECwwDVE1DMRMwEQYDVQQDDApleGFtcGxlIENBMSIwIAYJKoZIhvcNAQkBFhNleGFtcGxlY2FAbG9jYWxob3N0MB4XDTE1MDczMDA3MjU1MFoXDTM1MDcyNTA3MjU1MFowgYUxCzAJBgNVBAYTAkNaMRYwFAYDVQQIDA1Tb3V0aCBNb3JhdmlhMQ8wDQYDVQQKDAZDRVNORVQxDDAKBgNVBAsMA1RNQzEXMBUGA1UEAwwOZXhhbXBsZSBzZXJ2ZXIxJjAkBgkqhkiG9w0BCQEWF2V4YW1wbGVzZXJ2ZXJAbG9jYWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAsdI1TBjzX1PgQXFuPCw5/kQwU7qkrhirMcFAXhI8EoXepPa9fKAVuMjHW32P6nNzDpnhFe0YGdNloIEN3hJJ87cVOqj4o7zZMbq3zVG2L8As7MTA8tYXm2fSC/0rIxxRRemcGUXM0q+4LEACjZj2pOKonaivF5VbhgNjPCO1Jj/TamUc0aViE577C9L9EiObGM+bGbabWk/KWKLsvxUc+sKZXaJ7psTVgpggJAkUszlmwOQgFiMSR53E9/CAkQYhzGVCmH44Vs6Hzs3RZjOTbce4wr4ongiA5LbPeSNSCFjy9loKpaE1rtOjkNBVdiNPCQTmLuODXUTKgkeL+9v/OwIDAQABo3sweTAJBgNVHRMEAjAAMCwGCWCGSAGG+EIBDQQfFh1PcGVuU1NMIEdlbmVyYXRlZCBDZXJ0aWZpY2F0ZTAdBgNVHQ4EFgQU83qEtQDFzDvLoaIIvqiU6k7j1uswHwYDVR0jBBgwFoAUc1YQIqjZsHVwlea0AB4N+ilNI2gwDQYJKoZIhvcNAQELBQADggEBAJ+QOLi4gPWGofMkLTqSsbv5xRvTw0xa/sJnEeiejtygAu3oMcAsyevSH9EYVPCANxzISPzd9SFaO56HxWgcxLn9vi8ZNvo2wIp9zucNu285ced1K/2nDZfBmvBxXnj/n7spwqOyuoIc8sR7P7YyI806Qsfhk3ybNZE5UHJFZKDRQKvRJ1t4nk9saeo87kIuNEDfYNdwYZzRfXoGJ5qIJQK+uJJv9noaIhfFowDW/G14Ji5pVh/YtvnOPh7aBjOj8jmzk8MqzK+TZgT7GWu48Nd/NaV8g/DNg9hlN047LaNsJly3NX3+VBlpMnA4rKwl1OnmYSirIVh9RJqNwqe6k/k"certificate": "MIID7TCCAtWgAwIBAgIJAMtE1NGAR5KoMA0GCSqGSIb3DQEBBQUAMIGMMQswCQYDVQQGEwJDWjEWMBQGA1UECAwNU291dGggTW9yYXZpYTENMAsGA1UEBwwEQnJubzEPMA0GA1UECgwGQ0VTTkVUMQwwCgYDVQQLDANUTUMxEzARBgNVBAMMCmV4YW1wbGUgQ0ExIjAgBgkqhkiG9w0BCQEWE2V4YW1wbGVjYUBsb2NhbGhvc3QwHhcNMTQwNzI0MTQxOTAyWhcNMjQwNzIxMTQxOTAyWjCBjDELMAkGA1UEBhMCQ1oxFjAUBgNVBAgMDVNvdXRoIE1vcmF2aWExDTALBgNVBAcMBEJybm8xDzANBgNVBAoMBkNFU05FVDEMMAoGA1UECwwDVE1DMRMwEQYDVQQDDApleGFtcGxlIENBMSIwIAYJKoZIhvcNAQkBFhNleGFtcGxlY2FAbG9jYWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArD3TDHPAMT2Z84orK4lMlarbgooIUCcRZyLe+QM+8KY8Hn+mGaxPEOTSL3ywszqefB/Utm2hPKLHX684iRC14ID9WDGHxPjvoPArhgFhfV+qnPfxKTgxZC12uOj4u1V9y+SkTCocFbRfXVBGpojrBuDHXkDMDEWNvr8/52YCv7bGaiBwUHolcLCUbmtKILCG0RNJyTaJpXQdAeq5Z1SJotpbfYFFtAXB32hVoLug1dzl2tjG9sb1wq3QaDExcbC5w6P65qOkNoyym9ne6QlQagCqVDyFn3vcqkRaTjvZmxauCeUxXgJoXkyWcm0lM1KMHdoTArmchw2Dz0yHHSyDAQIDAQABo1AwTjAdBgNVHQ4EFgQUc1YQIqjZsHVwlea0AB4N+ilNI2gwHwYDVR0jBBgwFoAUc1YQIqjZsHVwlea0AB4N+ilNI2gwDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAI/1KH60qnw9Xs2RGfi0/IKf5EynXt4bQX8EIyVKwSkYKe04zZxYfLIl/Q2HOPYoFmm3daj5ddr0ZS1i4p4fTUhstjsYWvXs3W/HhVmFUslakkn3PrswhP77fCk6eEJLxdfyJ1C7Uudq2m1isZbKih+XF0mG1LxJaDMocSz4eAya7M5brwjy8DoOmA1TnLQFCVcpn+sCr7VC4wE/JqxyVhBCk/MuGqqM3B1j90bGFZ112ZOecyE0EDSr6IbiRBtmeNbEwOFjKXhNLYdxpBZ9D8A/368OckZkCrVLGuJNxK9UwCVTe8IhotHUqU9EqFDmxdV8oIdU/OzUwwNPA/Bd/9g=="
          }
        ]
      }
    ]
  },
  "ietf-yang-library:modules-state": {
    "module-set-id": "23",
  ]  "module": [
      {
}         }"name": "ietf-ssh-server",
        {
"revision": "2016-11-02",
         "nameconformance-type": "ssh_host_rsa_keyimport",
 
        "algorithmnamespace": "urn:ietf-keystore:rsa":params:xml:ns:yang:ietf-ssh-server"
      },
      {
  }       ]"name": "ietf-netconf-acm",
    },    "revision": "trusted2018-02-certificates14": [
      {
,
        "nameconformance-type": "trusted_ca_listimport",
        "trusted-certificatenamespace": ["urn:ietf:params:xml:ns:yang:ietf-netconf-acm"
       },
  {    {
        "name": "caietf-tls-server",
 
          "certificaterevision": "MIID7TCCAtWgAwIBAgIJAMtE1NGAR5KoMA0GCSqGSIb3DQEBBQUAMIGMMQswCQYDVQQGEwJDWjEWMBQGA1UECAwNU291dGggTW9yYXZpYTENMAsGA1UEBwwEQnJubzEPMA0GA1UECgwGQ0VTTkVUMQwwCgYDVQQLDANUTUMxEzARBgNVBAMMCmV4YW1wbGUgQ0ExIjAgBgkqhkiG9w0BCQEWE2V4YW1wbGVjYUBsb2NhbGhvc3QwHhcNMTQwNzI0MTQxOTAyWhcNMjQwNzIxMTQxOTAyWjCBjDELMAkGA1UEBhMCQ1oxFjAUBgNVBAgMDVNvdXRoIE1vcmF2aWExDTALBgNVBAcMBEJybm8xDzANBgNVBAoMBkNFU05FVDEMMAoGA1UECwwDVE1DMRMwEQYDVQQDDApleGFtcGxlIENBMSIwIAYJKoZIhvcNAQkBFhNleGFtcGxlY2FAbG9jYWxob3N0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArD3TDHPAMT2Z84orK4lMlarbgooIUCcRZyLe+QM+8KY8Hn+mGaxPEOTSL3ywszqefB/Utm2hPKLHX684iRC14ID9WDGHxPjvoPArhgFhfV+qnPfxKTgxZC12uOj4u1V9y+SkTCocFbRfXVBGpojrBuDHXkDMDEWNvr8/52YCv7bGaiBwUHolcLCUbmtKILCG0RNJyTaJpXQdAeq5Z1SJotpbfYFFtAXB32hVoLug1dzl2tjG9sb1wq3QaDExcbC5w6P65qOkNoyym9ne6QlQagCqVDyFn3vcqkRaTjvZmxauCeUxXgJoXkyWcm0lM1KMHdoTArmchw2Dz0yHHSyDAQIDAQABo1AwTjAdBgNVHQ4EFgQUc1YQIqjZsHVwlea0AB4N+ilNI2gwHwYDVR0jBBgwFoAUc1YQIqjZsHVwlea0AB4N+ilNI2gwDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQUFAAOCAQEAI/1KH60qnw9Xs2RGfi0/IKf5EynXt4bQX8EIyVKwSkYKe04zZxYfLIl/Q2HOPYoFmm3daj5ddr0ZS1i4p4fTUhstjsYWvXs3W/HhVmFUslakkn3PrswhP77fCk6eEJLxdfyJ1C7Uudq2m1isZbKih+XF0mG1LxJaDMocSz4eAya7M5brwjy8DoOmA1TnLQFCVcpn+sCr7VC4wE/JqxyVhBCk/MuGqqM3B1j90bGFZ112ZOecyE0EDSr6IbiRBtmeNbEwOFjKXhNLYdxpBZ9D8A/368OckZkCrVLGuJNxK9UwCVTe8IhotHUqU9EqFDmxdV8oIdU/OzUwwNPA/Bd/9g=="2016-11-02",
        "conformance-type": "import",
}         ]"namespace": "urn:ietf:params:xml:ns:yang:ietf-tls-server"
      },
    ]  {
      },  "name": "ietf-yang-library:modules-state": {metadata",
        "revision": "2016-08-05",
        "moduleconformance-set-idtype": "23import",
        "modulenamespace": ["urn:ietf:params:xml:ns:yang:ietf-yang-metadata"
      },
      {
        "name": "ietfnc-ssh-servernotifications",
        "revision": "20162008-1107-0214",
        "conformance-type": "importimplement",
        "namespace": "urn:ietf:params:xml:ns:yang:ietf-ssh-servernetmod:notification"
      },
      {
        "name": "ietfiana-netconfcrypt-acmhash",
        "revision": "20182014-0208-1406",
        "conformance-type": "import",
        "namespace": "urn:ietf:params:xml:ns:yang:ietfiana-netconfcrypt-acmhash"
      },
      {
        "name": "ietf-tlsnetconf-server",
        "revision": "2016-11-02",
        "conformance-typefeature": "import",[
         "namespace": "urn:ietf:params:xml:ns:yang:ietf-tls-server"tls-call-home",
      },    "ssh-listen",
          {"tls-listen",
         "name": "ietfssh-yangcall-metadatahome",
          "revision":listen",
          "2016call-08-05"home"
        ],
        "conformance-type": "importimplement",
        "namespace": "urn:ietf:params:xml:ns:yang:ietf-yangnetconf-metadataserver"
      },
      {
        "name": "nc-notificationsstores",
        "revision": "20082020-0709-1415",
        "conformance-type": "implement",
        "namespace": "urnorg:ietfonap:params:xml:ns:netmod:notificationccsdk:sample"
      },
      {
        "name": "ianaietf-cryptyang-hashtypes",
        "revision": "20142013-0807-0615",
        "conformance-type": "import",
        "namespace": "urn:ietf:params:xml:ns:yang:ianaietf-cryptyang-hashtypes"
      },
      {
        "name": "ietf-netconf-serveryang",
        "revision": "20162017-1102-0220",
        "featureconformance-type": ["implement",
          "tls-call-home",
"namespace": "urn:ietf:params:xml:ns:yang:1"
      },
      {
        "name": "sshietf-listensystem",
         "revision": "tls2014-08-listen06",
 
        "ssh-call-home",feature": [
          "listenlocal-users",
          "call-homeauthentication"
        ],
        "conformance-type": "implement",
        "namespace": "urn:ietf:params:xml:ns:yang:ietf-netconf-serversystem"
      },
      {
        "name": "storesietf-inet-types",
        "revision": "20202013-0907-15",
        "conformance-type": "implementimport",
        "namespace": "org:onap:ccsdk:sampleurn:ietf:params:xml:ns:yang:ietf-inet-types"
      },
      {
        "name": "ietf-yang-typeskeystore",
        "revision": "20132016-0710-1531",
        "conformance-type": "importimplement",
        "namespace": "urn:ietf:params:xml:ns:yang:ietf-yang-typeskeystore"
      },
      {
        "name": "yangietf-datastores",
        "revision": "2017-0208-2017",
        "conformance-type": "implementimport",
        "namespace": "urn:ietf:params:xml:ns:yang:1"
      },
      {
        "name": "ietf-system",
        "revision": "2014-08-06",ietf-datastores"
      },
    "feature": [ {
        "name": "localietf-yang-userslibrary",
         "revision": "authentication"
        ]2019-01-04",
        "conformance-type": "implement",
        "namespace": "urn:ietf:params:xml:ns:yang:ietf-yang-systemlibrary"
      },
      {
        "name": "ietf-inetnetconf-typesnotifications",
        "revision": "20132012-0702-1506",
        "conformance-type": "importimplement",
        "namespace": "urn:ietf:params:xml:ns:yang:ietf-inetnetconf-typesnotifications"
      },
      {
        "name": "ietf-keystore": "ietf-netconf",
        "revision": "2011-06-01",
        "feature": [
          "writable-running",
          "candidate",
        "revision":  "2016-10-31startup",
        "conformance-type":  "implementurl",
         "namespace": "urn:ietf:params:xml:ns:yang:ietf-keystore" "rollback-on-error",
      },     "validate",
 {         "namexpath":
"ietf-datastores",         "revision": "2017-08-17"],
        "conformance-type": "importimplement",
        "namespace": "urn:ietf:params:xml:ns:yang:ietf-datastoresnetconf:base:1.0"
      },
      {
        "name": "ietf-yangnetconf-librarymonitoring",
        "revision": "20192010-0110-04",
        "conformance-type": "implement",
        "namespace": "urn:ietf:params:xml:ns:yang:ietf-yangnetconf-librarymonitoring"
      },
      {
        "name": "ietfturing-netconf-notificationsmachine",
        "revision": "20122013-0212-0627",
        "conformance-type": "implement",
        "namespace": "urn:ietf:params:xml:ns:yang:ietf-netconf-notificationshttp://example.net/turing-machine"
      },
      {
        "name": "ietf-netconfnotifications",
        "revision": "20112008-0607-0114",
        "featureconformance-type": [
          "writable-runningimplement",
          "candidate","namespace": "urn:ietf:params:xml:ns:netconf:notification:1.0"
      },
    "startup",  {
        "urlname",
          "rollback-on-error",
 : "ietf-x509-cert-to-name",
        "validate",
          "xpath"
        ]revision": "2014-12-10",
        "conformance-type": "implement",
        "namespace": "urn:ietf:params:xml:ns:netconf:base:1.0yang:ietf-x509-cert-to-name"
      },
      {
        "name": "ietf-netconf-with-monitoringdefaults",
        "revision": "20102011-1006-0401",
        "conformance-type": "implement",
        "namespace": "urn:ietf:params:xml:ns:yang:ietf-netconf-with-monitoringdefaults"
      },
    ]
  {},
  "nc-notifications:netconf": {
    "namestreams": {
      "turing-machine",stream": [
        {
          "revisionname": "2013nc-12-27notifications",
          "conformance-typereplaySupport": "implement" true
        },
        "namespace{
          "name": "http://example.net/turing-machine"
  ietf-keystore",
   },       {"replaySupport": true
       "name": "notifications", },
        {
"revision": "2008-07-14",         "conformance-typename": "implementietf-yang-library",
          "namespacereplaySupport": "urn:ietf:params:xml:ns:netconf:notification:1.0"false
        },
        {
          "name": "ietf-x509-cert-to-nameNETCONF",
          "revisiondescription": "2014-12-10",
        "conformance-type": "implement",
 Default NETCONF stream containing all the Event Notifications.",
      "namespace": "urn:ietf:params:xml:ns:yang:ietf-x509-cert-to-name"    "replaySupport": true
        },
        {
          "name": "ietf-netconf-with-defaultsnotifications",
          "revisionreplaySupport": "2011-06-01",true
        "conformance-type": "implement"},
        "namespace": "urn:ietf:params:xml:ns:yang:ietf-netconf-with-defaults"{
       }     ]
"name": "turing-machine",
 },   "nc-notifications:netconf": {     "streamsreplaySupport": {
true
     "stream": [  }
      {]
    }
  },
  "name": "nc-notifications",
    ietf-system:system": {
     "replaySupportauthentication": true{
        },"user": [
        {
          "name": "ietf-keystorenetconf",
          "replaySupportauthorized-key": true
[
       },     {
   {           "name": "ietf-yang-libraryid_rsa",
          "replaySupport": false         },
    "algorithm": "ssh-rsa",
   {           "namekey-data": "NETCONF",AAAAB3NzaC1yc2EAAAADAQABAAABAQD4pCY/jetSrsN3ToQwSIopEwDEFps7l327brjqp8a0vXmGuNztvnNDuQyGD5lKLDeK+dGSz+aHdCnD/10rIVSVxnw/TCyGWGHsYHpXqK0ZdiJ6HXX8FqGylTJZWTiSLSDrUwk8Mq8uIk3Sdy5E9yGgKcmA5GInBQuqMhZbzt1KhLhyp67+dIJ+D3b/JzSyPRHt9XMBpGTYMEuhjBM2aH5C9pltrmRq2NIF/cST1eidhTV2wMSqGm9jwDG7CwxAeYvan1cazZIrIfY7a/rD3sbxSPlzH92nUhw8m0qneKjDWO+kzCJVlWQ/q9c6hg69N2tBctYel3WTFw1usbbG/ZCF"
          "description": "Default NETCONF}
stream containing all the Event Notifications.",           "replaySupport": true
  ]
     },   }
     { ]
    }
  },
 "name": "ietf-netconf-server:netconf-notificationsserver",
     : {
    "replaySupportlisten": true{
      "endpoint": [
},         {
          "name": "turingall-machineinterfaces",
          "replaySupportssh": true{
        }    "address": "0.0.0.0",
 ]     }   },   "ietf-system:systemport": {830,
    "authentication": {       "userhost-keys": [
    {
   {           "namehost-key": "netconf",[
          "authorized-key": [         {
   {               "name": "id_rsa",
          imported SSH key",
   "algorithm": "ssh-rsa",
              "public-key-data": "AAAAB3NzaC1yc2EAAAADAQABAAABAQD4pCY/jetSrsN3ToQwSIopEwDEFps7l327brjqp8a0vXmGuNztvnNDuQyGD5lKLDeK+dGSz+aHdCnD/10rIVSVxnw/TCyGWGHsYHpXqK0ZdiJ6HXX8FqGylTJZWTiSLSDrUwk8Mq8uIk3Sdy5E9yGgKcmA5GInBQuqMhZbzt1KhLhyp67+dIJ+D3b/JzSyPRHt9XMBpGTYMEuhjBM2aH5C9pltrmRq2NIF/cST1eidhTV2wMSqGm9jwDG7CwxAeYvan1cazZIrIfY7a/rD3sbxSPlzH92nUhw8m0qneKjDWO+kzCJVlWQ/q9c6hg69N2tBctYel3WTFw1usbbG/ZCFssh_host_rsa_key"
            }    }
      ]        ]
}       ]     }
  },   "ietf-netconf-server:netconf-server": {    }
"listen": {       "endpoint": [},
         {
          "name": "all-interfacestls_listen_endpt",
          "sshtls": {
            "address": "0.0.0.0",
            "port": 830,"client-auth": {
              "trusted-ca-certs": "trusted_ca_list",
              "hostcert-keysmaps": {
                "hostcert-to-keyname": [
                  {
                    "nameid": "imported1,
SSH key",                   "public-keyname": "ssh_host_rsa_key"netconf",
                }    "map-type": "ietf-x509-cert-to-name:specified",
         ]             }
          }
        },"fingerprint": "02:E9:38:1F:F6:8B:62:DE:0A:0B:C5:03:81:A8:03:49:A0:00:7F:8B:F3"
           {       }
   "name": "tls_listen_endpt",           "tls": {
  ]
          "address": "0.0.0.0",   }
         "client-auth": {  },
            "trusted-ca-certsport": "trusted_ca_list",
 6513,
            "cert-mapscertificates": {
                "cert-to-name"certificate": [
                {
      {            "name": "server_cert"
          "id": 1,     }
              ]
"name": "netconf",           }
         "map-type": "ietf-x509-cert-to-name:specified", }
        }
      ]
    }
  "fingerprint": "02:E9:38:1F:F6:8B:62:DE:0A:0B:C5:03:81:A8:03:49:A0:00:7F:8B:F3"
         }
}

The data received from the RAN should be updated in the CPS DB. The CPS currently supports the persist of the data in the format below. eg: stores:bookstore in the format <module>:<top level container>

The PNF simulator returns multiple resources but the actual RAN will return just one resource. So it is agreed to persist the first resource that is received from the RAN. 

Code Block
languagexml
titleData from RAN
{
  "stores:bookstore": {
    "categories": [
      {
 }       "code": "05",
        ]"books": [
          {
  }          "title": "A Romance }Book",
            "portprice": 6513"2000",
            "certificatespub_year": {
2002,
             "certificatelang": ["English",
                {"authors": [
                  "nameLathish":
"server_cert"            ]
    }      }
        ],
            }
          }
 "name": "Romance"
      }
 
    ]
    }
  }
}