The `filter` attribute becomes a special attribute only in case it's defined as an object, instead of the usual SVG syntax (e.g. `"url(#myfilter)"`). If it's defined as an object, it must have the form defined by by the filterGradient() paper method.

    element.attr('rect/filter', {
        name: 'dropShadow',
        args: {
            dx: 2,
            dy: 2,
            blur: 3
        }
    });