Element Types

Type String

Description

STRUCT

Structure

CHAR

Character

UINT

Unsigned integer

INT

Integer

FLOAT

Double

BOOL

Boolean

BIT

Bit Pattern

STRING

Text

TIME

Data-Time

DPID

Data Point Instance Reference

LANGSTRING

Multilanguage text

BLOB

Blob

BIT64

64-bit pattern

LONG

64-bit integer

ULONG

64-bit unsigned integer

REF

Reference to another existing data point type

ARRAYCHAR

Dynamic array of characters

ARRAYUINT

Dynamic array of unsigned integers

ARRAYINT

Dynamic array of integers

ARRAYFLOAT

Dynamic array of doubles

ARRAYBOOL

Dynamic array of booleans

ARRAYBIT

Dynamic array of bit patterns

ARRAYSTRING

Dynamic array of texts

ARRAYTIME

Dynamic array of date-time values

ARRAYDPID

Dynamic array of data point instance references

ARRAYLANGSTRING

Dynamic array of multilanguage texts

ARRAYBLOB

Dynamic array of blob values

ARRAYBIT64

Dynamic array of 64-bit patterns

ARRAYLONG

Dynamic array of 64-bit integers

ARRAYULONG

Dynamic array of 64-bit unsigned integers

SETCHAR

Set of character elements

SETUINT

Set of unsigned integer elements

SETINT

Set of integer elements

SETFLOAT

Set of double elements

SETBOOL

Set of Boolean Elements

SETBIT

Set of Bit Pattern Elements

SETSTRING

Set of Text Elements

SETTIME

Set of Date-Time Elements

SETDPID

Set of Data Point Instance Reference Elements

SETLANGSTRING

Set of Multilanguage Text Elements

SETBLOB

Set of Blob Elements

SETBIT64

Set of 64-bits pattern elements

SETLONG

Set of 64-bit integer elements

SETULONG

Set of 64-bit unsigned integer elements

It is also possible to define in the JSON file some mandatory Data Points Elements that must be added to all the Data Points Types created.

In this case, the syntax to be used is the same as for the standard Data Point Type, but the name of the Data Point Type must be an asterisk (*).

Example

{

    "DPTData": {

        "DPTS": [

            {

                "Name": "*",

                "DPES": [

                    { "Name": "MyMandatoryFields", "PVSSTYPE": { "PvssType": "REF", "Ref": "_GmsMyMandatoryFields" } }

                ]

            },

        {

                "Name": "Test_NormalPoint",

                "DPES": [

                    { "Name": "Char_Value", "PVSSTYPE": { "PvssType": "CHAR" } },

                    { "Name": "UInt_Value", "PVSSTYPE": { "PvssType": "UINT" } },

                    { "Name": "Enum_Value", "PVSSTYPE": { "PvssType": "UINT" } },

                    { "Name": "Int_Value", "PVSSTYPE": { "PvssType": "INT" } },

                    { "Name": "Float_Value", "PVSSTYPE": { "PvssType": "FLOAT" } },

                    { "Name": "Bool_Value", "PVSSTYPE": { "PvssType": "BOOL" } },

                    { "Name": "Bit32_Value", "PVSSTYPE": { "PvssType": "BIT" } },

                    { "Name": "Duration_Value", "PVSSTYPE": { "PvssType": "UINT" } }

                ]

            }

        ]

    }

}

 

As every Data Point Type must have references to _GmsRelatedItems and _GmsStatusPropagation, those references – if not present in the file - are automatically added during the import and it is not necessary to declare them in the JSON file.

Also, the property SuppressAlarms is automatically added, if not present in the JSON file, and in this case, it is configured with the standard configuration data. If it is necessary to set different values, with respect to the default ones, the property SuppressAlarms must be explicitly added to the JSON file.