It's a shame that IProperties isn't very const parameter friendly. Neither getIterator() or queryProp() are const. But I'll still use const here and const_cast where necessary. We could clean up IProperties use of const at some point.