オープンソースの定義について

こんな Togetter が話題になってた。

togetter.com

オープンソースソフトウェアはOSIに認められたオープンソースライセンスで配布されるソフトウェアのことであり、それ以上でもそれ以下でもない

これに違和感が。「オープンソースの定義(OSD)」に準拠したライセンスのソフトウェアであればオープンソースだったような記憶があるんだけど、「OSIに認められたオープンソースライセンス」である必要はあるんだっけ?

まあ実際にOSDに準拠したオレオレオープンソースライセンスを作って「オープンソースでござい」と言ったとしてもなんか怪しいし、堂々とオープンソースを名乗りたいならちゃんとOSI認定のライセンスを使うか、そのライセンスをOSI認定してもらえよって感じなんでどうでもいいんだけど、定義の問題として。

オープンソースの定義 を見ると

「オープンソース」とは、単にソースコードが入手できるということだけを意味するのではありません。「オープンソース」であるプログラムの頒布条件は、以下の基準を満たしていなければなりません。

と書かれていて、OSIに認められてる必要はなさそうに読める。

FAQ を見るとこんな風に書かれてて、

What is "Open Source" software?

Generally, Open Source software is software that can be freely accessed, used, changed, and shared (in modified or unmodified form) by anyone. Open source software is made by many people, and distributed under licenses that comply with the Open Source Definition. The internationally recognized Open Source Definition provides ten criteria that must be met for any software license, and the software distributed under that license, to be labeled "Open Source software." Only software licensed under an OSI-approved Open Source license should be labeled "Open Source" software.

「オープンソース」ソフトウェアとは?

一般的にオープンソース・ソフトウェアとは、誰もが自由にアクセスし、使用し、変更し、共有(改変・未改変を問わず)することができるソフトウェアのことです。オープンソースソフトウェアは、多くの人々によって作られ、オープンソースの定義に準拠したライセンスのもとで配布されています。 国際的に認められた「オープンソース定義」では、ソフトウェアライセンスとそのライセンスに基づいて配布されるソフトウェアが「オープンソースソフトウェア」と表示されるために満たさなければならない10の基準を規定しています。OSIが承認したオープンソースライセンスの下でライセンスされたソフトウェアのみが、「オープンソース」ソフトウェアと表示されるべきです。 (DeepL翻訳。以下同様)

一見 OSI-approved じゃないと「オープンソース」ではないって読めるんだけど、最初の文は must なのに次の文は should なのでビミョーな感じ。

こんな記述もある。

Is <SOME PROGRAM> Open Source?

Only if it uses one of the approved licenses, and releases appropriate software.

<プログラム>はオープンソースですか?

認可されたライセンスのいずれかを使用し、適切なソフトウェアをリリースしている場合に限ります。

ここは厳しめに書かれてる。

でもその下には、

Can I call my program "Open Source" even if I don't use an approved license?

Please don't do that. If you call it "Open Source" without using an approved license, you will confuse people. This is not merely a theoretical concern — we have seen this confusion happen in the past, and it's part of the reason we have a formal license approval process. See also our page on license proliferation for why this is a problem.

認可されたライセンスを使用していなくても、自分のプログラムを「オープンソース」と呼んでもいいのでしょうか?

そんなことはしないでください。認可されたライセンスを使わずに「オープンソース」と呼ぶと、人々を混乱させることになります。これは単に理論的な問題ではありません - 私たちは過去にこのような混乱が起こるのを見てきました。なぜこれが問題なのかについては、ライセンスの拡散についてのページもご覧ください。 (DeepL翻訳)

と書かれてて、定義上はオープンソースなんだけどやめて欲しいってことらしい。

なので、やっぱり「OSIに認められたオープンソースライセンスで配布されるソフトウェアのことであり、それ以上でもそれ以下でもない」は言いすぎだと思う。

でも昔は FAQ にこんな記述なかった気がする…と思って https://web.archive.org で辿ってみた(便利)。

What is "Open Source" software?

最古のものは 2015/9/3。これより前はその記述は無かった。結構最近だった。

Is <SOME PROGRAM> Open Source?

これは結構古くて 2007/12/15から。

Can I call my program "Open Source" even if I don't use an approved license?

これはも上と同じ 2007/12/15。ただし内容は少し違って、

You can call you program "Bob" if you want, but if you call it "Open Source" without using an approved license, you will be confusing people. Please don't. Companies that confuse partners and potential customers tend to drive them away.

自分のプログラムを「ボブ」と呼ぶのは構いませんが、承認されたライセンスを使わずに「オープンソース」と呼ぶと、人々を混乱させることになります。やめてください。パートナーや潜在的な顧客を混乱させる企業は、彼らを追い払う傾向があります。

「ボブ」って誰やねん…。オープンソースは一般用語だから誰かがそう呼ぶのは止められないって意味かな。

Bob の記述がなくなるのは 2011/11/7〜。

それよりも前になると、上のような項目はないんだけど、似たような内容でこんなのがある。

1999/10/13

How do I use the term `open source'?

The phrase `open source' standing by itself is a mass noun. In compounds that use the phrase as an adjectival noun, such as `open-source software', follow normal English usage and hyphenate. While there is agreement on the broad term `open source' as meaning approximately what is captured in the Open Source Definition the term has, ironically, now become so popular that it has lost some of its precision. We strongly encourage everyone who cares about open software to use the term only to describe licenses that conform to the OSD, or software distributed under such licenses; but since the term has passed into more general use, we also encourage people to refer to the ``OSI Certified'' mark, which has precision and legal force in identifying software distributed under licenses that are known to meet the OSD requirements.

「オープンソース」という言葉の使い方は?

`open source' は単独で立つと大量名詞になります。`open-source software' のように形容詞名詞としてフレーズを使う複合語では、通常の英語の用法にしたがってハイフネートしてください。 オープンソースの定義では、「オープンソース」という広義の用語は、「オープンソースの定義」に記載されているものとほぼ同じ意味であるという点では一致していますが、皮肉なことに、この用語はあまりにも一般的になりすぎて、その正確さを失ってしまいました。私たちは、オープンソフトウェアに関心を持つすべての人が、OSDに準拠したライセンス、またはそのようなライセンスの下で配布されたソフトウェアを記述するためだけにこの用語を使用することを強く推奨しますが、この用語がより一般的に使用されるようになってからは、OSDの要件を満たすことが知られているライセンスの下で配布されたソフトウェアを識別するための精度と法的な力を持つ ``OSI Certified'' マークを参照することも推奨します。

この頃はやっぱり「OSDに準拠してればオープンソース」だったんだな。OSI認定は「強く推奨」。

さらにこれより前になると 1998/12/1

How do I use the term `open source'?

The phrase `open source' standing by itself is a mass noun. In compounds that use the phrase as an adjectival noun, such as `open-source software', follow normal English usage and hyphenate. It isn't necessary to capitalize the phrase unless referring to the certification mark itself or to the Open Source campaign. Once per document (on or near first citation) it should be noted that Open Source is a trademark.

「オープンソース」という言葉の使い方は?

`open source' は単独で立つと大量名詞になります。`open-source software' のように形容詞名詞としてフレーズを使う複合語では、通常の英語の用法にしたがってハイフネートしてください。 認証マーク自体やオープンソースキャンペーンを参照している場合を除き、フレーズを大文字にする必要はありません。文書ごとに一度だけ(または最初の引用の際に)、オープンソースは商標であることを明記しなければなりません。

ただの表記方法の話だけなのが面白い。TMをつけろとも書かれてる。1999/6 に商標申請が却下されたからその後はTMの話は書かなくなったんだろうか。 商標が取れなかったからOSI認定ができたってことかな。

雑にまとめるとFAQ上はこんな感じ。

  • 1998〜 OSD準拠であればオープンソース
  • 1999〜 OSI認定を強く推奨
  • 2007〜 自称はするのは止められないけど、OSI認定じゃないものは呼ばないで
  • 2011〜 OSI認定じゃないものは呼ばないで

[追記]

Twitter でこのような指摘をいただいた。

初期のOSD(web.archive.org では 1.4 までしか辿れなかった)には、上のFAQにあった用語の使い方についての記述があったようだ。

1.4 (1999/4/28)

10. Conforming Licenses and Certification.

Any software that uses licenses that are certified conformant to the Open Source Definition may use the Open Source trademark, as may source code explicitly placed in the public domain. No other license or software is certified to use the Open Source trademark.

10. 適合ライセンスと認証。

オープンソース定義に準拠していると認定されたライセンスを使用するソフトウェアは、パブリックドメインに明示的に配置されたソースコードと同様に、オープンソースの商標を使用することができます。他のライセンスやソフトウェアは、オープンソースの商標を使用することはできません。

その後 1.7 (1999/10/12) ではこの記述はなくなり、次が追加されてる。

Conformance

(This section is not part of the Open Source Definition.)

We think the Open Source Definition captures what the great majority of the software community originally meant, and still mean, by the term "Open Source". However, the term has become widely used and its meaning has lost some precision. The OSI Certified mark is OSI's way of certifying that the license under which the software is distributed conforms to the OSD; the generic term "Open Source" cannot provide that assurance, but we still encourage use of the term "Open Source" to mean conformance to the OSD. For information about the OSI Certified mark, and for a list of licenses that OSI has approved as conforming to the OSD, see this page.

適合性

(このセクションはオープンソース定義の一部ではありません) 私たちは、オープンソースの定義が、ソフトウェアコミュニティの大多数が本来意味していたこと、そして今もなお「オープンソース」という言葉が意味することを捉えていると考えています。しかし、この用語は広く使われるようになり、その意味はある程度正確さを失っています。OSI Certifiedマークは、ソフトウェアが配布されるライセンスがOSDに準拠していることを証明するためのOSIの方法です。一般的な用語「オープンソース」ではその保証を提供できませんが、OSDへの準拠を意味する「オープンソース」という用語の使用を奨励しています。OSI認証マークについての情報、およびOSIがOSDに準拠していると承認したライセンスのリストについては、このページを参照してください。

商標が取れなかったから記述を変更したということか。

そして 1.8 (2001/3/30) ではこの記述が無くなった (そして FAQ に移った?)。

  • 初期は「オープンソース」を商標で縛って厳格に適用しようとしていた
  • 商標が取れなかったので認定マークを作った
  • 自称するのは止められないけど、OSI認定じゃないものはオープンソースとは呼ばないで

という変遷らしい。

(追記ここまで)

商標について

アメリカでは商標は取れなかったんだけど、日本では商標登録されている。 (個々の商標の URL は無いみたいなので https://www.j-platpat.inpit.go.jp/ から「オープンソース」で検索して)

でもこの商標の区分は第42類「知的所有権に関する情報の提供」だけでソフトウェアのライセンス名称についての商標ではないので、ソフトウェアのライセンスとしての「オープンソース」は商標的には縛ることはできない…と思う(自分は専門家じゃないので怪しい)。

商標登録時には、第16類、第35類、第41類 もあったけど、これらは 2018年に取り消されてる。(これについてはこの辺参照)

商標ではないと言ってもみんなが勝手な意味で使うと会話が成り立たないので、ちゃんと「オープンソース」という言葉ができた当初の意味で使うべきだとは思う。

けど、言葉は変わるものなので、どこまで元の意味のままで使われるのか。1999年の時点ですでに商標が取れないくらい一般用語化してしまって「あまりにも一般的になりすぎて、その正確さを失ってしまいました」という状態なのでもうどうしようもないのかもしれない。

オープンソースと呼ばないで

いろいろ調べてて、Matzにっき にこんなのを見つけた(この頃はちゃんと日記が書かれてた)。

OSD準拠ソフトウェアはオープンソースソフトウェアか

オープンソースの定義に準拠してるけど作者がオープンソースと呼ばないで欲しいという場合について書かれている。

この話は一週間ほど続くんだけど、その中で、「オープンソース」と呼ばないで という記事もリンクされてた。

この辺りを読んでみても、やっぱり当時はOSDに準拠しているかどうかがポイントであって、OSI認定かどうかは問題じゃなかったように思える。