MSDNのサンプルコードのライセンス:Microsoft Limited Public License

Posted on Posted in 趣味的なIT・ネットの話題

Unityで使うコードをMSDNのサンプルコードを拡張する形で作りました。公開している記事はこちら

公開する以上は著作権をクリアしないといけないので、MSDNのサンプルコードのライセンスを探したところ、サイトのフッターから飛べました。海外のコミュニティではときどき話題になっているようですが、国内ではあまり触れられることが少ないようですね。

ライセンス英語版

ライセンス日本語版

いずれもライセンスの本来部分では無く、最後のExhibit Bにある「Microsoft Limited Public License」が適用されるライセンスです。概ねBSDライセンス的な内容ですので、通常は商用、非商用とも問題無いと思います。

が、一点問題なのが以下の条項。

  • (F) プラットフォームの限定 – 第 2 条 (A) 項および第 2 条 (B) 項で付与されるライセンスは、お客様が作成し、Microsoft Windows オペレーティング システム製品上で動作するソフトウェアまたは二次的著作物のみに適用されます。

要はWindows上で動くもの以外には使ってはいけないという規定。今回の開発はUnityですが使用しているマシンはMac。主な開発ターゲットはAndroidとiOSデバイス。開発フローの中にWindowsは登場しません。UnityはWindowsのバイナリも作れますから、「Windows用も一応作るから」という建前でこの規定の適用を免れる事は一応できそうですが、どうにも気持ち悪いです。

知的財産系弁護士的な判断としては、今回使ったコードサンプルにはそもそも著作権が発生していないので、Microsoftは著作権に基づく権利主張、たとえばこのライセンスが適用されることの主張ができないというのが結論です。というのも、このサンプルは若干長いものの、この非同期の動作を実現しようとすると言語仕様が同じである以上は、同じようなコードにならざるを得ず、創作性が存在しないと考えられるからです。

ただ開発会社の実務としては、個々のサンプルのコードに創作性があるかどうかということをいちいち判断している訳にもいきませんので、結局は先の建前論を通さざるを得ないのかなと思います。


Facebooktwittergoogle_pluspinterestlinkedinmail
納得したらすぐにシェア!