ISSUE-53: License terms for IDL and bindings

ISSUE-53: License terms for IDL and bindings

http://www.w3.org/2005/06/tracker/webapi/issues/53

Raised by:  Everyone
On product: All

What license should Web API specifications use for embedded portions that could be considered code, 
such as IDL or the Java binding definitions? DOM Level 3 Events currently says:

"This document is published under the W3C® Document Copyright Notice and License. The bindings 
within this document are published under the W3C® Software Copyright Notice and License. The 
software license requires "Notice of any changes or modifications to the W3C files, including the date 
changes were made." Consequently, modified versions of the DOM bindings must document that they 
do not conform to the W3C standard; in the case of the IDL definitions, the pragma prefix can no longer 
be 'w3c.org'; in the case of the Java language binding, the package names can no longer be in the 
'org.w3c' package."

Link to the W3C software notice: <http://www.w3.org/Consortium/Legal/2002/copyright-
software-20021231>

I think this is inappropriate for the following reasons:

1) A technical specification should not attempt to legally require attempts at implementation to 
conform, just on general principle. It would be unprecedented for the W3C, certainly.

2) Taken to the letter, this would mean that any unknown (and therefore undocumented) failure to 
conform in an attempted implementation would be a copyright violation.

3) Taken to the letter, it would mean any not yet complete Java implementation of this specification 
would be a copyright violation. It would have to not use the w3.org prefix and therefore not implement 
even a subset of the specification. That seems like a bad idea, especially since DOM Level 2 Events is a 
subset and places no restrictions, creating the silly situation that it is legal to implement DOM Level 2 
Events only, but so long as you add a single L3 method you need to change your package prefix.

4) Subset profiles of DOM Level 3 events would not be legally possible.

5) The requirement in the W3C software notice "Notice of any changes or modifications to the files, 
including the date changes were made" are incompatible with the GPL and the LGPL, which forbid 
placing any additional requirements on modification or redistribution. This would make it a copyright 
violation for many popular open source implementations to implement the spec. At least if they looked 
at the spec - it may still be legal to do a clean room implementation where one person reads the spec 
and tells another what to code. Which is crazy.

I recommend instead that Web API specifications make clear that anyone is free implement the 
interfaces therein, whether correctly or not, but of course may not make factually incorrect claims of 
conformance.

Received on Monday, 27 March 2006 06:47:13 UTC