2017/9/23 追記
Apache Software FoundationがBSD+PATENTSをCategory-Xに追加したことを受け、FacebookはReact他でBSD+PATENTSを維持することを表明していましたが、WordPressがReactライブラリの利用を止めることを発表するなど波紋はさらに広がっていました。
ここに来て、FacebookがReact他のライセンスを見直すそうです。
Relicensing React, Jest, Flow, and Immutable.js | Engineering Blog | Facebook Code
Apache License version 2 → BSD + PATENTS → MITという流れで、もっともパミッシブなライセンスに落ち着くことになりそうです。
Scope covered by Patent Non-assertion Obligation imposed on Licensees
H-axis: Potentially Accused Products/ Services
V-axis: Potential Defendants
Eclipse Public License (EPL) and other Average OSS Licenses
Non-assertion Against \ About | The Program |
---|---|
Providers | ✔ |
Contributors | ✔ |
(Re-)Distributors | ✔ |
Recipients | ✔ |
Common Public License (CPL) (deprecated and being replaced by EPL)
Non-assertion Against \ About | The Program | Any Software §7¶2-1 |
---|---|---|
Providers | ✔ | ✔ |
Contributors | ✔ | ✔ |
(Re-)Distributors | ✔ | ✔ |
Recipients | ✔ |
PATENTS (constituting the license of OSS by Facebook including ReactJS)
Non-assertion Against \ About | The Software ¶2(ii) |
Software, Technology, Products and Services by Facebook, its subsidiaries or its affiliates ¶2(ii) |
Anything |
---|---|---|---|
Subsidiaries or Affiliates of Facebook ¶2(i) | ✔ | ✔* | ✔* |
Facebook ¶2(i) | ✔ | ✔* | ✔* |
Contributors ¶2(iii)** | ✔ | ✔ | ✔ |
(Re-)Distributors ¶2(iii)** | ✔ | ✔ | ✔ |
Recipients ¶2(iii)** | ✔ | ✔ | ✔ |
Parties relating to the Software ¶2(iii)** | ✔ | ✔ | ✔ |
Any Party | ✔ | ✔ |
* Counterclaims against Facebook, its subsidiaries or its affiliates are allowed.
** "Any party relating to the Software" must cover contributors, (re-)distributors and recipients.
NOTE: Potential plaintiff covers its subsidiaries and affiliates as well as agents on its mission.
Scope of Patents granted under OSS License (excluding Non-assertion above)
H-axis: Licenser's Products/ Services executing licensed patents
V-axis: Licenser
Eclipse Public License (EPL) and other Average OSS Licenses
Granted From \ About | The Program |
---|---|
Providers | ✔ |
Contributors | ✔ |
(Re-)Distributors | ✔ |
Recipients | - |
Common Public License (CPL) (deprecated and being replaced by EPL)
Granted From \ About | The Program | Any Software §7¶2-1 |
---|---|---|
Providers | ✔ | |
Contributors | ✔ | |
(Re-)Distributors | ✔ | |
Recipients | - | - |
PATENTS (constituting the license of OSS by Facebook including ReactJS)
Granted From \ About | The Software ¶2(ii) |
Software, Technology, Products and Services by Facebook, its subsidiaries or its affiliates ¶2(ii) |
Anything |
---|---|---|---|
Subsidiaries or Affiliates of Facebook ¶2(i) | |||
Facebook ¶2(i) | [✔]* | ||
Contributors ¶2(iii) | |||
(Re-)Distributors ¶2(iii) | |||
Recipients ¶2(iii) | - | - | - |
Parties relating to the Software ¶2(iii) | |||
Any Party |
* Might be deemed as granted under BSD License, already
解説・見解
はじめに
(将来的にも)特許を保有しない人には影響がありません、ご安心ください。
(将来的にも)Facebookと競合する可能性がない企業には影響がありません。
Facebookは善良な企業であるとともに、良質のOSSを多数提供していると評価しています。
とは言え、Facebook発のOSSがライセンシに課す制限は広すぎるとの思いが有ります。
EPL、CPLと比較しながらFacebook発のOSSがライセンシに課す制限の範囲とその問題点を記載します。
Eclipse Public License (EPL)を含む平均的なOSSライセンス
ここでは、EPL等の平均的なOSSライセンスを扱います。(後述のCPLやPATENTSは除きます。)
OSSライセンスには特許条項が有るものと無いものがありますが、それらは実質的には同じと考えています。
対一次提供者 (Host)
ここでは、後述の貢献者(Contributor)や(再)頒布者((Re-)Distributor)と一旦区別し、一次提供者を扱います。
無差別の無償ライセンスに同意してOSSを利用した上で、その提供者を訴えるのは信義則に反すると考えます。
対貢献者 (Contributor)
貢献者には別途Contributors Agreementが課せられることがありますが、ここでは扱いません。
一次提供者にプルリクエストを行う等(インバウンド)の場合は上記の一次提供者と同じです。
自ら改良版を頒布する(アウトバウンドの)場合は下記の(再)頒布者と同じです。
対(再)頒布者 ((Re-)Distributor)
一次頒布者は上記の一次提供者です。
ソース貢献を行う場合を含み、再頒布者は下記の受領者と同じです。
なお、再頒布者には再頒布物とそれを受領したときのOSSライセンスを明示する義務があります。
対受領者 (Recipient)
無差別の無償ライセンスに同意してOSSを利用した上で、他のライセンシを訴えるのは信義則に反すると考えます。
Common Public License (CPL)
CPLはオーナーがIBMの時代のEclipseのライセンスです。
Eclipse Foundationに移管された際に、EclipseはEPLで再ライセンスされ、他OSS向けにもCPLは非推奨となりました。
なお、EPLはCPLの正当な後継であり、CPLのOSSは著作者の許諾なしにEPLで再頒布できます。
CPLでは下記の通り特許不係争義務を明文化しています。
7章 2段落 1文
禁止する特許訴訟の範囲を、潜在的被疑製品(横軸)でソフトウェア全般と広くする一方で、潜在的被疑者(縦軸)で"Contributor"に限定するもの。CPLにおける"Contributor"は、ここで言うところの貢献者(Contributor)に加え、一次提供者(Host)、(再)頒布者((Re-)Distributor) を含みます。
横軸で非OSSを含みソフトウェア全般とするところに、アンチソフトウェア特許の意図が見えます。
このソフトウェア全般という範囲が広すぎるために一部の企業から敬遠されています。
実際、CPLを採用していたJUnitはOracle (NetBeans)の要望でEPLに変更しました。
CPLのEPLとの本質的な違いはこの一文の存在だけです。
7章 2段落 2文
禁止する特許訴訟の範囲を、潜在的被疑製品(横軸)で"the Program itself"に限定するもの。
第1文と異なり、またその明文化の有無に関わらず、OSSライセンスにおける最も一般的な制限でしょう。
PATENTS (a part of Facebook BSD+Patents license)
掲題のReactJSにおけるライセンスのうち、BSDライセンスに加えて設定されたPATENTSについて扱います。
Facebook発のOSSは、ReactJSを含むその多くが、この BSD+PATENTS の形をとっています。
後述の通り、特許不係争義務の対象範囲が非常に広範囲なものになっています。
従って、現在または将来に特許を保有し、現在または将来にFacebookと事業領域が重複する可能性がある企業にとっては受け入れ難いものです。
極端な例では、議決権も及ばない自社の関連会社がライバルを特許侵害で訴えたとして、被疑製品の該当部分がFacebookの関連会社が持つ(未発表の?)技術を利用していたというだけで、ReactJS(のPATENTS)のライセンスを失います。
別の例では、議決権も及ばない自社の関連会社がライバルを特許侵害で訴えたとして、被疑者がFacebook発のOSSを社内サイトで利用していたというだけで、ReactJS(のPATENTS)のライセンスを失います。
もし、自社の重要製品/サービスでReactJSを使っていた場合、それを作り直す必要に迫られることになります。
対して、BSD Licenseに追加でPATENTSが許諾する権利は全く無いか、有っても制限に釣り合わない狭い範囲です。
実際、VMwareの法務はReactの社内利用を禁止し、コミュニティへの相談者は現在Angularの技術者です。
また、Facebookが先制した場合の反訴が許される旨はGoogleの指摘で追加されたようです。この修正だけで受け入れたということは、事業がFacebookと競合してもGoogleから法廷で先制攻撃を仕掛けないという判断か、重要な製品/サービスにFacebook発のOSSを利用しないということでしょう。
第2段落 (i)
禁止する特許訴訟の範囲を、潜在的被疑者(縦軸)で限定するものです。
しかし、特定企業名(Facebook)が入っていることで外部貢献者等へも適用可能な汎用性を欠きます。
また、ライセンサでないFacebookの子会社や関連会社に対してまで特許不係争義務を負います。
第2段落 (ii)
禁止する特許訴訟の範囲を、潜在的被疑製品/サービス等(横軸)で限定する構造を取っています。
しかし、任意のソフト、技術、製品、サービスでは非常に広範囲で、事実上無制限です。
他方で、製品/サービス等の提供者をFacebookとその子会社、関連会社に限定しているのでFacebookグループの商流全てが特許不係争の対象と言えます。
第2段落 (iii)
禁止する特許訴訟の範囲を、潜在的被疑者(縦軸)で"the software"の関係者に限定する構造を取っています。
ただし、「"the software"に関係する団体」という表現が曖昧です。
少なくとも、貢献者、(再)頒布者、受領者の全てを特許不係争義務の対象に含むと考えます。
さらに問題なのは、被疑製品/サービス等を一切限定していないので全ての特許訴訟が制限されることです。
第2段落冒頭 (特許不係争義務を負う主体)
特許不係争義務の主体は平均的なOSSライセンスやCPLの場合では受領者でありライセンシである自社ですが、PATENTSの場合は自社にとどまらず、自社の子会社、関連会社まで含みます。
子会社の特許権行使をコントロールすることも困難とは思いますが、議決権も及ばない関連会社の特許権行使にまで責任を負わされます。