Domain (domain)

Description

A data structure element that defines the boundaries between data within a deployed system «Incoplax».
Domains are a hierarchical domain tree where each child domain inherits the name of its parent domain.

The system logic uses domains and objects belonging to them when implementing functionality and defining access for individual users. Any object accessible externally through the API belongs to some domain. Including any user of the system belongs to one particular domain and can only operate on data within the domain. All data within a domain is closed by default. An entity that belongs to one domain cannot belong to another domain. With few exceptions on the vertical hierarchy, domains, their users, processes, and objects do not have access to each other’s data.

Domains are involved in the distribution of quantitative licenses across the tree. Each domain reserves part of the licenses transferred to it from the parent domain for its own use, and can transfer the rest to child domains.

Limitations

  • The collection is available in any domain.

  • Licensed by a quantitative parameter: a license for domains and a license for the soluschen type is consumed at the same time.

Fields

Entity structure
{
  "id": uuid,
  "name": str,
  "solution": str,
  "dbdefaultconn": int,
  "dbhost": str,
  "dbport": int,
  "dblogin": str,
  "dbpwd": str,
  "lic": object,
  "opts": {
    "title": str,
    "comment": str,
    "dbuser": str,
    "isblocked": bool,
    "script_pause_between_components": int,
    "script_limit_component_count": int,
    "script_limit_site_count": int,
    "script_duration_sec": int,
    "script_allow_global_variables": bool
  },
  "ext": {
    "ct": date,
    "lwt": date
  }
}
Table 1. Fields
Specification Description

Field: id
Mode: inout
Type: uuid
Default: generated

Identifier. Can be specified at creation, otherwise generated by the system.

Field: name
Mode: in
Type: str
Default: required

Domain Name. Must match the name of the parent domain (under special conditions except for first-level domains). Subject to FQDN rules, but has a ban on upper case letters. The following characters are allowed: [a-z0-9_-.]

Field: solution
Mode: in
Type: str
Default: required

Domain Type (Solicitation).
Defines the metadata composition and product layer constraints per domain.
The number of soluschen of each type is limited by the license.

Field: lic
Mode: in
Type: object
Default: generated

Composition of quantitative licenses issued to the child domain from among the free licenses of the current domain.
The available amount of free licenses of each type in a domain is defined as X = Total - Owned - Sub, where Total is the number of transferred licenses from the parent domain, Owned is the number of reserved licenses for own needs, and Sub is the number of transferred licenses to child domains.
Read more about licenses.

Field: dbdefaultconn
Mode: in
Type: int
Default: 1

Service field. Not used.

Field: dbhost
Mode: in
Type: str
Default: empty

Service field. Not used.

Field: dbport
Mode: in
Type: int
Default: empty

Service field. Not used.

Field: dblogin
Mode: in
Type: str
Default: empty

Service field. Not used.

Field: dbpwd
Mode: in
Type: str
Default: empty

Service field. Not used.

Field: opts
Mode: in
Type: object
Composite field

Field: opts.title
Mode: in
Type: str
Default: empty

Arbitrary header

Field: opts.comment
Mode: in
Type: str
Default: empty

Arbitrary comment

Field: opts.dbuser
Mode: in
Type: str
Default: `"none"

The level of rights given to the domain to create temporary accounts to access its own databases. Possible values: none, read, write.

Field: opts.isblocked
Mode: in
Type: bool
Default: false

Enable/disable domain

Field: opts.script_pause_between_components
Mode: in
Type: int
Default: 0

Script execution limit: pause between script components, in milliseconds.

Field: opts.script_limit_component_count
Mode: in
Type: int
Default: -1

Script execution limit: maximum number of components executable in the script handler.

Field: opts.script_duration_sec
Mode: in
Type: int
Default: -1

Script execution limit: Maximum duration of script execution within the domain, in seconds.

Field: opts.script_limit_site_count
Mode: in
Type: int
Default: -1

(Not used) Script Execution Limit: Maximum number of scripts that can be simultaneously executed in the domain on a single site.

Field: opts.script_allow_global_variables
Mode: in
Type: bool
Default: true

(Not used) Scripting restriction: whether global variables are allowed to be used within the domain.
If disabled, they cannot be selected in the scenario editor application.

Field: ext
Mode: inout
Type: object
Compound field

Allows you to extend the compound with arbitrary keys and values

Field: ext.ct
Mode: out
Type: date
Default: generated

Object creation time

Field: ext.lwt
Mode: out
Type: date
Default: generated

Time of last modification of the object