3

私が計画しているオープンソース プロジェクト (Codeplex または Sourceforge でホストされる予定) について質問を受けました。

つまり、プロジェクトは、準拠する XML ファイルのスキーマを定義する XSD ファイルと、それらの XML ファイルを操作する C# コードで構成されます。

しかし、特に XSD ファイルについて、どのライセンスを与えるべきかわかりません。このプロジェクトはほとんどがクラス ライブラリになるので、フリー ソフトウェアとプロプライエタリ ソフトウェアの両方で使用できるように、LGPL を使用したいと考えています。

しかし、1 つ言えることは、XSD ファイルを変更できるようにしたくないということです。これは、特定の問題領域のデータ共有の標準を作成しようとしているからです。標準を作成しても意味がありません。オープンソースですか?

または、XSD を別のプロジェクトとしてリリースする必要がありますか? どうするのが正解なのかわからない…

この件についてアドバイスをいただきありがとうございます。

マチュー

4

1 に答える 1

4

あなたは大きな間違いを犯していると思います。実際、XSD ファイルはもっと自由なライセンスの下でリリースされるべきだと思います。

誰かが HTML のプロプライエタリ バージョンを作成し、それを使用するために Firefox をフォークしたい場合、彼らは自分自身のために不必要な作業を作成しているだけです。ほとんどの場合、Mozilla や W3C に問題が生じることはありません。確かに、かつて Netscape と Microsoft の両方が独自の HTML 拡張機能を追加しようとしました。Microsoft は最終的に、ブラウザーの相互運用性の価値を認識しました。Netscape は、それが問題になるほど長続きしませんでした。

スキーマに制限付きのライセンスを設定すると、誰かがあなたの標準を採用する可能性が低くなります。多くの開発者は、プロジェクトで使用できるコンポーネントのライセンスによって制約を受けています。すべての開発者に公開されていない限り、標準を持つ意味は何ですか?

XSD ファイル標準でもスキーマでもないことに注意してください。これは標準の表現にすぎません。

たとえば、XHTML XSD がある場合、XSD を変更しても XHTML スキーマは変更されません。XHTML スキーマは、W3C によって発行された英語のドキュメントによって定義されています。XHTML スキーマを変更する唯一の方法は、W3C に文書の更新版を公開してもらうことです。XHMTL XSD を変更すると、異なるスキーマの表現が作成されます。

XSD ファイルを制限付きのライセンスの下に置いても、スキーマを保護することはできません。独自の拡張機能用に新しい XSD ファイルを最初からコーディングすることを誰かに強制するだけです。

標準に欠陥があるかもしれない、または考慮していない特定のユースケースをカバーしていない可能性があると考えたことはありますか? 標準が開発者のすべてのニーズを満たすことができない場合、開発者はそれを使用しません。標準に改善を組み込むことを約束することはできますが、バスにひかれた場合はどうなりますか? 法的に基準を変更できるのがあなただけである場合、基準は最終的に停滞し、意味がなくなります。

于 2011-02-19T17:41:48.243 に答える