W3C home > Mailing lists > Public > public-webapps@w3.org > April to June 2012

Re: informal survey - on spec philosophy

From: Karl Dubost <karld@opera.com>
Date: Tue, 10 Apr 2012 15:00:05 -0400
Cc: WebApps WG <public-webapps@w3.org>
Message-Id: <DFC693AE-4865-46C2-840A-70B2843BAFE5@opera.com>
To: Glenn Adams <glenn@skynav.com>
This came up in… 2001 during the W3C QA Workshop which started the W3C QA activity.
http://www.w3.org/2001/01/qa-ws/agenda.html

Le 26 mars 2012 à 18:43, Tab Atkins Jr. a écrit :
> The statement you quoted is more or less accurate.  Behavior that
> isn't specced is almost certain to not be interoperable.  If the spec
> is incomplete or unclear in some aspect, that's a spec bug, not an
> opportunity for implementations to make up their own behavior based on
> what the engineer thinks is reasonable at the time they're writing the
> code.


Specifically a position paper and presentation made by 
Thierry Kormann (Ilog): 
* Implementation Experience 
  http://www.w3.org/2001/01/qa-ws/pp/thierry-kormann-ilog.htm
* SLIDES
  http://www.w3.org/2001/01/qa-ws/slides/thierry-kormann-ilog.htm

Thierry made the following point
"'Implementation dependant' or unspecified behaviors are really dangerous"


After many discussions on www-qa-wg mailing list, we talked about optional features and the issues with interoperability. It eventually led to a few guidelines:

* Good Practice 15: Use optional features as warranted.
  http://www.w3.org/TR/qaframe-spec/#need-option-gp
* Good Practice 16: Clearly identify optional features.
  http://www.w3.org/TR/qaframe-spec/#label-options-gp

It also fits in the space of extension, aka things which are not defined is a space for extensibility. People, companies will add more features. Sometimes these features are creating interoperability issues. So to try to avoid these, you might want to define an extension mechanism. We have seen that extension mechanisms might also create issues because of the nature of the Web (distributed and "decentralized"), a popular extension is not anymore an extension but a feature. 

* Good Practice 19: Warn extension creators to create extensions that do not interfere with conformance.
  http://www.w3.org/TR/qaframe-spec/#breaking-conformance-gp
* Good Practice 18: If extensibility is allowed, define an extension mechanism.
  http://www.w3.org/TR/qaframe-spec/#extensions-prohibited-gp


-- 
Karl Dubost - http://dev.opera.com/
Developer Relations, Opera Software
Received on Tuesday, 10 April 2012 19:00:44 GMT

This archive was generated by hypermail 2.3.1 : Tuesday, 26 March 2013 18:49:51 GMT