- From: Amelia Bellamy-Royds <amelia.bellamy.royds@gmail.com>
- Date: Tue, 9 Jun 2015 17:35:28 -0600
- To: www-svg <www-svg@w3.org>
- Message-ID: <CAFDDJ7w2YiXOoTFWEyJ=Ef7tH5yKdyVpru+o-42EFRrepNNBUw@mail.gmail.com>
I've had a few conversations the past few weeks about the SVG DOM methods, their potential, and their limitations. I had been meaning to write up a proposal for discussion prior to the start of the F2F this week, and I'm sorry I could not find time to do that (among other things I was hoping to tidy up). After looking at the actions from the first day of that meeting [1], I think it is all the more important. Yes, the PathSeg interfaces are over-complicated and under-used. But is the best solution to dump them without a replacement? Yes, the various transformation-related functions should be removed from SVG -- but only because they should be generalized in a way that applies to all transformable elements. Removing this very useful functionality, that works in most cases, because there are new undefined edge cases, seems counter-productive. The DOM side of the SVG specifications need a lot of work. It needs work on existing problems with the SVG 1.1 specs, and it needs work because of new complications that we are introducing, by turning structural attributes into presentation attributes and by extending SVG features to other element types. Furthermore, it needs to be coordinated with the DOM Geometry interfaces spec. I do not want the desire to finalize SVG 2 to result in the gutting of SVG DOM, without any replacement or fallback deprecation strategy. If there isn't the will to buckle down and fix them this year, can we at least separate them into their own module that can be addressed in due course? I was under the impression that the SVG Working Group had made a commitment that SVG 2 would be backwards compatible. All valid SVG code would still be valid. Yet repeatedly when it comes to SVG DOM there has been no hesitation of introducing breaking changes. I know that these features aren't used a lot. Most developers don't know they exist. If they do, they quickly discover how unreliable browser implementations are. In commonly used JS libraries, authors generally have written their own code (that depends only on Core DOM get/set attribute methods) in order to have consistent behavior. But those are all arguments for fixing the spec, not tossing it out. When CSS is moving toward greater transparency and author access to browser computations, it seems tragic to move in the opposite direction in SVG. The few developers who are making use of the SVG DOM functionality are SVG's greatest advocates. If you keep pulling the rug out from under them, well, see other threads relating to SMIL for evidence of how that tends to pan out. This includes myself. We were discussing keyboard navigation at the Accessibility Taskforce last week, and the question came up of how could a script quickly find the relative positions of two elements on screen, irrespective of transforms. Oh, that's easy, I said, there's this wonderful little function called getTransformToElement. How can anyone expect to build upon SVG functionality knowing that fundamental methods such as this might disappear at any moment? To the rest of the WG, I'll check in to IRC around 16:00 CEST Wednesday if you would like a more detailed discussion of this. Please don't break anything new before then. All the best, Amelia [1]: http://www.w3.org/2015/06/09-svg-minutes.html#ActionSummary
Received on Tuesday, 9 June 2015 23:35:56 UTC