「プログラム」はGPLv3でなにを意味するか?
まとめ
GNU一般公衆ライセンスのバージョン3(GPLv3)では、「プログラム」は、GPLv3でライセンスされ、上流のライセンサあるいは配布者からある特定のライセンシーによって受け取られた、ある特定の作品を意味します。「プログラム」はこの特定のソフトウェアの作品で、それを受けとったとき、GPLv3のライセンシングの実例として受けとったものです。
「プログラム」が「GPLv3でライセンスされたことがあるすべての作品」を意味することは不可能です。この解釈は意味がありません。なぜなら、「プログラム」は単数で、そのようなたくさんのプログラムが一つのプログラムとなることはありません。
特に、これはGPLv3の第10節の第3段落の条文に適用されますが、それはこう述べています:
[Y]ou may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. 日本語訳: あなたは以下のような訴訟(ある事件における交差請求または反訴を含めて)を起こすことができません。「プログラム」もしくはその一部に関して、その作成、使用、販売、販売として提供、または輸入について、あなたの特許請求範囲が侵害されたと主張するような訴訟です。「プログラム」のどの部分であっても、特許請求範囲のどのようなものであってもできません。
これは、あるGPLv3のライセンシーが、受け取ったある特定のGPLv3の及ぶソフトウェアに特許侵害の訴訟を起こすことに関して、そのライセンシーの能力に制限を与える条件です。GPLv3の及ぶプログラムAのライセンシーであるが、関係ないGPLv3の及ぶプログラムBのライセンシーではない、ある団体がプログラムBの特許侵害の訴訟を起こすというような状況については述べていません。もし、その団体がAとB両方のライセンシーである場合、その団体はBに関する権利を失う可能性がありますが、Aではありません。
ソフトウェア特許は、すべてのソフトウェア開発者、すべてのソフトウェアディストリビュータ、そしてすべてのソフトウェアユーザに、不当な脅威を提起するので、可能である場合、それを廃止するべきです。実際、わたしたちはそのようなキャンペーンをしています。しかし、ある一つのGPLの及ぶプログラムに対するライセンス条件があらゆるGPLの及ぶプログラムを攻撃しないことを約束することを要求するというようにあまりにも行きすぎるのは自滅的である、とわたしたちは考えました。
さらなる分析
GPLv3は“the Program”を以下のように定義します:
“The Program” refers to any copyrightable work licensed under this License. 日本語訳: 「プログラム」は、このライセンスでライセンスされる、何らかの著作権が設定できる作品を指す。
ある方々は、この定義は、すべてのGPLv3でライセンスされた作品を意味する、と読むことができると論争しました。所与のライセンシングの文脈でライセンシーによって受け取られた、あるひとつの特定のGPLv3でライセンスされた作品ではなくて、です。このような読者は、GPLv3の新しい特許規定のそのような解釈の結果について特別な懸念を表明しました。特に、第10節の第三パラグラフにある特許終了条件と第11節の第三パラグラフの上流貢献者による明示された特許ライセンス許可についてです。この「プログラム」の拡大解釈は間違いで、GPLv3の起草者としてのわたしたちの意図に反しています。
英語の“any”は微妙に異なった意味のニュアンスのいろいろの影響を受けやすいものです。ある文脈では“any”は“every”もしくは“all”を意味します。ほかでは、GPLv3の「プログラム」の定義でもそうですが、それは「たくさんの可能性の中から選択された、ある一つの特定の具体例」を暗示します。この変化性は文脈によって解決されなければなりません。この文脈では解決されますが、一定の考察を要します。
「プログラム」の定義を、“any”の代わりに“a particular”を使って言い表すこともできたでしょう。しかし、それでも考察の必要性を除去することはできなかったでしょう。“a particular work licensed under this License”のフレーズは、それだけでは、ライセンシングあるいは配布の特定の行動で、特定の“you”によって受け取られた *その* 特定の作品を意味するとは限らないでしょう。わたしたちのそのほかの自由ソフトウェアライセンスのレビューで、それらでも解釈の同様な問題が、ライセンスの再利用を促進するために使われた一般参照の言葉について起こることがわかりました。
すべてのほかの候補となる意味がなくなるような明確な選択がない状況では、“any”には一定の利点があります。ありうる代替よりも、より形式的でなく、法律的な使い方でもありません。開発者がそのライセンスを読み、適用するためには適した使い方です。さらに“any”の使用は、たくさんの限定的な可能性からの選択の暗示を通じて、複数のソフトウェアの作品と複数のライセンシングの状況のためにGPLv3の再利用性を強調するという効果があります。GNU GPLは多くの開発者によってそのプログラムに使ってもらうことを意図しているので、それも明らかである必要があります。
GPLv3で解釈の問題を引き起こした“any”の同じ使い方は、その対応する定義において、GPLv2にも存在します。GPLv2の第0節はこう述べています:
This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The “Program”, below, refers to any such program or work, and a “work based on the Program” means either the Program or any derivative work under copyright law … 日本語訳: このライセンスは、この一般公衆ライセンスの条項によって配布できると述べられた著作権者によってつけられた告示を含む、何らかのプログラムもしくはほかの作品に適用されます。以下で「プログラム」は、そのような何らかのプログラムもしくはほかの作品を指します。「プログラムをベースとした作品」は「プログラム」もしくは著作権法における何らかの派生作品を指します。…
しかし、GPLv2における「プログラム」は、受け取られたある特定のGPLの及ぶ作品(で、改変を行う前のもの)を意味することが、これまで常にFSFとGPLを使っているコミュニティのそのほかの人々の理解でした。GPLv3の「プログラム」の定義はこの意味を維持することを意図しています。
「プログラム」(と「(ライセンスの)及ぶ作品」という上位版の用語)の提案された拡大解釈を適用することが、ある条項の表現とその草稿の歴史と一貫しつつ、意味を持つ、あるいは何らかの実用上の重要性を有する、というような条項をGPLv3に見い出すことはできませんでした。
第11節の第3段落はこう述べています:
Each contributor grants you a non-exclusive, worldwide, royalty-free patent license under the contributor's essential patent claims, to make, use, sell, offer for sale, import and otherwise run, modify and propagate the contents of its contributor version. 日本語訳: それぞれの貢献者は、あなたに対し非排他的な、全世界の、ロイヤリティ・フリーの特許ライセンスを、その貢献者の重要な特許請求のもとで与え、作成、使用、販売、販売の募集、輸入、もしくは、その貢献者のバージョンの内容の実行、改変、そして伝搬を認めます。
“contributor”は「このプログラムもしくはこのプログラムがそのベースとした作品を、そのライセンスで使うことを認可した著作権者」と定義されます。
「プログラム」の拡大解釈は、これまで提案されてきましたが、不合理にも拡大された特許のライセンス許可の問題を引き起こします。その論法では、あるGPLv3ライセンシーに対して、貢献者の特許ライセンスの許可の集合は、すべてのGPLv3ライセンサの、世界のすべてのGPLv3の及ぶ作品であり、単に、ある特定のライセンシングの行動のライセンシーによって受け取られたある特定のライセンサの作品ではない、となります。
特許ライセンス許可の表現に対し詳細に注意すると、しかしながら、このような懸念は根拠のないものだとわかります。特許ライセンス許可の許諾を行使するにはGPLv3のライセンシーは“the contents of [the contributor's] contributor version” (日本語訳: 「[貢献者の]貢献バージョンのコンテンツ」)を有している必要があります。もしそうなら、その人は、GPLv3でライセンスされたそのものの受け取り手である必要があります。
ですから、貢献者は、そのものに対し常に実際の著作権のライセンサで、それは、特許ライセンス許可の対象です。特許ライセンス許可から益を得るユーザは最終的にはこれらの貢献者からこの許可がカバーするものを(既に)受け取っているのです。もし、そうでない場合、特許ライセンス許可は無意味でしょう。なぜならその許可の行使は貢献者の「貢献者のバージョン」に結びつけられているからです。貢献者と第11節の特許ライセンシーは、直接または間接の配布の関係を持ちます。ですから、第11節の第3パラグラフは、著作権のライセンシーではない誰かに対して特許ライセンスを許可することを必要としていません。(非貢献者の再配布者は、適用できる暗黙的な特許ライセンスの方針と第11節の第6パラグラフの特別な「自動拡張」規定の対象のままです。)
第10節の第三パラグラフの特許に関連した条項を考えるとき、同様に「プログラム」の拡大解釈にはなんの根拠もありません。条項はこうです:
[Y]ou may not initiate litigation (including a cross-claim or counterclaim in a lawsuit) alleging that any patent claim is infringed by making, using, selling, offering for sale, or importing the Program or any portion of it. 日本語訳: あなたは以下のような訴訟(ある事件における交差請求または反訴を含めて)を起こすことができません。「プログラム」もしくはその一部に関して、その作成、使用、販売、販売として提供、または輸入について、あなたの特許請求範囲が侵害されたと主張するような訴訟です。「プログラム」のどの部分であっても、特許請求範囲のどのようなものであってもできません。
第11節のパラグラフ3の特許ライセンス許可と第8節の終了条項と合わせて、この第10節の条項は、Apacheライセンス、バージョン2.0に含まれるものと同様のスコープの特許の終了条件を起こさせるもとになります。
FSFは、ある自由ソフトウェアライセンスの拡大された特許報復条項の意図に共感します。ソフトウェア特許を廃止することが大変望ましいことだからです。しかし、わたしたちはソフトウェアライセンスに置ける拡大された特許報復規定は、コミュニティの利益にならないと考えます。特に、ライセンス許可が終了させられるソフトウェアと関係ないほかのプログラムに関する特許訴訟がきっかけとなりうる条項は、そうでしょう。GPLv3に特許報復を編入するにあたり、わたしたちはとても慎重に対策を施しました。第10節のパラグラフ3の条項は、よく知られたいくつかのほかのライセンス、特にMozillaパブリック・ライセンス、バージョン1.1の特許報復条項よりも特許ライセンスの終了に関して、より狭いものとなるよう意図しています。
「プログラム」のその暗示された解釈が第10節のパラグラフ3の条項に適用された場合、その結果は、わたしたちの一貫した過去の声明と特許報復に関するポリシーからかけ離れたものとなってしまい、それは明らかにわたしたちが意図したものではありません。
GPLバージョン3のほかの文章もこれと同じポリシーを示しています。第10節の特許報復条項はGPLv3の草案3に、(草案2の)以前の条項7(b)(5)の一部の置き換えとして加えられました。条項7(b)(5)は、GPLv3でライセンスされた作品の特許終了の規程に二つのカテゴリーを置くことを認めていました:
terms that wholly or partially terminate, or allow termination of, permission for use of the material they cover, for a user who files a software patent lawsuit (that is, a lawsuit alleging that some software infringes a patent) not filed in retaliation or defense against the earlier filing of another software patent lawsuit, or in which the allegedly infringing software includes some of the covered material, possibly in combination with other software … それよりも前に提起された、もうひとつのソフトウェア特許訴訟、または、たとえばほかのソフトウェアと組み合わせて、カバーされたものの一部を含み、ソフトウェアを侵害していると主張されたことに対する報復あるいは防御ではなく、あるソフトウェア特許訴訟(つまり、あるソフトウェアがある特許を侵害していると主張する訴訟)をファイルするユーザに対し、それがカバーするそのものの使用の許可を全体あるいは一部を終了する、もしくは、終了を認める条項は、…
第7節はGPL自身のポリシーについて述べていません。そうではなく、ほかの両立するライセンスがどこまで行くかについて述べています。ですから、第7節の文章は確定した拡大の特許報復を有していないでしょう。GPLの及ぶコードを、そのような拡大の特許報復を行うほかのライセンスと組み合わせた場合に、許可されるかもしれないだけです。
そうは言っても、草案3の理論的根拠で説明したとおり、そのような拡大報復は批判されました。そのライセンスの対象となるソフトウェアと関係ないソフトウェアが、告訴されるものとして、ソフトウェア特許訴訟に適用されうるからです。これが両立性を提供するような広く用いられているライセンスがないことから、草案3で、わたしたちは拡大特許報復をGPL両立性の範囲からはずしました。
条項7(b)(5)を第10節の文章で置き換えることによって、わたしたちはそうしました。そこで、わたしたちは第二のカテゴリーに対応するものだけを残しました。第一のカテゴリーは、ですから、草案3ではGPL非両立の「さらなる制限」に転じ、同様にGPLバージョン3でもそうなって、最終的にGPLv3は発行されました。