Equality is simple all others are complex and special care must have been taken.
For trailing %, name LIKE “BD%” nothing but name >= “BD” AND name < “BE”
SELECT * FROM default
WHERE ANY v IN OBJECT_PAIRS(sites) SATISFIES [v.val.type, v.name] >= ["building","B"] AND [v.val.type, v.name] < ["building", SUCCESSOR("B")] END;
Also note “building” must be equality.