# File lib_wpm/wpm.rb, line 2349
    def set_property(name, attr_map, value)
      case (name)
      when 'name'
        @name = get_property(attr_map, value, 'string', 'accessor', 'eval')
      when 'page'
        @src and raise PropertyError, "conflicted `src' and `page' property at #{widget_id.inspect}"
        @page = get_property(attr_map, value, 'string', 'accessor', 'eval')
      when 'src'
        @page and raise PropertyError, "conflicted `page' and `src' property at #{widget_id.inspect}"
        @src = get_property(attr_map, value, 'string', 'accessor', 'eval')
      else
        raise PropertyError, "unknown property: #{name.inspect}: at #{widget_id.inspect}"
      end

      nil
    end