9 ms·
It's seems a bit pointless to publish a protocol with a restrictive license. The basic purpose of a protocol is interoperability, yet the restrictive license w
by jmull 5y ago
It's seems a bit pointless to publish a protocol with a restrictive license.
The basic purpose of a protocol is interoperability, yet the restrictive license works directly against that.
I also wonder about the reach of this kind of license. It's a license on the published work. So suppose I read this, whole-heartedly agree to the terms of the license, and use it to create a MongoDB Interop framework. I include attribution and release it under BSD.
Am I good?
I did not use the work for a commercial purpose and provided attribution, etc.
Now suppose some commercial cloud provider picks up my framework and uses it to implement MongoDB interop. Aren't they good too? They followed my license. They may not even be aware of the protocol specification, much less have viewed or used it in any way.
So what exactly has the protocol specification license accomplished?
(I am not a lawyer, so I'm sure I don't understand, but I'd like to.)
- wmf 5y agoThe purpose is probably to allow alternative clients but not alternative server implementations.
- floatingatoll 5y agoIs the wire protocol exclusive to server<->server communication, or is it used for server<->client communication? If the latter applies, then alternative clients would not be any more or less free of restrictions than alternative servers would be. Note that I'm not addressing whether the wire protocol's license affects server/client implementations — that's being discussed in a different top-level thread — I'm only addressing whether a difference could exist between server/client. (I am not your lawyer, please do not treat social media comments as legal advice, etc.)
- gbuk2013 5y agoThere’s the ShareAlike part of the license - presumably that means your derivative work must be licensed the same?
- jmull 5y agoYes, perhaps that's it. In that case, in my scenario I would not be good releasing my library as BSD. To my mind, writing a library according to a specification is not a derivative work of the specification. (I think a derivative work would be something like an annotated version of the specification, or a new specification that adopted parts of the original specification.) But like I say, I'm no expert on this so could very well be wrong.