// Builds the partial hash value (e.g. 10*0*1)// Treats query like tuple with some attr values missing
nstars = 0;
for each attribute i in query Q {
if (hasValue(Q,i)) {
set d[i] bits in composite hash
using choice vector and hash(Q,i)
} else {
set d[i] *'s in composite hash
using choice vector
nstars++;
}
}
...