2023-01-26 18:51:22 +01:00
2023-05-12 15:00:41 +02:00
.. _Property:
2023-01-26 17:48:56 +01:00
Property
========
This is the base type for any Property
.. table :: **Property**
+------------------------------------------------------+------+------------+-------------+
| Name | Type | Attributes | Description |
+======================================================+======+============+=============+
| This type does not define any additional attributes. |
+------------------------------------------------------+------+------------+-------------+
The **Property** current version is 1.0.0.
Changelog:
* **1.0.0** : First Version.
2023-05-12 15:00:41 +02:00
.. _Encrypted:
2023-05-02 18:05:24 +02:00
Encrypted
---------
This type is used to properly manage values must be stored safely (e.g. encrypted) in the IS.
.. table :: **Encrypted** `` extends `` **Property**
+-------+--------+--------------------------------------------------------+-------------------------------------+
| Name | Type | Attributes | Description |
+=======+========+========================================================+=====================================+
| value | String | `` Mandatory:true `` `` ReadOnly:false `` `` NotNull:true `` | The value to store safely in the IS |
+-------+--------+--------------------------------------------------------+-------------------------------------+
The **Encrypted** current version is 1.0.0.
Changelog:
* **1.0.0** : First Version.
2023-05-12 15:00:41 +02:00
.. _Metadata:
2023-05-02 18:05:24 +02:00
Metadata
--------
2023-01-26 17:48:56 +01:00
This type provides metadata per every IdentifiableElement
2023-04-19 11:37:37 +02:00
.. table :: **Metadata** `` extends `` **Property**
2023-01-26 17:48:56 +01:00
2023-05-02 18:05:24 +02:00
+----------------+--------+--------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------+
| Name | Type | Attributes | Description |
+================+========+========================================================+=========================================================================================================================================+
| createdBy | String | `` Mandatory:true `` `` ReadOnly:true `` `` NotNull:true `` | The user that created the Entity or the Relation. It is initialized at Creation Time. |
+----------------+--------+--------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------+
| creationTime | Date | `` Mandatory:true `` `` ReadOnly:true `` `` NotNull:true `` | Creation time. It is represented in the format yyyy-MM-dd HH:mm:ss.SSS Z. |
+----------------+--------+--------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------+
| lastUpdateBy | String | `` Mandatory:true `` `` ReadOnly:false `` `` NotNull:true `` | The user that made the last update to the Entity or the Relation. At Creation Time, it assumes the same value of createdBy. |
+----------------+--------+--------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------+
| lastUpdateTime | Date | `` Mandatory:true `` `` ReadOnly:false `` `` NotNull:true `` | Last Update time. At creation time it assumes the same value of creationTime. It is represented in the format yyyy-MM-dd HH:mm:ss.SSS Z |
+----------------+--------+--------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------+
2023-01-26 17:48:56 +01:00
2023-04-19 11:37:37 +02:00
The **Metadata** current version is 1.0.0.
2023-01-26 17:48:56 +01:00
Changelog:
* **1.0.0** : First Version.
2023-05-12 15:00:41 +02:00
.. _PropagationConstraint:
2023-02-27 15:07:41 +01:00
PropagationConstraint
---------------------
2023-01-26 17:48:56 +01:00
2023-02-27 15:07:41 +01:00
This type provides propagation constraint for Relation
2023-01-26 17:48:56 +01:00
2023-02-27 15:07:41 +01:00
.. table :: **PropagationConstraint** `` extends `` **Property**
2023-01-26 17:48:56 +01:00
2023-02-27 15:07:41 +01:00
+--------+--------+-----------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Name | Type | Attributes | Description |
+========+========+=====================================================================================================+======================================================================================================================================================================================================================+
| add | String | `` Mandatory:true `` `` ReadOnly:false `` `` NotNull:true `` `` Regex:^(propagate|unpropagate)$ `` | It indicates the behaviour to implement for the target Entity when an 'add' action is performed on the source Resource. Add action is the operation of adding an instance to a context. |
+--------+--------+-----------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| delete | String | `` Mandatory:true `` `` ReadOnly:false `` `` NotNull:true `` `` Regex:^(cascadeWhenOrphan|cascade|keep)$ `` | It indicates the behaviour to implement for the target Entity when a 'delete' action is performed on the source Resource. Delet action is the operation of deleting an instance (it has an impact on all contexts). |
+--------+--------+-----------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| remove | String | `` Mandatory:true `` `` ReadOnly:false `` `` NotNull:true `` `` Regex:^(cascadeWhenOrphan|cascade|keep)$ `` | It indicates the behaviour to implement for the target Entity when a 'remove' action is performed on the source Resource. Remove actions is the operation of removing an instance from a context. |
+--------+--------+-----------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
2023-01-26 17:48:56 +01:00
2023-02-27 15:07:41 +01:00
The **PropagationConstraint** current version is 1.1.0.
2023-01-26 17:48:56 +01:00
Changelog:
2023-02-27 15:07:41 +01:00
* **1.1.0** : Added 'delete' propagation constraint;
* **1.0.0** : First Version;
2023-01-26 17:48:56 +01:00
2023-05-12 15:00:41 +02:00
.. _Entity:
2023-01-26 17:48:56 +01:00
Entity
======
This is the base type for any Entity
.. table :: **Entity**
2023-05-12 15:00:41 +02:00
+------------+----------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------+
| Properties |
+============+============================+====================================================================================================================================================+============================================================================================+
| **Name** | **Type** | **Attributes** | **Description** |
+------------+----------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------+
| id | String | `` Mandatory:true `` `` ReadOnly:true `` `` NotNull:true `` `` Regex:^([a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}){1}$ `` | This UUID is be used to identify the instance univocally. |
+------------+----------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------+
| metadata | :ref: `Metadata <Metadata>` | `` Mandatory:true `` `` ReadOnly:false `` `` NotNull:true `` | Metadata associated with the instance that is automatically created/updated by the system. |
+------------+----------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+--------------------------------------------------------------------------------------------+
2023-01-26 17:48:56 +01:00
The **Entity** current version is 1.0.0.
Changelog:
* **1.0.0** : First Version.
2023-05-12 15:00:41 +02:00
.. _Resource:
2023-01-26 17:48:56 +01:00
Resource
--------
This is the base type for any Resource
.. table :: **Resource** `` extends `` **Entity**
+-------------------------------------------------------+----------+--------------+--------+-------------+
| Source | Relation | Multiplicity | Target | Description |
+=======================================================+==========+==============+========+=============+
| **Facets** |
+-------------------------------------------------------+----------+--------------+--------+-------------+
| No specific facets usage defined for this type. |
+-------------------------------------------------------+----------+--------------+--------+-------------+
| **Resource Relations** |
+-------------------------------------------------------+----------+--------------+--------+-------------+
| No specific Resource relations defined for this type. |
+-------------------------------------------------------+----------+--------------+--------+-------------+
The **Resource** current version is 1.0.0.
Changelog:
* **1.0.0** : First Version.
2023-05-12 15:00:41 +02:00
.. _Facet:
2023-01-26 17:48:56 +01:00
Facet
-----
This is the base type for any Facet
.. table :: **Facet** `` extends `` **Entity**
+------------------------------------------------------+--------------+------------------+-----------------+-----------------+
| Properties |
+======================================================+==============+==================+=================+=================+
| **Name** | **Type** | **Attributes** | **Description** |
+------------------------------------------------------+--------------+------------------+-----------------+-----------------+
| This type does not define any additional attributes. |
+------------------------------------------------------+--------------+------------------+-----------------+-----------------+
| **Known Usage** |
+------------------------------------------------------+--------------+------------------+-----------------+-----------------+
| **Source** | **Relation** | **Multiplicity** | **Target** | **Description** |
+------------------------------------------------------+--------------+------------------+-----------------+-----------------+
| No specific known usage for this type. |
+------------------------------------------------------+--------------+------------------+-----------------+-----------------+
The **Facet** current version is 1.0.0.
Changelog:
* **1.0.0** : First Version.
2023-05-12 15:00:41 +02:00
.. _Relation:
2023-01-26 17:48:56 +01:00
Relation
========
This is the base type for any Relation
.. table :: **Relation**
2023-05-12 15:00:41 +02:00
+----------------------------+------------------------------------------------------+----------------------------------------------------------+------------------------+----------------------------------------+
| **Definition** |
+============================+======================================================+==========================================================+========================+========================================+
| **Source** | **Relation** | **Multiplicity** | **Target** | **Description** |
+----------------------------+------------------------------------------------------+----------------------------------------------------------+------------------------+----------------------------------------+
| :ref: `Resource <Resource>` | :ref: `Relation <Relation>` | 0..n | :ref: `Entity <Entity>` | This is the base type for any Relation |
+----------------------------+------------------------------------------------------+----------------------------------------------------------+------------------------+----------------------------------------+
| **Properties** |
+----------------------------+------------------------------------------------------+----------------------------------------------------------+------------------------+----------------------------------------+
| **Name** | **Type** | **Attributes** | **Description** |
+----------------------------+------------------------------------------------------+----------------------------------------------------------+------------------------+----------------------------------------+
| propagationConstraint | :ref: `PropagationConstraint <PropagationConstraint>` | `` Mandatory:false `` `` ReadOnly:false `` `` NotNull:false `` | |
+----------------------------+------------------------------------------------------+----------------------------------------------------------+------------------------+----------------------------------------+
2023-01-26 17:48:56 +01:00
The **Relation** current version is 1.0.0.
Changelog:
* **1.0.0** : First Version.
2023-05-12 15:00:41 +02:00
.. _IsRelatedTo:
2023-01-26 17:48:56 +01:00
IsRelatedTo
-----------
This is the base type for any IsRelatedTo relation
.. table :: **IsRelatedTo** `` extends `` **Relation**
2023-05-12 15:00:41 +02:00
+------------------------------------------------------+----------------------------------+------------------+----------------------------+----------------------------------------------------+
| **Definition** |
+======================================================+==================================+==================+============================+====================================================+
| **Source** | **Relation** | **Multiplicity** | **Target** | **Description** |
+------------------------------------------------------+----------------------------------+------------------+----------------------------+----------------------------------------------------+
| :ref: `Resource <Resource>` | :ref: `IsRelatedTo <IsRelatedTo>` | 0..n | :ref: `Resource <Resource>` | This is the base type for any IsRelatedTo relation |
+------------------------------------------------------+----------------------------------+------------------+----------------------------+----------------------------------------------------+
| **Properties** |
+------------------------------------------------------+----------------------------------+------------------+----------------------------+----------------------------------------------------+
| **Name** | **Type** | **Attributes** | **Description** |
+------------------------------------------------------+----------------------------------+------------------+----------------------------+----------------------------------------------------+
| This type does not define any additional attributes. |
+------------------------------------------------------+----------------------------------+------------------+----------------------------+----------------------------------------------------+
| **Known Usage** |
+------------------------------------------------------+----------------------------------+------------------+----------------------------+----------------------------------------------------+
| **Source** | **Relation** | **Multiplicity** | **Target** | **Description** |
+------------------------------------------------------+----------------------------------+------------------+----------------------------+----------------------------------------------------+
| No specific known usage for this type. |
+------------------------------------------------------+----------------------------------+------------------+----------------------------+----------------------------------------------------+
2023-01-26 17:48:56 +01:00
The **IsRelatedTo** current version is 1.0.0.
Changelog:
* **1.0.0** : First Version.
2023-05-12 15:00:41 +02:00
.. _ConsistsOf:
2023-02-27 15:07:41 +01:00
ConsistsOf
----------
This is the base type for any ConsistsOf relation
.. table :: **ConsistsOf** `` extends `` **Relation**
2023-05-12 15:00:41 +02:00
+------------------------------------------------------+--------------------------------+------------------+----------------------+---------------------------------------------------+
| **Definition** |
+======================================================+================================+==================+======================+===================================================+
| **Source** | **Relation** | **Multiplicity** | **Target** | **Description** |
+------------------------------------------------------+--------------------------------+------------------+----------------------+---------------------------------------------------+
| :ref: `Resource <Resource>` | :ref: `ConsistsOf <ConsistsOf>` | 0..n | :ref: `Facet <Facet>` | This is the base type for any ConsistsOf relation |
+------------------------------------------------------+--------------------------------+------------------+----------------------+---------------------------------------------------+
| **Properties** |
+------------------------------------------------------+--------------------------------+------------------+----------------------+---------------------------------------------------+
| **Name** | **Type** | **Attributes** | **Description** |
+------------------------------------------------------+--------------------------------+------------------+----------------------+---------------------------------------------------+
| This type does not define any additional attributes. |
+------------------------------------------------------+--------------------------------+------------------+----------------------+---------------------------------------------------+
| **Known Usage** |
+------------------------------------------------------+--------------------------------+------------------+----------------------+---------------------------------------------------+
| **Source** | **Relation** | **Multiplicity** | **Target** | **Description** |
+------------------------------------------------------+--------------------------------+------------------+----------------------+---------------------------------------------------+
| No specific known usage for this type. |
+------------------------------------------------------+--------------------------------+------------------+----------------------+---------------------------------------------------+
2023-02-27 15:07:41 +01:00
The **ConsistsOf** current version is 1.0.0.
Changelog:
* **1.0.0** : First Version.