JSON schema service

To use the toolkit, you first need to set up the JsonSchemaService by adding it to the station Services container.

Adding the JsonSchemaService component to the Services container can provide some station global filtering as well as the ability to restrict user access when handling inbound messages.

Figure 3.   JsonSchemaService properties
Image

The Spy page for the service maintains a registry of the export markers contained within the station. This registry might prove useful when debugging issues with relative schema used in conjunction with the export marker paradigm. In the event that setpoint changes are received, the register aids in finding the marked points.

Global Cov Slot Filter

The Global Cov Slot Filter can denote which slots to ignore when subscribing to bound values. The default list of slots includes a good example of why this function is necessary in that changes to a component’s wsAnnotation property (which defines the position and size of a component glyph on the wire sheet) should generally be excluded from the changes of value reported to any upstream consumer of data.

Run As User

Another important property provided by the JsonSchemaService is Run As User. This property specifies the user account to assume in the event that a router processes an incoming change. For example, this assumption is mandatory when using the SetpointHandler, so that any changes triggered by a cloud platform are limited to areas in the station where the platform has write access. JSON schema export data also optionally use this property.

Operation Optional? How it works
Configuring a setpoint handler for incoming JSON No The set operation only succeeds if the Run As User is a real user who has operator write permission on the slot target.
Defining a schema for exporting JSON Yes When set, the data value of the exported slot defaults to an empty string unless the Run As User is a real user who has operator read permission on the slot.
 
NOTE: Run As User is important for security. This property may only be set by a super user.
 

Debugging with Spy page

The Spy page for the JsonSchemaService also has a registry of the export markers (refer to the Export Marker topic) contained within the station, which might prove useful when debugging relative schema issues that are used in conjunction with the export marker paradigm. The central register aids finding the marked points in the event that setpoint changes are received.

Figure 4.   JsonSchmaService Spy page link
Image