Если вы хотите, чтобы все элементы в пространстве имен clr-namespace:System.Collections.Generic;assembly=mscorlib
, вы можете написать
//*[namespace-uri() = 'clr-namespace:System.Collections.Generic;assembly=mscorlib']
Если вы действительно хотите выполнить поиск по префиксу (и большинство людей скажут, что это плохая практика), тогда вы может делать
//*[starts-with(name(), 'a:')]
, что, вероятно, будет работать на большинстве процессоров, даже если XPath 1.0 не гарантирует этого (он говорит "Как правило, это [результат name ()] будет QName это произошло в источнике XML. Этого не должно быть в случае, если на узле действуют объявления пространств имен, которые связывают несколько префиксов с одним и тем же пространством имен. ")