When you want to check if an element exists in a list there are actually 2 nodes you can use:
They look the same: same input ports and same output port, but the behavior is different.
Contains will look for the item in any sublist of the given list. List.ContainsItem will only look on the specified level.
Here an example:
The string “X” is defined in a sublist of a sublist of a sublist of the input list. Contains will look in any sublist of the given list and will report “true”.
On the other hand “List.ContainsItem” will only look for the item on the first level which is level 5, where only the values 1,2,3, a sublist, 5 and 6 are defined. So the node is reporting false.
The only way for “List.ContainsItem” to find the string “x” is to define the exact level to search in: