Google vs Oracle の訴訟の行方
すこし前の話で恐縮だが, Google と Oracle の間で争われている訴訟にひとつの決着がついた。
これについてよい記事が出ているので紹介する。
こういう良記事が Gist や Qiita に貼り付けられて出てくるというのが「時代だなぁ」という感じである。
さて,今回の訴訟については個人的に思うところもあるので,上記リンク先を参考に私情を交えていろいろ書いてみたいと思う。 「お前の考えてることなんか要らんよ」って方は上のリンク先を開いてこのページは閉じてくだい。
(ぶっちゃけ,もう Java は捨てて Go 言語とかに切り替えたらいいと思う)
これまでの経緯
この訴訟の前半の経緯については以下の記事が参考になる。
- AndroidをめぐるOracle対Google裁判を振り返る(前編)~ Oracleが主張した特許侵害は認められず - Publickey
- AndroidをめぐるOracle対Google裁判を振り返る(後編)~ 残る課題はAPI著作権と9行のコード - Publickey
かいつまんで紹介するとこんな感じ。
- 最初は著作権ではなく特許権の侵害(7件)の有無が訴訟の中心だった
- Oracle の申し立てた7件のうち5件は特許自体が無効とされた。残り2件については侵害は認められないとされた
- この判決を受け,争点が特許権の侵害から著作権の侵害へと移る
- 「37の Java API パッケージの互換コードについて、Oracle は、 Google が著作物全体の「構造、順序、構成」(Structure, Sequence, Organization; SSO)を侵害したと証明したか」
- 「TimSort.java および互換コードの rangeCheck メソッド」の著作権侵害
- 3-1 については著作権侵害は認められるが fair use については結論が出ず。 3-2 については侵害が認められた(ただし軽微)
上記の争点 3-1 がいわゆる「API の著作物性」といわれる問題である。 更にこの問題については論点が2つあって
- API の構成要素である SSO について著作権が適用されるのかどうか
- 仮に著作権が適用されるとして公正な利用(fair use)の範囲内かどうか
である。 訴訟の前半では最終的に,前者については「適用」,後者については「不明」であった。
そこで Google は最高裁へ上告することになった。
本題に行く前に
ちょっと著作権についておさらい。
言わずもがなだが,著作権は「表現」を「知的財産権(intellectual property)」として,その「利用」を制限(control)できる。
著作権について厳密に議論するなら法学の知識が必要だが,私たち一般(layperson)にも分かりやすいよう大雑把に理解すればいいのなら,とりあえず「表現」と「利用」と「使用」の3つのキーワードを覚えておけばよい。
先ほど言ったように,著作権は「表現」の「利用」を制限できる。 しかし一方で,著作権は「表現」の「使用」については関知しない。
これは典型的な著作物,すなわち書籍や音楽や映像で考えると分かりやすい。 書籍を読むことは「使用」だが,書籍をコピーして(有償無償にかぎらず)ばら撒くことは「利用」である。 同様に聴くことや観ることも「使用」である。 ここで重要なのは,読んだり聴いたり観たりする対象が合法に「利用」された著作物であるか否かについても(基本的には)関知しないということだ(もちろん違法にコピーして売りさばいた人は訴えられるが)。
「利用」についても全ての「利用」を制限できるわけではない。 これは,日本の場合は「権利の制限」として,米国では「公正な利用」として認められている(他の国でも同様の規定がある)。 たとえば米国 DMCA では定期的に適用除外規定を見なおしている。
著作権は「表現」をめぐる全ての活動を制限できるわけではないし,できるようにすべきではない。
また著作権の対象は(これまた基本的には)「表現」に限られる,という点も押さえておきたい。 たとえばアイデアやコンセプトは「表現」ではない。 これらは「特許権」の範疇である。 また名前(表題)やキャラクタも「表現」ではない。 これらは商標権や意匠権,あるいは(実在の生きている人物に紐づくものなら)パブリシティ権などで制限できる。 ましてや「労力」はどんな「知的財産権」にも当てはまらない。 (人々が表現やアイデアなどに価値を見出すのはそこに向けた労力に対してではない)
特許権や商標権などが著作権と大きく異なるのは,これらの権利が「利用」のみならず「使用」についても制限できることである。 たとえば,ある製品が特許権で守られているなら,その製品のベンダは使用者に対し,その製品の「使用」を差し止めることができる(それが命にかかわる医薬品であっても)。 これはかなり強力な「独占(=私有化)」である。 (故に特許権などはいまだに登録制になってるし,適用期間もずっと短い。それでも今の時代に20年は長すぎるけど)
じゃあ,プログラム・コードは「表現」なのか。 残念ながら(あるいは幸運なことに?)プログラム・コードは「表現」として著作権に組み込まれてしまった。 プログラム・コード(とデータベース)が正式に「著作権」の対象として組み込まれたのは1996年に締結された WCT(WIPO 著作権条約)以後であるが,議論としては1980年代から存在する。 WCT 締結のプロセスには米国の意向が強く反映されていると言われている。
ちなみに Java のアルファ版が登場したのは1994年である。
では本題
結局,最高裁への上告は棄却されたので前半の結論はそのまま持ち越されたことになる。
API のコピーはあったか
今回「API のコピー」とされたものには大きく2つあるようだ。 ひとつは「宣言コード(declaring code)」の扱いで,もうひとつは「SSO の非逐語的コピー(non-literal copy)」である。
宣言コードというのは
public static int max(int x, int y) { if (x > y) return x; else return y; }
このコードのうち public static int max(int x, int y)
の部分を指す。
それ以外の部分は「実装コード(implementing code)」と定義している(このコードは判決文の中に出てくる)。
Google は,宣言コードは method of operation
であり著作権は適用されないと主張したが,最終的には認められなかった。
宣言コードは単なる「名前」ではなく,著作権の適用という点で宣言コードと実装コードを区別する意味は無いということだろう。 その上で宣言コードの逐語的コピー(literal, verbatim copying of declaring code)があったと認定されたことになる。
(Method of operation
がなぜ著作権の適用外になるのかということについては「コンピュータ関係の創作保護についての最近の米国での話題」あたりが参考になる。
「最近」と書かれているが1996年の記事)
そしてもうひとつが SSO,「構造,順序,構成」である。
Google は merger doctrine
や scènes à faire doctrine
を盾に JDK の SSO を著作権の適用外とするよう求めていたが,この点についても,これまでと同じく認められなかった。
Merger doctrine
や scènes à faire doctrine
は,アイデアなどに対する「表現」が限られたバリエーションしかない場合や,古典的あるいは標準的な表現の場合には著作権の適用外となるというものだが,控訴審が「命名や構造化には無数の方法がある」と述べたことに対し Google は反論しなかったようだ。
要するに API がアイデアかどうか以前に「そのコード,ただの丸写しじゃん」という判断らしい。
SSO のコピーは非逐語的コピーだけど,もともと Android のプラットフォームや開発ツールが Java エンジニアへの利便性のために JDK に似せて作られている点と,宣言コードは明らかに逐語的コピーである点も合わせて,独立した「表現」であるとは言えない(SSO のコピーが逐語的であるかどうかの要件を問わない)ということのようだ。
Fair Use については先送り
上の判断をふまえた上で API コードの利用に fair use doctrine
が認められるかどうかについては,今回も結論を先送りにした。
ただし,今回の件については 102(b) (つまり著作権の適用範囲)で争うのではなく,(API コードに著作権があるとした上で) fair use doctrine
の可否で争うべきだとの意見が添えられている。