Re: Request For Feedback: Traits

* Doug Schepers wrote:
>The SVG WG is interested in soliciting opinions, particularly from
>implementors, about the 'traits' feature of the SVG uDOM. 

The SVG Working Group so far failed to formally address a number of my
comments relative to this feature. It's sad to see the Working Group
continue to propose this feature in spite of the many known problems.
The flaws of the proposed feature include

  * poor interactions with standard DOM features and the CSS cascade
    http://www.w3.org/mid/4250f647.197089906@smtp.bjoern.hoehrmann.de

  * poor interactions with sXBL and XML namespaces
    http://www.w3.org/mid/4320a5cd.137811484@smtp.bjoern.hoehrmann.de

  * it fails to cope even with most basic features like unit identifiers
    http://www.w3.org/mid/4322a5d6.137820203@smtp.bjoern.hoehrmann.de

  * it includes legacy features no one needs
    http://www.w3.org/mid/432ae9b1.138307359@smtp.bjoern.hoehrmann.de

  * it suffers from poor naming of methods
    http://www.w3.org/mid/4332e9bf.138321156@smtp.bjoern.hoehrmann.de

  * it is SVG-specific and authors have to consult the draft whenever
    they try to use it to see whether it's possible and what any call
    to the relevant methods would actually return
    http://www.w3.org/mid/4341e9d1.138339093@smtp.bjoern.hoehrmann.de

  * it is subject to absolutely strange so-called 'normalization'
    http://www.w3.org/mid/4342e9d2.138340281@smtp.bjoern.hoehrmann.de

  * it's non-trivial to use for trivial documents, authors have to
    pay close attention for example to exception handling
    http://www.w3.org/mid/430f9e26.483091187@smtp.bjoern.hoehrmann.de

For properties the DOM Level 2 Style interfaces already offer everything
that is also offered by the new feature except for read access to the
base value while animations are in effect; I have yet to see a good use
case for that which cannot be realized simply by using the methods of
DOM Level 2 Style at the right point in time.

For XML attributes it does not add much either, these rarely require
additional computation, and typed access as well as access to the
animated values is already available through SVG 1.1 facilities or can
be easily achieved through simple string conversion routines. Here again
the inclusion of means to provide read acccess to the base value of
attributes while animations are applied is rarely if ever needed.

I note that "typed access" only considers Matrix, Rect, Path, RGBColor,
and simple strings, unlike the means in SVG 1.1 it does not extend to
lists of numbers, lists of strings, booleans, lengths, non-RGB colors,
angles, or in fact strings, which are often available through numeric
interfaces and constants in the SVG 1.1 DOM. Let's not forget that non-
trivial implementations have to implement the SVG 1.1 DOM.

There are many more problems, but the poor interactions of this feature
with CSS are reason enough for me to object to its inclusion in any W3C
Recommendation. Seriously, just go back to the first SVG 1.2 Last Call
Working Draft and take note of all the things the Working Group thinks
the feature offers but doesn't; when I pointed out that you can't even
access presentation values with it the Working Group's response was
"oooops".

>The SVG WG feels that this interface addresses many author-requested needs,
>including the ability to access and set the animated or computed value of an
>attribute ...

You can only set XML attribute values, not base values and certainly not
animated or computed values except that sometimes setting XML attributes
has an effect on those other values. Let's also not confuse the magical
trait values with well-defined terms like animated and computed values,
they too are related but different.
-- 
Björn Höhrmann · mailto:bjoern@hoehrmann.de · http://bjoern.hoehrmann.de
Weinh. Str. 22 · Telefon: +49(0)621/4309674 · http://www.bjoernsworld.de
68309 Mannheim · PGP Pub. KeyID: 0xA4357E78 · http://www.websitedev.de/ 

Received on Wednesday, 4 January 2006 14:08:02 UTC