Too Broad Non-assertion Obligations of  React License --PATENTS--

# Update

After adding [Category-X of ASF](https://www.apache.org/legal/resolved.html#category-x "https://www.apache.org/legal/resolved.html#category-x") and [decision to ditch React of WordPress](https://techcrunch.com/2017/09/15/wordpress-to-ditch-react-library-over-facebook-patent-clause-risk/ "WordPress to ditch React library over Facebook patent clause risk | TechCrunch"), finally Facebook has decided to withdraw BSD+PATENTS Liceense.

[Relicensing React, Jest, Flow, and Immutable.js | Engineering Blog | Facebook Code](https://code.facebook.com/posts/300798627056246/relicensing-react-jest-flow-and-immutable-js/ "Relicensing React, Jest, Flow, and Immutable.js | Engineering Blog | Facebook Code")

----

# Introduction
If you don't/ won't have any patent, it doesn't affect you, so set your mind at ease.  Also, if your company doesn't/ won't have any business overlapping with that of Facebook, it doesn't affect you.  In addition, Facebook is a company with good will, and it provides many good OSS, I would like to believe.

Nevertheless, the scope covered by the patent non-assertion obligations of the PATENTS imposed on licensees is too broad.  So, I would like to clarify the scope of non-assertion in comparison with EPL or CPL.

# Scope covered by Patent Non-assertion Obligations imposed on Licensees
H-axis: Potentially Accused Products/ Services
V-axis: Potential Defendants

### [Eclipse Public License (EPL)][EPL] and other Average OSS Licenses

|Non-assertion Against \ About|The Program|
|:---:|:---:|
|**The Providers**|*✔*|
|**The Contributors**|*✔*|
|**The (Re-)Distributors**|*✔*|
|**The Recipients**|*✔*|

### [Common Public License (CPL)][CPL] (deprecated and being replaced by EPL)

|Non-assertion Against \ About|The Program [§7¶2-2](#72-2)|Any Software [§7¶2-1](#72-1)|
|:---:|:---:|:---:|
|**The Providers [§7¶2-1](#72-1)***|*✔*|**✔**|
|**The Contributors [§7¶2-1](#72-1)**|*✔*|**✔**|
|**The (Re-)Distributors [§7¶2-1](#72-1)***|*✔*|**✔**|
|**The Recipients**|*✔*||

\* The term of "Contributor" in CPL covers Providers and (Re-)Distributors described hereunder.

### [PATENTS (constituting the license of OSS by Facebook including React)][PATENTS]

|Non-assertion Against \ About|The Software<br>[¶2(ii)](#2ii)|Any Software,<br>Technology,<br>Products<br>and Services<br>by<br>Facebook,<br>its subsidiaries<br>or its affiliates<br>[¶2(ii)](#2ii)|Anything|
|:---:|:---:|:---:|:---:|
|**Subsidiaries or Affiliates of Facebook [¶2(i)](#2i)**|**✔**|**✔**\*|**✔**\*|
|**Facebook [¶2(i)](#2i)**|*✔*|**✔**\*|**✔**\*|
|**The Contributors [¶2(iii)](#2iii)****|*✔*|**✔**|**✔**|
|**The (Re-)Distributors [¶2(iii)](#2iii)****|*✔*|**✔**|**✔**|
|**The Recipients [¶2(iii)](#2iii)****|*✔*|**✔**|**✔ [ex1](#ex-1)**|
|**Parties relating to the Software [¶2(iii)](#2iii)****|**✔**|**✔**|**✔**|
|**Any Party**|**✔**|**✔ [ex2](#ex-2)**||

\* [Counter claims against Facebook, its subsidiaries or its affiliates are allowed](https://github.com/facebook/react/blob/master/PATENTS#L21-L26 "react/PATENTS at master · facebook/react").
\** "[Any party relating to the Software](https://github.com/facebook/react/blob/master/PATENTS#L20-L21 "react/PATENTS at master · facebook/react")" must cover the contributors, the (re-)distributors and the recipients.
NOTE: [Potential plaintiff covers its subsidiaries and affiliates as well as its agents on its mission.](https://github.com/facebook/react/blob/master/PATENTS#L15 "react/PATENTS at master · facebook/react")

# Description and Comparison

### [Eclipse Public License (EPL)][EPL] and other Average OSS Licenses
Regardless of existence of dedicated patent clauses, almost all OSS licenses including EPL but excluding CPL and PATENTS described below have substantially same scope of non-assertion obligations.  The obligations of non-assertion are just about the OSS itself, which are well balanced with the granted rights and fair enough. 

 EPL has dedicated patent clauses for the obligations of non-assertion, while I would like to clarify the obligations under average OSS licenses without patent clauses.  Every type of person/ party described below who could infringe the necessary claims of the OSS has been protected from patent lawsuit filed by the licensees under the principal of faith and trust as described below.

#### Providers
It is not compliant with the principle of faith and trust that a OSS licensee who has agreed to the non-discriminatory royalty free license files a lawsuit against the *provider* alleging that the OSS infringes a patent of the licensee. 

#### Contributors
- A contributor who performs pull requests to the provider is yet another provider described above.
- A contributor who distributes the modified version is a distributor described below.

#### (Re-)Distributors
- A original distributor is the provider described above.
- A re-distributor of either original or modified version is a recipient described below.

#### Recipients
It is not compliant with the principle of faith and trust that a OSS licensee who has agreed to the non-discriminatory royalty free license files a lawsuit against another *recipient* alleging that the OSS infringes a patent of the licensee. 

### [Common Public License (CPL)][CPL]
First of all, CPL is [deprecated][SmallStep], and nowadays almost all OSS which had been licensed under CPL have been re-licensed under EPL which is the formal successor of CPL. 

Said that, CPL has one controversial sentence which [many members of Eclipse Foundation believed overly broad and is removed at EPL](https://www.eclipse.org/legal/eplfaq.php#EPLDIFFER "Eclipse Public License (EPL) Frequently Asked Questions") .

#### §7¶2-1
This sentence is one of the non-assertion obligations, which has limited scope of the potentially accused products to "software", with limitation of potential defendants to the "contributors".  The term of “contributor” in CPL covers providers and (re-)distributors described hereunder, but it's not the point.  The problem is the potential accused products, "software".  This word without any restriction covers any software including any other OSS under CPL, any OSS under non-CPL License, and even any commercial software.  I feel some intention of anti-software patent thought from this sentence.

The existence of this sentence is the only practical difference between CPL and EPL.

#### §7¶2-2
This sentence is another non-assertion obligation, which has limited scope of the potentially accused product to "the Program itself".  This sentence is identical to that of EPL, and has same effect of average OSS licenses with or without dedicated patent clauses.

### [PATENTS (constituting the license of OSS by Facebook including React)][PATENTS]

The non-assertion obligations of the PATENTS is too broad which might inhibit some company who does/ will have patents and also does/ will have businesses potentially overlapping with those of Facebook families from adopting Facebook's OSS to its significant products or services.  Because, under such situations illustrated blow, the company would have to re-develop its products depending on React to purge React.  It is a huge risk.

In contrast, [the PATENTS grants no rights or relatively very small rights for just essential patents of the OSS, at most](#patents-constituting-the-license-of-oss-by-facebook-including-react-2 "Too Broad Non-assertion Obligations of React License --PATENTS--").

##### Ex. 1
Suppose that an affiliate of your company files a patent lawsuit about pharmaceuticals against one of its competitor, if the defendant has a internal website built with React, then the patent license of React granted to your company will be revoked. 

##### Ex. 2
Suppose that an affiliate of your company files a patent lawsuit against one of its competitor alleging that a product of the competitor infringes a patent of the affiliate, if the part of the accused product depends on technology of Oculus VR which is not even made public, then the patent license of React granted to your company will be revoked. 

#### [¶2(i)](https://github.com/facebook/react/blob/master/PATENTS#L17-L18 "react/PATENTS at master · facebook/react")
This clause is one of the non-assertion obligations, which has limited scope of the potential defendants to Facebook, its subsidiaries and its affiliates, without limitation of potentially accused products.  This clause lacks generality to be adopted to the contributors outside of the Facebook families.  On the other hand, the licensees have obligations not to file patent lawsuits against Facebook families even which are not the licensers.  So, I feel some intention to protect Facebook families irrespective of direct relation to the OSS.

#### [¶2(ii)](https://github.com/facebook/react/blob/master/PATENTS#L18-L20 "react/PATENTS at master · facebook/react")
This clause is another non-assertion obligation, which has limited scope of the potentially accused products/ services, without limitation of potential defendants.  But, the limitation is too broad to have any practical meaning, which consists of any software, any technology, any products and any services.  On the other hand, it limits to what are provided by Facebook families.  So, I feel some intention to protect whole distribution channels of Facebook families irrespective of direct relation to the OSS.

#### [¶2(iii)](https://github.com/facebook/react/blob/master/PATENTS#L20-L21 "react/PATENTS at master · facebook/react")
This clause is another non-assertion obligation, which has limited scope of the potential defendants to parties relating to the software, without limitation of potentially accused products.  The meaning of "relating" is quite ambiguous, but it must cover the contributors, the (re-)distributors and the recipients, though.

#### [¶2 The first part](https://github.com/facebook/react/blob/master/PATENTS#L15 "react/PATENTS at master · facebook/react")
This clause defines another aspect of the scope of the non-assertion obligations.  It defines the potential plaintiffs of lawsuits inhibited by the obligations.  The potential plaintiffs includes the licensee's subsidiaries and affiliates even without voting rights, which themselves are not even licensees.  It's not conventional among other OSS licenses including EPL and even CPL.

# Apendix
## 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)][EPL] and other Average OSS Licenses

|Granted From \ About|The Program|
|:---:|:---:|
|**The Providers**|*✔*|
|**The Contributors**|*✔*|
|**The (Re-)Distributors**|*✔*|
|**The Recipients**|－|

### [Common Public License (CPL)][CPL] (deprecated and being replaced by EPL)

|Granted From \ About|The Program|Any Software|
|:---:|:---:|:---:|
|**The Providers**|*✔*||
|**The Contributors**|*✔*||
|**The (Re-)Distributors**|*✔*||
|**The Recipients**|－|－|

### [PATENTS (constituting the license of OSS by Facebook including React)][PATENTS]

|Granted From \ About|The Software|Any Software,<br>Technology,<br>Products<br>and Services<br>by<br>Facebook,<br>its subsidiaries<br>or its affiliates|Anything|
|:---:|:---:|:---:|:---:|
|**Subsidiaries or Affiliates of Facebook**|||
|**Facebook**|[✔]*|||
|**The Contributors**||||
|**The (Re-)Distributors**||||
|**The Recipients**|－|－|－|
|**Parties relating to the Software**||||
|**Any Party**||||

\* Might be deemed as granted under BSD License, already 

## Whether Necessary Claims are Granted by BSD or Not
There are some different understandings, in addition, Facebook hasn't answer the repeated question, so far.  So, I would like to exhaust all possibilities, below.

#### Story A: Not Granted by BSD

##### Story A-1: Granted by PATENTS and Revocable by PATENTS
This story is dangerous for the licensees.  Facebook seems to suppose this story, anyway.

##### Story A-2: Granted by PATENTS but Irrevocable by PATENTS
This story is not worth considering, because PATENTS can reasonably revoke the rights granted by itself, and it is being stipulated.

#### Story B: Granted by BSD
Free is free, irrespective of existence of dedicated patent clauses.  Also, BSD is a OSS license approved by OSI which requires OSS licenses to be permissive without any additional license as described at [§7 of OSD](https://opensource.org/osd-annotated "The Open Source Definition (Annotated) | Open Source Initiative").  My understanding is same as this story.

On the other hand, Facebook doesn't seem to suppose this story, because the following hypotheses sound unnatural.

##### Story B-1: Granted by BSD but Revocable by PATENTS
This story is dangerous for licensees.  But it is difficult to think that the grants are revocable, because BSD is an independent self contained OSS license, and ["the license granted hereunder"](https://github.com/facebook/react/blob/master/PATENTS#L14 "react/PATENTS at master · facebook/react") seems to indicate the additional grants by PATENTS itself.

##### Story B-2: Granted by BSD and Irrevocable by PATENTS
This story is not worth considering, because it follows that PATENTS will not grant/ revoke any rights.

## PATENTS is Inefficient against Patent Trolls

Some person in Facebook is insiting that [PATENTS is designed to avoid patent trolls](https://twitter.com/dan_abramov/status/766210972776337408 "Dan Abramovさんのツイート: "Talked to the lawyers about PATENTS clause. I can’t legally advise you but here’s three points to consider if you’re worried about React."").  But, it is inefficient against patent trolls, because patent trolls as a kind of Non-Practicing Entity (NPE), according to the definition, doesn't have any real business potentially depending on React, by contrast, PATENTS has control just over the Licensees of the OSS.





[EPL]: https://www.eclipse.org/legal/epl-v10.html "Eclipse Public License - Version 1.0"
[CPL]: https://opensource.org/licenses/cpl1.0.php "Common Public License, version 1.0 (CPL-1.0) | Open Source Initiative"
[PATENTS]: https://github.com/facebook/react/blob/master/PATENTS "react/PATENTS at master · facebook/react"
[SmallStep]: https://www.linux.com/news/cpl-and-epl-one-small-step-towards-reducing-license-proliferation "CPL and EPL: One Small Step Towards Reducing License Proliferation | Linux.com | The source for Linux information"