Re: [filter-effects] What to do with errors in filters / Re: Minutes, 13 November 2014 SVG Telcon

Hi Amelia,

The SVG WG and CSS WG revisited the error handling based on the discussions on this thread.


On Nov 14, 2014, at 4:08 AM, Amelia Bellamy-Royds <amelia.bellamy.royds@gmail.com<mailto:amelia.bellamy.royds@gmail.com>> wrote:

In summary, if the above resolutions are adopted, there will be four different error situations for filters:

  1.  If there is a syntax error or unsupported value in a CSS shorthand filter function, the filter property declaration will be invalid, and any filter specified earlier in the CSS cascade will apply.  This behaviour is defined by CSS error handling rules and can't be changed.

In case that the syntax for the filter property is not valid and does not follow the rules of Filter Effects[1] or other CSS specifications like CSS Units and Values [2], the specified filter value is disregarded and the no filter is set. The element is rendered as if filter was set to none. This is default CSS behavior.


  1.  If a URL reference in a filter property points to an inaccessible resource, or a resource that isn't a <filter> element, then the graphic will be rendered as if it had `filter: none` (In particular, it *won't* fallback to previous filter declarations).  This behaviour is defined in the new Filter Effects spec.

We resolved that if the element can not be found in the document or is not a filter element then the element is rendered as if filter was set to none.

  1.  If an SVG filter points to an inaccessible resource via an <feImage> primitive, work around it as best as possible (new resolution, sounds good to me).

The previous resolution is still valid. If the referenced input of feImage is not accessible take a transparent black image of the size of the subregion instead.

  1.  If an SVG filter has any other error, cause the filtered graphic to disappear (new resolution, justified as being consistent with current implementations, but not particularly useful otherwise).

If a filter effect references an input filter effect by identifier and there is no filter effect with the specified identifier or comes later in the DOM hierarchy then the filter chain is disregarded. The element is rendered as if filter was set to none.

The minutes can be found here: http://www.w3.org/2015/02/10-fx-irc

Greetings,
Dirk

Received on Wednesday, 11 February 2015 06:58:41 UTC