- From: Boris Zbarsky <bzbarsky@MIT.EDU>
- Date: Thu, 25 Nov 2004 00:35:11 -0600
- To: www-svg@w3.org
A.2: This section would be a lot more readable if each interface definition was followed by prose describing the properties and methods instead of having a general and incomplete blurb up front. What are the units for "natural width and height" on SVGVisualMedia? What happens if getPixel() is called on something that's not a "binary (pixel-based) image"? Are x and y zero-based or 1-based? What does it mean for an SVGColor object to be "unsigned"? How is an alpha channel in the image to be handled? SVGColor doesn't seem to handle it. What are the units for duration on SVGVideo and SVGAudibleMedia? And wouldn't it make more sense to have a single interface that exposes duration? On which note, multiple inheritance of interfaces (as required, e.g. for SVGAnimationElement) isn't possible in all language environments... It's OK to require that any object that implements SVGAnimationElement implement the other interfaces too, but demanding that an SVGAnimationElement instance be usable as any of the other listed interfaces without language-binding-specific casting is not reasonable. There are various other places in this specification where the same requirement is being made, as far as I can see. I'd like to request that they all be changed to the less restrictive requirement that all the interfaces involved be implemented. I'm not sure what the point of the SVGAudio interface is. I think it would make more sense for getPixel() to throw if a part of the image that's not loaded (or that's out of bounds, for that matter) is accessed, instead of being specified as maybe returning garbage. The former is much easier to implement interoperably (otherwise, you may have to reverse-engineer the exact garbage other implementations return). Quoting bits of interfaces here is not particularly helpful... I'd suggest simply linking to the full definitions of the SVGImageElement, SVGFeImageElement, etc interfaces. A.4: What can I set "phase" to? What can I set "button" to? What exactly do these various properties do? This section needs to be significantly fleshed out. A.9.1: Does a ShapeChange event have to fire for every shape change? Or can such events be coalesced? More to the point, if script changes a shape, can it expect that the ShapeChange event will fire before the DOM call that changed the shape returns? Similar for RenderedBBoxChange. -Boris
Received on Thursday, 25 November 2004 06:35:25 UTC