make getIdKey() protected