[SVG 2][css-filters][css-masking] Clearly defining which SVG elements are not rendered, and what that means

The SVG specs, and now the FX specs that define elements, have a lot of
repeated text about certain elements being "never directly rendered" and
how this interacts with the display property.  However, we do not have a
centralized section defining this behavior, and we do not have any easy way
to pull up a list of which elements are affected.

For both the SVG accessibility specs and the SVG 2 sections on focus
management and interactivity, it would make things much simpler if we could
simply refer to a category of elements that are never directly rendered or
not rendered in a particular context.

However, this requires a number of complementary changes to different parts
of the specs, so I thought I'd warn everyone before I push changes (or make
a pull request, for the FX specs).

Planned changes in SVG 2:

   - Include a new section in the rendering chapter (
   https://svgwg.org/svg2-draft/render.html) on what it means for an
   element to be or not be rendered with definitions for the terms "never
   directly rendered" and "not rendered".

   - Move the section on the display and visibility properties, currently
   in the Painting chapter (
   https://svgwg.org/svg2-draft/painting.html#VisibilityControl), into the
   rendering chapter & integrate with the new section.

   - Link all prose references of "never directly rendered" and "not
   rendered" to the new section.

   - Create a new category of element (for use in the element definition
   blue boxes) "non-rendered element".


I would hope that the element definitions in CSS Filters and CSS Masking
could also be updated with these last two changes.

 ~Amelia

Received on Wednesday, 24 February 2016 03:52:58 UTC