From 55dc654964942aa67c48f09b0ba56059be8e923b Mon Sep 17 00:00:00 2001 From: Ruslan Kashapov Date: Tue, 2 Mar 2021 16:48:41 +0200 Subject: Docs: overview, architecture, design, modeling Issue-ID: CPS-268 Change-Id: I31480a9a6186af0ddedae4f0eca06a744a2e2d64 Signed-off-by: Ruslan Kashapov --- docs/modeling.rst | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 docs/modeling.rst (limited to 'docs/modeling.rst') diff --git a/docs/modeling.rst b/docs/modeling.rst new file mode 100644 index 0000000000..74ee8ec86a --- /dev/null +++ b/docs/modeling.rst @@ -0,0 +1,47 @@ +.. This work is licensed under a Creative Commons Attribution 4.0 International License. +.. http://creativecommons.org/licenses/by/4.0 +.. Copyright (C) 2021 Pantheon.tech +.. _modeling: + +CPS Modeling +############ + +.. toctree:: + :maxdepth: 1 + +Basic Concepts +============== + +.. image:: _static/cps-modeling-concepts.png + :alt: Basic entities relationship + +Administrative entities + +- **Dataspace** is a primary logical separation of data. + + Any application can define its own dataspace to store the model(s) and data it owns. + Dataspace is uniquely identified by it's name. + +- **Schema Set** describes a data model(s). + + Schema Set holds reference(s) to single or multiple YANG modules. Schema Set belongs to dataspace + 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 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). + +Data + +- **Data Node** represents a data fragment. + + Each data node can have zero or more descendants and together they form a data instance tree. + The data node tree belongs to an anchor. + + Data node is representing a data fragment described in a YANG model as a *container* and/or a *list*. + The data described as a *leaf* and/or a *leaf-list* are stored within a parent data node. + + The data node position within a tree is uniquely identified by the node's unique **xpath** which can be used + for partial data query. -- cgit 1.2.3-korg