为基于XSD的标准选择开源许可证

得到一个关于我计划实施的开源项目的问题(要么在Codeplex或Sourceforge上托管)。 简而言之,该项目将包含一个XSD文件,用于定义要遵守的XML文件的模式,以及一些用于处理这些XML文件的C#代码。 但是我不确定应该给它什么牌照,尤其是XSD文件。该项目将主要是一个类库,因此我很想使用LGPL,因此它可以被免费和专有软件使用。 但有一点是,我不希望XSD文件能够被更改,因为我试图建立一个特定问题域的数据共享标准,并且imo没有必要制定一个标准开源,还是它? 或者我应该将XSD作为单独的项目发布?不确定什么是正确的方法...... 感谢您对此事的任何建议。 马蒂厄     
已邀请:
我认为你犯了一个大错。事实上,我认为XSD文件应该在更自由的许可下发布。 如果有人想要创建一个专有版本的HTML并分叉Firefox来使用它们,那么它们只会为自己创造不必要的工作。在大多数情况下,它不会给Mozilla或W3C带来任何问题,因为没有人会关心或使用它。当然,Netscape和Microsoft都曾尝试添加专有的HTML扩展。微软最终意识到浏览器互操作性的价值。 Netscape的持续时间不够长。 如果您在架构上加上限制性许可,则会降低任何人采用您的标准的可能性。许多开发人员受到他们可以在项目中使用的组件许可的限制。除非对所有开发者开放,否则有一个标准有什么意义? 请记住,XSD文件不是标准或架构。它只是一种标准的表示。 例如,如果您有XHTML XSD,则更改XSD不会更改XHTML架构。 XHTML模式由W3C发布的英文文档定义。更改XHTML架构的唯一方法是让W3C发布和更新文档版本。如果更改XHMTL XSD,则表明已创建了不同模式的表示形式。 通过将XSD文件置于限制性许可证下无法保护您的架构,它只会迫使某人从头开始编写新的XSD文件以用于其专有扩展。 您是否认为您的标准可能存在缺陷,或者未涵盖您未考虑过的某些用例?如果您的标准无法满足开发人员的所有需求,他们将不会使用它。您可以承诺将改进纳入标准,但如果您被公共汽车撞到会发生什么?如果你是唯一可以合法改变标准的人,它最终会停滞不前并变得无关紧要。     

要回复问题请先登录注册