JSON object used to define a predicate used in an operations token to match nodes or edges.

There are multiple types of predicates, each of which is defined below. To make an operation object of a given predicate type, the property "type" needs to be set to the string associated with that predicate.

IsIn Predicates

IsIn Parameters

This predicate returns true if the tested value is equal to one of the values provided.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "IsIn", the type must be set to "IsIn".
options any[] - An array of values, one of which the argument must be equal to for the predicate to return true. Otherwise the predicate returns false.
 
Example:
{
    "type": "IsIn",
    "options": [
        "balloon",
        "cake"
    ]
}
 

Numeric Predicates

GT Parameters

This predicate returns true if the tested number value is greater than the value provided.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "GT", the type must be set to "GT".
val number - Number which the argument must be greater than for the predicate to return true. Otherwise the predicate returns false.
 
Example:
{
    "type": "GT",
    "val": 9.5
}
 

LT Parameters

This predicate returns true if the tested number value is less than the value provided.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "LT", the type must be set to "LT".
val number - Number which the argument must be less than for the predicate to return true. Otherwise the predicate returns false.
 
Example:
{
    "type": "LT",
    "val": 9.5
}
 

GE Parameters

This predicate returns true if the tested number value is greater than or equal to the value provided.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "GE", the type must be set to "GE".
val number - Number which the argument must be greater than or equal to for the predicate to return true. Otherwise the predicate returns false.
 
Example:
{
    "type": "GE",
    "val": 9.5
}
 

LE Parameters

This predicate returns true if the tested number value is less than or equal to the value provided.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "LE", the type must be set to "LE".
val number - Number which the argument must be less than or equal to for the predicate to return true. Otherwise the predicate returns false.
 
Example:
{
    "type": "LE",
    "val": 9.5
}
 

NE Parameters

This predicate returns true if the tested number value is not equal to the value provided.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "NE", the type must be set to "NE".
val number - Number which the argument must be not equal to for the predicate to return true. Otherwise the predicate returns false.
 
Example:
{
    "type": "NE",
    "val": 9.5
}
 

Between Parameters

This predicate returns true if the tested number value is between to the lower and upper bound values provided. The test for both bounds can be made inclusive or exclusive.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "Between", the type must be set to "Between".
lower number - Number which the argument must be greater than for the predicate to return true. Otherwise the predicate returns false.
upper number - Number which the argument must be less than for the predicate to return true. Otherwise the predicate returns false.
inclusive bool true Boolean value that determines whether the greater than or less than checks above are inclusive or not.
 
Example:
{
    "type": "Between",
    "lower": 1.5,
    "upper": 9.5,
    "inclusive": false
}
 

IsNA Parameters

This predicate returns true if the tested number value is NA

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "IsNA", the type must be set to "IsNA".
 
Example:
{
    "type": "IsNA"
}
 

NotNA Parameters

This predicate returns true if the tested number value is not NA

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "NotNA", the type must be set to "NotNA".
 
Example:
{
    "type": "NotNA"
}
 

String Predicates

Contains Parameters

This predicate returns true if the tested string value either contains a given substring or returns a regular expression match.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "Contains", the type must be set to "Contains".
pat string - String containing the substring the predicate looks for in the argument or a regular expression string to apply to the argument.
case bool true Boolean value that determines if case is considered for substring match.
flags number 0 Number value that allows regular expression flags to be applied when using regular expresion patterns. See here for more information on options available.
regex bool true Boolean value that determines if the "pat" string is interpreted as a regular expression.
 
Example:
{
    "type": "Contains",
    "pat": "rain"
}
{
    "type": "Contains",
    "pat": "[a-z]",
    "regex": true
}
 

Startswith Parameters

This predicate returns true if the tested string value starts with a given substring or returns a regular expression match corresponding with the start of the string.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "Startswith", the type must be set to "Startswith".
pat string - String value containing the substring the predicate looks for in the argument or a regular expression string to apply to the argument.
na string - String value that should be used if the argument is null.
 
Example:
{
    "type": "Startswith",
    "pat": "S"
}
 

Endswith Parameters

This predicate returns true if the tested string value ends with a given substring or returns a regular expression match corresponding with the end of the string.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "Endswith", the type must be set to "Endswith".
pat string - String value containing the substring the predicate looks for in the argument or a regular expression string to apply to the argument.
na string - String value that should be used if the argument is null.
 
Example:
{
    "type": "Startswith",
    "pat": "e"
}
 

Match Parameters

This predicate returns true if the tested string value either matches a given string or returns an exact regular expression match.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "Match", the type must be set to "Match".
pat string - String containing the string the predicate looks for in the argument or a regular expression string to apply to the argument.
case bool true Boolean value that determines if case is considered for string match.
flags number 0 Number value that allows regular expression flags to be applied. See here for more information on options available.
 
Example:
{
    "type": "Match",
    "pat": "Munich"
}
 

IsNumeric Parameters

This predicate returns true if the tested string value only contains numeric characters which includes integers, subscripts, superscripts, Roman numerals, and fractions. Negative numbers or fractions or non-integer numbers are not considered numeric values due to the presence of non-numeric characters.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "IsNumeric", the type must be set to "IsNumeric".
 
Example:
{
    "type": "IsNumeric"
}
 

IsAlpha Parameters

This predicate returns true if the tested string value only contains alphabetic characters. Characters from other symbolic or alphabetic languages are also considered alphabetic characters. White-space characters and punctuation characters are not considered alphabetic characters.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "IsAlpha", the type must be set to "IsAlpha".
 
Example:
{
    "type": "IsAlpha"
}
 

IsDigit Parameters

This predicate returns true if the tested string value only contains digit characters which includes integers, subscripts, superscripts.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "IsDigit", the type must be set to "IsDigit".
 
Example:
{
    "type": "IsDigit"
}
 

IsDigit Parameters

This predicate returns true if the tested string value only contains digit characters which includes integers, subscripts, superscripts.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "IsDigit", the type must be set to "IsDigit".
 
Example:
{
    "type": "IsDigit"
}
 

IsLower Parameters

This predicate returns true if the tested string value only contains lowercase string characters.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "IsLower", the type must be set to "IsLower".
 
Example:
{
    "type": "IsLower"
}
 

IsUpper Parameters

This predicate returns true if the tested string value only contains uppercase string characters.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "IsUpper", the type must be set to "IsUpper".
 
Example:
{
    "type": "IsUpper"
}
 

IsSpace Parameters

This predicate returns true if the tested string value only contains white-space string characters.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "IsSpace", the type must be set to "IsSpace".
 
Example:
{
    "type": "IsSpace"
}
 

IsAlnum Parameters

This predicate returns true if the tested string value only contains alphabetic or numeric string characters.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "IsAlnum", the type must be set to "IsAlnum".
 
Example:
{
    "type": "IsAlnum"
}
 

IsDecimal Parameters

This predicate returns true if the tested string value only contains decimal characters which includes integers. Subscripts, superscripts, Roman numerals, and fractions are not considered decimal numbers.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "IsDecimal", the type must be set to "IsDecimal".
 
Example:
{
    "type": "IsDecimal"
}
 

IsTitle Parameters

This predicate returns true if the tested string value is only in title-case.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "IsTitle", the type must be set to "IsTitle".
 
Example:
{
    "type": "IsTitle"
}
 

IsNull Parameters

This predicate returns true if the tested string value is null.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "IsNull", the type must be set to "IsNull".
 
Example:
{
    "type": "IsNull"
}
 

NotNull Parameters

This predicate returns true if the tested string value is not null.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "NotNull", the type must be set to "NotNull".
 
Example:
{
    "type": "NotNull"
}
 

Temporal Predicates

IsMonthStart Parameters

This predicate returns true if the tested datetime value is the first day of the month.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "IsMonthStart", the type must be set to "IsMonthStart".
 
Example:
{
    "type": "IsMonthStart"
}
 

IsMonthEnd Parameters

This predicate returns true if the tested datetime value is the last day of the month.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "IsMonthEnd", the type must be set to "IsMonthEnd".
 
Example:
{
    "type": "IsMonthEnd"
}
 

IsQuarterStart Parameters

This predicate returns true if the tested datetime value is the first day of the quarter.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "IsQuarterStart", the type must be set to "IsQuarterStart".
 
Example:
{
    "type": "IsQuarterStart"
}
 

IsQuarterEnd Parameters

This predicate returns true if the tested datetime value is the last day of the quarter.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "IsQuarterEnd", the type must be set to "IsQuarterEnd".
 
Example:
{
    "type": "IsQuarterEnd"
}
 

IsYearStart Parameters

This predicate returns true if the tested datetime value is the first day of the year.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "IsYearStart", the type must be set to "IsYearStart".
 
Example:
{
    "type": "IsYearStart"
}
 

IsYearEnd Parameters

This predicate returns true if the tested datetime value is the last day of the year.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "IsYearEnd", the type must be set to "IsYearEnd".
 
Example:
{
    "type": "IsYearEnd"
}
 

IsLeapYear Parameters

This predicate returns true if the tested datetime value is in a leap year.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "IsLeapYear", the type must be set to "IsLeapYear".
 
Example:
{
    "type": "IsLeapYear"
}
 

Categorical Predicates

Duplicated Parameters

This predicate returns true if the tested value is has been duplicated elsewhere in the data.

Parameter Type Default Description
type string - String determining the predicate to use. To set this predicate to "Duplicated", the type must be set to "Duplicated".
keep string | bool False String or boolean value determining how duplicate value marking is handled. Valid values include "first" which returns all duplicates as true except the first occurance, "last" which returns all duplicates as true except the last occurance, and false which returns all duplicates as true including first and last values.
 
Example:
{
    "type": "Duplicated",
    "keep": "first"
}