Published Cross-Visual JavaScript Message Structure

This applies to: Visual Data Discovery

All messages (cross-visual filters) that can be consumed by Symphony or that will be published by Symphony must conform to the following structure. The value of the type property defines the structure of the rest of the message.

The properties for the message (filter) structure are described in the following table:

Property Description
type: 'selection'

Only a value of selection is supported at this time, identifying a selection of values on a visual or widget. This signifies that the message is a SelectionMessage.

Type: string

valueType: 'NUMBER'

Identifies the type of value being selected. The following value types are supported:

  • ATTRIBUTE - Use for string values
  • NUMBER - Use for integer and floating point values
  • TIME - Use for date and date-time values

Type: string

ranges

An array of selected ranges. The set of allowed operations depends on the specified valueType. Currently only a single range is supported per message (filter). Ranges after the first range will be ignored. Ranges should be structured as follows:

ranges: [
   {
      operation: '<operation>',
      value: '<value>'
   },
]

The operation and value properties are described next.

Type: array

operation: 'EQUALS'

The filter operation. Supported operations include:

  • IN - Includes. Supported for ATTRIBUTE and NUMBER valueTypes. Provide an array of values for value.
  • NOTIN - Excludes. Supported for ATTRIBUTE and NUMBER valueTypes. Provide an array of values for value.
  • BETWEEN - Between. Supported for NUMBER or TIME valueTypes. Provide a two-item array of the start and end values for value.
  • GT - Greater Than. Supported for NUMBER or TIME valueTypes. Provide a single value to compare against for value.
  • GE - Greater Than or Equal To. Supported for NUMBER or TIME valueTypess. Provide a single value to compare against for value.
  • EQUALS - Equal To. Supported for NUMBER or TIME valueTypess. Provide a single value to compare against for value.
  • NOTEQUALS - Not Equal To. Supported for NUMBER or TIME valueTypess. Provide a single value to compare against for value.
  • LE - Less Than or Equal To. Supported for NUMBER or TIME valueTypess. Provide a single value to compare against for value.
  • LT - Less Than. Supported for NUMBER or TIME valueTypess. Provide a single value to compare against for value.

Type: string

value: '6'

Provide a value as described for each filter operation.

Type: string, number, array<string | number | null>