OSSライセンスを勉強する前に知っておきたいこと
OSSライセンスの特徴
複数のライセンスから利用者が選択できる場合も
では、具体的にOSSライセンスが、実際のオープンソースにどのように適用されているのかを見ていきます。
OSSコンポーネントには必ず何らかのライセンスが適用されています。その際、ただ一つのライセンスが適用されることがほとんどですが、デュアルライセンスもしくはトリプルライセンスといったように複数のライセンスが適用されているものもあります。これは「提示した2つあるいは3つのライセンスの中から、好きなライセンスを選択してください」という意味です。これにより利用者の主義や思想、目的により適したライセンスを選択することができます。
OSSはライセンス条件を遵守していれば再頒布、再利用が可能ということは既に説明しましたが、これは利用者が別のOSSプロジェクトであった場合でも可能です。そのため既存の著名なOSSが、別のOSSに取り込まれ利用されているというケースは珍しくありません。特にサブコンポーネントがたくさんあるような巨大なプロジェクトの場合、サブコンポーネントやサブディレクトリ単位でライセンスが異なるということはよくあります。このようなプロジェクトの場合「3rdparty」や「external」といったディレクトリに、外部のライブラリやソースコードを格納していますので、そのプロジェクトのオリジナルのOSSかどうかを判別することができます。このようにOSSを利用する際には、トップのライセンスだけではなく、サブコンポーネント、サブディレクトリのライセンスについても確認する必要があります。
OSSライセンス自体のバージョンアップにも注意が必要
OSSコンポーネントがバージョンアップした際に、適用されるOSSライセンスが変更されることもあります。あるバージョンを境に適用するライセンスを変更するというケースです。条件の厳しい(多い)ライセンスから条件の緩い(少ない)ライセンスに変更される場合は、利用者側としては特に大きく意識する必要はありませんが、条件の緩いライセンスから条件の厳しいライセンスに変更された場合には、利用者側は利用条件をきちんと洗い出し新しいライセンスを遵守する必要があります。
また、OSSライセンス自体もバージョンアップすることがあります。例えばApache Licenseですと、1995年にApache License, Version 1.0がリリースされ、2000年にはApache License, Version 1.1、2004年にはApache License, Version 2.0がリリースされています。このようにあるシリーズのライセンスのバージョンアップに伴い、OSSコンポーネントに適用するライセンスをバージョンアップさせることもあります。
さて、ここまで読んで頂いた方の中には、数多くのライセンスを一つ一つ確認していくのはとても大変だと感じられた方もおられるかもしれません。先に述べたようにOSSライセンスは2000種類以上あると言われ、OSIに承認されているライセンスだけでも70種類あります。しかし、実際にはこれらのライセンスが万遍なく利用されているわけではありません。人気のあるライセンスと人気のないライセンスには、極端に差があります。特に人気のある10種類程度OSSライセンス条件を把握しておけば、90%以上のOSSコンポーネントのライセンスをカバーすることができます。
連載バックナンバー
Think ITメルマガ会員登録受付中
全文検索エンジンによるおすすめ記事
- コピーレフト型と非コピーレフト型OSSライセンスの違いとは?
- GitHubを利用する際に注意したいOSSライセンスのポイントとは
- オープンソースERP「Adempiere」の概要
- 「Open Source Summit Europe」で、LFがTerraformの代替となる新プロジェクト「OpenTofu」を発表
- やさしい「Apache」と厳しい「GPL」、IoT標準化に最適なライセンスはどちらか
- やさしい「Apache」と厳しい「GPL」、IoT標準化に最適なライセンスとは
- やさしい「Apache」と厳しい「GPL」、IoT標準化に最適なライセンスはどちらか
- Microsoft、「OpenJDK」の自社ビルドをプレビューリリース
- 新CTO、ビル・レディンガム、オープンソースロジスティクスについて語る。
- オープンソースの最新トピックと、ビジネス活用のポイント(OSPセミナーレポート前編)