Не уверен, как скомбинировать селектор, как это, но я думаю, что если вы используете функцию фильтра, вы можете отфильтровать первый запрос:
Ext.DomQuery.filter(Ext.query('input:not([id*=foo])','SomeForm'),'input:not([id*=bar])');
Обратите внимание, что я просто немного поигрался с этой функцией, и эта функция работает:
Ext.query('input:not([id*=foo]):not([id*=bar])');
но это дает мне ту же ошибку, о которой вы упоминали:
Ext.query('input:not([id*=foo]):not([id*=bar])','SomeForm');
Так что мне кажется ошибкой с функцией запроса ExtJS, когда вы передаете определенный корень с несколькими селекторами атрибутов.