--- /dev/null
+module dmi-registry {
+
+ yang-version 1.1;
+
+ namespace \"org:onap:cps:ncmp\";
+
+ prefix dmi-reg;
+
+ organization \"Nordix Foundation\";
+
+ contact \"rahul.tyagi@est.tech\";
+
+ revision \"2021-05-20\" {
+ description
+ \"Initial Version\";
+ }
+
+ container dmi-registry {
+
+ list cm-handles {
+
+ key \"id\";
+
+ leaf id {
+ type string;
+ }
+
+ leaf dmi-service-name {
+ type string;
+ }
+
+ list additional-properties {
+
+ key \"name\";
+
+ leaf name {
+ type string;
+ }
+
+ leaf value {
+ type string;
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
CPS Design
##########
-.. warning:: draft
-
.. toctree::
:maxdepth: 1
:download:`CPS NCMP RestOpenApi Specification <api/swagger/ncmp/openapi.yaml>`
-Exposed API
------------
+View Offered APIs
+-----------------
The standard for API definition in the RESTful API world is the OpenAPI Specification (OAS).
The OAS 3, which is based on the original "Swagger Specification", is being widely used in API developments.
.. code-block:: bash
- “http://<hostname>:<port>/v3/api-docs?group=cps-docket”
+ http://<hostname>:<port>/v3/api-docs?group=cps-docket
+
+Additionally, the Swagger User Interface can be found at the following URI. The component may be changed between CPS-Core
+and CPS-NCMP using the drop down table in the top right:
+
+.. code-block:: bash
+
+ http://<hostname>:<port>/swagger-ui/index.html?configUrl=/v3/api-docs/swagger-config#/
+
+Consumed APIs
+-------------
+
+CPS Core uses API's from the following ONAP components
+
+* DMI-Plugin: REST based interface which is used to provide integration
+ and allow the DMI registry API's have access to the corresponding NCMP API's within CPS Core.
+ More information on the DMI Plugins offered APIs can be found on the `DMI Plugin's Design Page <https://docs.onap.org/projects/onap-cps-ncmp-dmi-plugin/en/latest/design.html>`_.
CPS Path
========
.. Copyright (C) 2021 Pantheon.tech
.. _modeling:
+.. toctree::
+ :maxdepth: 1
+
CPS Modeling
############
-.. warning:: draft
+CPS-Core Modeling
+=================
-.. toctree::
- :maxdepth: 1
-
-Basic Concepts
-==============
+Data Model
+----------
.. image:: _static/cps-modeling-concepts.png
:alt: Basic entities relationship
+Basic Concepts
+--------------
+
Administrative entities
- **Dataspace** is a primary logical separation of data.
and uniquely identified by its name (within its own dataspace). Same YANG resources (source files) can be
referenced by multiple schema sets from different dataspaces.
-- **Anchor** identifies the unique data set (data record) within a dataspace
+- **Anchor** identifies the unique data set (data record) within a dataspace.
Anchor always references a schema set within same dataspace which describes a data model of associated data.
Multiple anchors may reference same schema set. Anchor is uniquely identified by its name (within own dataspace).
Querying
-- **CPS Path** is used to query data nodes. The CPS Path is described in detail in the :doc:`cps-path` sub-page.
+- **CPS Path** is used to query data nodes. The CPS Path is described in detail in :doc:`cps-path`.
-CPS Path
-========
+NCMP Modeling
+=============
-.. toctree::
- :maxdepth: 1
+Data Model
+----------
+
+NCMP stores DMI Plugin and CM Handle relations using a data model described as per this Yang module.
+
+:download:`DMI Yang Module <api/yang/dmiYangResource.yang>`
+
+Basic Concepts
+--------------
+
+- **CM-Handle** represents an instance a modeled Network Function(node) in ONAP.
+
+ These are stored as Anchors within CPS-Core.
+
+- **Datastores** represent different views of the cm data.
- cps-path.rst
+ Datastores are defined for NCMP to access the CPS running or operational datastores. Currently supported datastores are:
+ +--------------------------------+-------------------------------------+-------------------------+
+ | Datastore | Configurations | Data access type |
+ +================================+=====================================+=========================+
+ | Passthrough-operational | config-true, config-false | read-only |
+ +--------------------------------+-------------------------------------+-------------------------+
+ | Passthrough-running | config-true | read-write |
+ +--------------------------------+-------------------------------------+-------------------------+
\ No newline at end of file