私はこの構造で試しました
create class NPassenger
create property NPassenger.name String
create index NPassenger.name on NPassenger (name) NOTUNIQUE_HASH_INDEX
create class NOrder
create property NOrder.order_id String
create property NOrder.passengers linklist NPassenger
create index NOrder.order_id on NOrder (order_id) UNIQUE_HASH_INDEX
insert into NPassenger(name) values ("xxx") // 12:0
insert into NPassenger(name) values ("Alessandro") //12:1
insert into NOrder(order_id,passengers) values ("order 1",[12:0])
insert into NOrder(order_id,passengers) values ("order 2",[12:1])
クエリ 1
explain select from NOrder where passengers contains(name = 'xxx')

クエリ 2
explain select from NOrder where 'xxx' in passengers.name

クラス ターゲットが NOrder であるため、2 つのクエリのいずれもインデックスを使用しません。
アップデート
現在、50002 NOrder と 50002 NPassenger があります。クエリを実行すると
explain select from NOrder where passengers contains(name = 'xxx')
と
explain select from NOrder where 'xxx' IN passengers.name'
私は得る

これは、name フィールドのインデックスが使用されておらず (ターゲット クラスが Norder クラスであるため)、クラス Norder の 50002 レコードすべてに対して検索が行われるためです。
クエリを使用する場合
explain select from NPassenger where name = "xxx"

ターゲット クラスが NPassenger であるため、インデックス NPassenger.name が使用されます。