Objekte

Objekte können beliebige Eigenschaften enthalten. Eine Eigenschaft wird unter Eigenschaften (properties) beschrieben und kann durch optionale Metadaten (propertiesMeta) spezialisiert werden.

Das nachfolgende JSON-Schema beschreibt ein Objekt mit zwei Eigenschaften.

{
   "$schema": "http://json-schema.org/draft-04/schema",
   "definitions": {
      "CustomDatatype": {
         "$schema": "http://json-schema.org/draft-04/schema",
         "title": "CustomDatatype",
         "type": "object",
         "propertiesMeta": [
            {
               "name": "axisName",
               "category": "Name",
               "displayName": "Axis Name",
               "displayPriority": 10,
               "description": "",
               "defaultValue": null,
               "defaultValueInternal": null
            },
            {
               "name": "axisColor",
               "category": "Colors",
               "displayName": "Axis color",
               "displayPriority": 10,
               "description": "",
               "defaultValue": null,
               "defaultValueInternal": {
                  "color": "#4794da"
               }
            }
         ],
         "properties": {
            "axisName": {
               "type": "string"
            },
            "axisColor": {
               "$ref": "tchmi:framework#/definitions/SolidColor"
            }
         },
         "required": [ "axisName" ]
      }
   }
}

Daraus ergibt sich der folgende generische Dateneditor im Engineering.

Objekte 1:

Erläuterungen

propertiesMeta:

Die Metadaten der Eigenschaften sind optional und beschreiben die Anzeige innerhalb des generischen Dateneditors. Die Beschreibung der Metadaten erfolgt durch folgende Eigenschaften:

properties:

Der Name und der Datentyp der Eigenschaften des Objektes werden unter den Eigenschaften beschrieben. Der Name wird durch die Bezeichnung der Eigenschaft festgesetzt. Der Datentyp kann wie folgt beschrieben werden:

required:

Die erforderlichen Eigenschaften (properties) werden unter „required“ aufgelistet. Die Auflistung erfolgt auf Basis des internen Namens. Wenn eine Eigenschaft des Objektes die auf erforderlich steht im Engineering nicht gesetzt wird, zeigt der generische Dateneditor eine Warnung an.