Xentara v2.0.4
User Manual
|
At the root of the Xentara model file is a JSON object that represents the anonymous root node of the model:
$schema | An optional string value containing the URI of the JSON schema for Xentara model files. Xentara itself ignores this member, but some editors may use it to associate the model file with the correct JSON schema. The schema schould always point to https://docs.xentara.io/xentara/schema-xentara-model.json. |
ACL | An optional JSON object containing the element ACL of the Xentara model. The format of the object is described under JSON Format for ACLs. |
children | A JSON array containing the top level elements in the model. This member is named children because the top level elements are considered children of the anonymous root node. The individual child elements are each represented by a double nested JSON object, as described in Element Blocks below. |
The individual elements within the model are each represented by a double nested JSON object. The outer object has a single member whose name is the type of element, and whose value is another JSON object that contains the actual properties of the element.
An element block has the following general structure:
"@ElementType" is the type designation of the element, as described in the documentation of the specific element type. The element type for data points, for example, is "@DataPoint".
A model containing three data points will look like this:
Skill element blocks are eaxtly like built-in element blocks, but the type designation has a special format. A JSON object describing a skill element looks like this:
The type designation of the element ("@Skill.SkillName.ElementType") consists of three parts:
The type designation for summary state elements from the built-in SignalProcessing skill, for example, is "@Skill.SignalProcessing.SummaryState".
JSON objects representing Xentara model elements all have a number of common members. All element types share the following configuration parameters:
"@ElementType" is the type designation of the specific element type, as describen in Element Blocks above.
name | A string value containing the name of the element. The name is used to construct the element’s primary key. |
UUID | A string value containing the unique UUID of the element. |
ACL | An optional JSON object containing the element ACL of the element. The format of the object is described under JSON Format for ACLs. |
children | A JSON array containing the children of the element. The types of elements allowed as children depend on the specific type of the parent element. See the documentation of the individual element types for details on which element types are supported as children, if any. Each child elements is again represented by its own element block, consisting of a double nested JSON object. |
Each element type can have additional members. The actual JSON format for the individual element types can be found here:
The format of skill elements loaded from plugins is described in the documentation of the respective plugin.
A JSON schema file to validate model files is available here.