Now that you've made me think about it... I'm definitely on the fence, and perhaps closer to the "just put it in domain" side. Anyone else have thoughts? This is the right time to think about this minor API stuff, and then stick to it for the long haul!
Thoughts about both sides:
"domain" is only for non-narrowing domain changes:
- If filtering will be used a lot by itself, then it's simpler not to have to enclose it in an extra "domain"
"domain" is for all domain changes prior to faceting:
- If filtering will primarily be used with things like blockChildren, "domain" will already exist, and it's natural for the additional child filters to go right there.
- The only "narrowing" way to change the domain (other than faceting itself), is "filter". There are unlikely to be others in the future, and thus having a separate class/distinction at the syntactic level does not seem important.