for internal usage only

def __create_user_default_attr_prop(self, extra_info):
        """for internal usage only"""
        p = UserDefaultAttrProp()

        doc = extra_info.pop('doc', None)
        if doc is not None:
            extra_info['description'] = doc

        for k, v in extra_info.items():
            k_lower = k.lower()
            method_name = "set_%s" % k_lower.replace(' ', '_')
            if hasattr(p, method_name):
                method = getattr(p, method_name)
                if method_name == 'set_enum_labels':
                    method(v)
                else:
                    method(str(v))
            elif k == 'delta_time':
                p.set_delta_t(str(v))
            elif k_lower not in ('display level', 'polling period', 'memorized'):
                msg = "Wrong definition of attribute. " \
                      "The object extra information '%s' " \
                      "is not recognized!" % (k,)
                Except.throw_exception("PyDs_WrongAttributeDefinition", msg,
                                       "create_user_default_attr_prop()")
        return p