近期,一場關于開放源代碼定義解釋權的爭議引起了軟件行業的關注。
爭議源于開放源代碼促進會(Open Source Initiative,以下簡稱 OSI)在其官網發表的一篇文章。該文章引用一件美國法院判決,并聲稱通過該判決確認了OSI在開放源代碼定義解釋中的重要地位。
由于OSI在開源領域的重要影響力,此文章在軟件行業內引發了較大反響,國內外開發者及相關機構紛紛發表了自己的看法,也引發了一些爭議和擔憂。但隨著深入挖掘本次案件的判決書等內容,“真相”也越發清晰。
先說結論:美國法院針對該案件的判決并沒有涉及開源定義解釋權。沒有支持OSI的主張:即“開源”應該是一個有明確定義的專門術語,并且應由OSI這樣的組織來掌握并解釋。
下面,就隨著小編一起來剖析拆解這起「真假開源」之爭事件~
01
爭議事件回顧
首先,上述爭議涉及到以下幾個重要事件:
01
Neo4j,Inc.v.PureThink,LLC案
原告Neo4j公司開發了一個名稱為Neo4j的高性能NoSQL圖數據庫。最初原告以GPLv3許可證發布了社區版Neo4j CE。2018年5月,原告使用AGPLv3 + Commons Clause的許可證(法院將其稱為瑞典軟件許可證)發布了企業版Neo4j EE v3.4,在Commons Clause中,約定禁止非付費公眾將其用于商業轉售和從事商業支持服務。2018年11月,原告使用商業許可證發布了Neo4j EE v3.5。
被告PureThink公司以Neo4j EE v3.4為基礎開發了ONgDB,刪除了瑞典軟件許可證中的Commons Clause,并以AGPL許可證進行了發布。ONgDB在市場上與原告Neo4j公司展開競爭。
在此案中,原被告雙方并未爭論在AGPL許可證中加入Commons Clause是否導致了許可證不自由,也未爭論使用AGPLv3 + Commons Clause許可證發布的Neo4j EE v3.4是否屬于開源。
雙方爭論的焦點集中在被告以下兩個方面的宣傳:
(1)ONgDB是商業許可的Neo4j EE的“自由開源”版本或替代品
(2)ONgDB是Neo4j EE的“相同版本的現有商業發行版的替代品
初審判決
美國加州北區地方法院于2021年5月18日作出初審判決:[1]
禁止被告PureThink公司將ONgDB表示為具有相同版本的Neo4j企業發行版的自由開源替代品的廣告宣傳,以及可能導致消費者相信ONgDB是Neo4j美國公司或Neo4j瑞典公司產品,或與Neo4j美國公司或Neo4j瑞典公司產品相同的任何聲明;
禁止被告PureThink公司宣傳Neo4j EE是僅僅以AGPL發布的;
禁止被告PureThink公司宣傳Neo4j瑞典公司在Neo4j EE的許可證中添加Commons Clause違反了AGPL的規定;
禁止被告PureThink公司宣傳從瑞典軟件許可證中刪除Commons Clause是合法的,以及類似的聲明。
上訴判決
被告PureThink公司不服美國加州北區地方法院的初審判決,并進行了上訴,美國第九巡回上訴法院于2022年2月18日作出了上訴判決[2],維持了該初審判決,并指出:
被告PureThink公司關于ONgDB是Neo4j EE的“自由開源”版本的陳述是錯誤的,因為瑞典軟件許可證的第7節只允許下游被許可人刪除上游被許可人添加到原始內容的“進一步限制”。
02
OSI官網文章
2022年3月17日,OSI在其官網發布文章[3],聲稱美國第九巡回上訴法院在Neo4j,Inc.v.PureThink, LLC案的判決中,確認將未根據開源許可證進行許可的軟件稱為“開源”屬于虛假宣傳,并進一步聲稱法院確認了“開源”是根據特定類型的許可證進行許可的軟件的專門術語,以及許可證是否通過OSI批準是用戶采用該軟件的一個至關重要的因素。
OSI在文章中認為法院的判決支持了他們既有的主張:那就是“開源”應該是一個有明確定義的專門術語,并且應由OSI這樣的組織來掌握并解釋。
03
國內公眾號文章
OSI的文章在國內外引發熱議。2022年3月21日,騰源會上的原創文章[4]就直接引用OSI的觀點,提出“美國法院最新判決:未經OSI許可的開源是「假開源」”;而3月23日InfoQ上發表的署名文章[5]就介紹了國外分析人士對OSI文章的反對,稱其是“自私的、誤導性的和錯誤的”,法院并未就“開源”的含義做出任何法律裁決。
02
相關問題分析
01
美國法院并沒有確認未根據OSI批準的開源許可證進行的開源屬于虛假宣傳或假開源
根據前述分析,法院判決僅僅確認了被告PureThink公司關于ONgDB是Neo4j EE的“自由開源”版本的陳述是錯誤的,因為瑞典軟件許可證的第7節只允許下游被許可人刪除上游被許可人添加到原始內容的“進一步限制”。
具體地,給AGPLv3加上Commons Clause限制得到瑞典軟件許可證的原告Neo4j公司是許可人,而非上游被許可人,因此被告PureThink公司作為下游被許可證人,無權刪除許可人添加到原始內容的限制內容。既然被告無權刪除Commons Clause,即被告也就無權使用開源許可證AGPL來發布ONgDB。
法院陳述了使用瑞典軟件許可證的Neo4j EE屬于開源
從OSI的文章中可以看出,OSI希望法院判決Neo4j EE不屬于開源,因為Neo4jEE的瑞典軟件許可證是在AGPL許可證中添加了非自由條款Commons Clause:
但是,法院沒有判決Neo4j EE不屬于開源。相反地,初審法院在判決書中陳述了Neo4j EE屬于開源。
在初審判決的Background部分,法院陳述了原被告雙方接受的事實部分:原告發布了Neo4j EE v3.4,繼續將其在開源許可下提供;但是,他們用更嚴格的許可證取代了AGPL......。2018 年11月,原告僅在商業許可下發布了Neo4j EE v3.5。從那時起,原告不再在開源基礎上提供Neo4j EE。需要注意的是,初審法院并未對瑞典軟件許可證是否屬于開源許可證進行論述。
法院判決并未涉及使用AGPL許可證的ONgDB是否屬于開源的問題
法院判決并未涉及ONgDB是否屬于開源,即使ONgDB已根據AGPL許可證進行了發布。原因在于,本案原被告的律師并不關心這個問題,法院也不關心,法院僅僅針對原被告的爭議論述了被告PureThink公司作為下游被許可證人,無權刪除許可人添加到原始內容的進一步限制,即被告無權使用AGPL許可證來發布ONgDB。
簡而言之,美國法院并未裁決ONgDB是否屬于開源,而是裁決被告不能宣傳ONgDB是Neo4j EE的“自由開源”版本。
02
美國法院并沒有支持OSI的主張:即“開源”應該是一個有明確定義的專門術語,并且應由OSI這樣的組織來掌握并解釋
通過對初審法院和上訴法院判決的仔細研讀,法院判決并未就“開源”或“自由開源”的含義作出任何法律上的認定,也未提及OSI在開源認證上具有獨特地位,甚至整個判決書都找不到任何與OSI相關的字眼或表達。
03
美國法院判決中的問題
初審判決中把瑞典軟件許可證認定為開源許可證,這并不符合當前主流開源的定義;并且,上述法院將瑞典軟件許可證的第7節解釋為“只允許下游被許可人刪除上游被許可人添加到原始內容的進一步限制”,也存在較大爭議。
即使如此,也不必對此判決產生的影響過分擔憂,因為上訴法院已經將其列為無約束力的判決,其效力僅僅限于本案,不會被其他案件作為判例引用:
03
結論與建議
綜上,美國法院針對該案件的判決并沒有涉及開源定義解釋權。本次爭議的主要原因來自OSI為了擴大自己的影響而發布的文章,該文章存在較多對法院判決內容的不實描述。
但對開源定義解釋權的追求,這確實是OSI長期努力的目標之一。
從《大教堂與集市》一書的介紹也可以看到,OSI從成立之初就嘗試把“Open Source”注冊為商標,以便他們可以合法地要求人們在符合開放源碼定義(open source definition)的產品上使用“Open Source”標識;但是,美國商標局并未同意將這個描述性的短語注冊為商標。雖然未獲得“Open Source”注冊商標,但OSI一直在致力于開源協議標準的制定和開源行業的推廣,其制定并維護的開放源碼定義也得到了業界廣泛的認同。
應當理解,開源本身就是一個源自“黑客文化”的商業模式,具有松散的“集市”型的運作特征,在開源行業的話語權從來都不是來自于官方機構的認證,而是直接與對開源事業的參與度和對開源項目的貢獻度連接。
但是,考慮到OSI在業內的廣泛影響力,以及技術人員對法律的不熟悉,經過本次OSI的宣傳,很容易給技術人員一種直觀的錯覺,即采用OSI認證的開源協議發布的軟件代碼才是開源代碼。
鑒于此,我們建議國內的監管部門和中國企業一起,通過成立第三方獨立機構的方式(類似于 OSI),做好各種開源協議的宣傳、制定、認證和管理等工作,并且當后續出現涉及開源協議的爭議時,可以作為獨立第三方進行解釋,解決爭議問題。
「 支持烏有之鄉!」
您的打賞將用于網站日常運行與維護。
幫助我們辦好網站,宣傳紅色文化!