This makes me a bit uneasy, though I'm willing to be convinced.  Are we sure that a transparent fill is going to be the same as no fill for all backends, in all situations?  This is also going to result in a bunch of extra SVG nodes specifying a transparent fill even when the user did not set any fill colors anyway.