摘要:應用程序編程接口對實現軟件之間及軟件與操作系統之間的互操作至關重要,在軟件行業(yè)中具有重要地位。接口是否具有可版權性這一問題,在美國經歷了由爭議到共識,再到共識被推翻的過程。應用程序接口可版權性涉及軟件保護范圍的基礎性問題,無論是適用版權法“合并”規(guī)則,還是考慮接口本身的“互操作”功能,兼及考量軟件產業(yè)的創(chuàng)新發(fā)展和有效競爭的需要,均應排除應用程序編程接口的可版權性。
關鍵詞:接口;合并;互操作性;功能性;可版權性
中圖分類號:D 923.4文獻標識碼:A文章編號:1003-9945(2020)05-0033-08
一、問題引入
目前正在美國進行的甲骨文公司與谷歌公司的涉及應用程序編程接口(Application Programming In? terface, API)①的版權糾紛,被業(yè)界稱為“版權十年爭訟”[1]及“史詩級版權訴訟”[2]。該案件吸引了軟件行業(yè)從業(yè)人員及行業(yè)組織、計算機軟件專家、知識產權學者等的廣泛關注。受到關注的原因固然與訴爭雙方的行業(yè)領軍地位和訴訟標的巨大有關,但更深層次的原因在于,此案涉及應用程序編程接口可版權性問題的判斷,即應用程序編程接口是否是版權保護的對象,以及對其使用構成侵權抑或合理使用問題。這一問題在版權法上的結論,將在一定程度上對美國軟件行業(yè)應用程序編程接口的編寫及運行生態(tài)產生深遠影響,也將對軟件產業(yè)生態(tài)帶來巨大的不確定因素。美國軟件行業(yè)對世界軟件行業(yè)更是具有絕對的影響力,軟件產業(yè)領域核心的操作系統、中間件和數據庫大多為美國企業(yè)所占領;而在操作系統方面,微軟的Windows和蘋果的MacOS占據全球市場97%的市場份額[3]。因此,美國軟件政策的影響力從來不局限于美國境內。美國在全球推動的關于軟件的知識產權保護,更使其軟件產業(yè)政策對國際社會及其他國家的軟件政策也會產生直接或間接的重要影響。可以說,包括對應用程序編程接口在內的美國軟件政策,將極大影響其他國家應用程序接口的版權保護規(guī)則及軟件產業(yè)政策。
目前,國內關于研究應用程序編程接口的文獻論述較少,這與我國基礎軟件薄弱地位有一定關系。本文從梳理美國典型應用程序接口版權爭議入手,并重點分析甲骨文與谷歌版權案的接口可版權性問題,從而探尋美國軟件接口影響可版權性的底層因素,思考版權基本原理在軟件作品下的具體應用,結合促進創(chuàng)新和反壟斷目的,得出應用程序接口應不具有可版權性的結論。
二、接口版權保護歷程中肯定與否定的糾結
應用程序接口的可版權性問題屬于軟件版權保護的范疇。利用版權進行軟件保護,始終有一個難題,即計算機軟件的功能性,也即“思想”與軟件的“表達”之間的界限。計算機軟件的功能性本質造成了在被侵權時確定版權保護范圍的最大困難[4]。在應用程序編程接口中,該功能具體體現為不同軟件之間及軟件與硬件之間的互相可操作性(interoperability)②,這成為應用程序接口能否得到版權保護的關鍵。基于應用程序接口發(fā)揮的“互相可操作性”的重要作用,有學者將其有關的版權爭議稱之為“戰(zhàn)爭”,并認為關于軟件接口版權保護,存在兩場“戰(zhàn)爭”,兩場“戰(zhàn)爭”的分割點就是自2010年發(fā)生的甲骨文公司對谷歌公司的接口版權訴訟。第一場“戰(zhàn)爭”發(fā)生在1980年代早期至1990年代中期,第二場戰(zhàn)爭是以2010年甲骨文公司對谷歌公司提起軟件編程接口(API)侵權訴訟為起點[5]。而在兩場“戰(zhàn)爭之間”,即1992年至2010年之間,美國聯邦上訴法院普遍認為,實現程序之間“互操作性”所必需的軟件接口不受版權法的保護。這些裁決使API使用者沒有必要因為使用他人API而提出合理使用的抗辯[6]。
(一)應用程序接口不受版權保護共識的形成
第一場“戰(zhàn)爭”關于應用程序編程接口(API)是否具有可版權性的爭議,主要發(fā)生于美國法庭處理的相關案例中,具體結果體現于各接口案件法院所做出的裁決。具體而言,在美國各涉及軟件接口案件的法院裁決并不統一,但有一個大致演變的路徑。應用程序接口的編寫,往往體現了程序員的智力勞動,具有相當程度的獨創(chuàng)性,構成版權法上保護的對象。但能否得到保護,又要受到其他因素的制約,如是否具有功能性,是否形成思想與表達的合并等。而軟件本身即具有“實現某一功能”的特征,使其不同于一般作品。軟件本身具有的技術特征,且其運行必然要實現一定的功能,使得在軟件保護過程中,如何進行功能與表達上的界定劃分,直接涉及到其能否得到版權的保護。而軟件接口的互聯互通的中介轉譯功能,也被稱為“互操作性(interoperability)”,使得對這一問題的判斷更顯復雜。
初期的案件并沒有因為“互操作性”功能而否定可版權性。在“Apple Computer訴Franklin Computer”案[6]中,“互操作性是一項商業(yè)和競爭目標,不涉及某種特定思想和表達是否合并的某種形而上學的問題”。在這種推理下,應用程序接口(Interface)并未因其具有“互操作性”而被排除出版權保護范圍。在“Whelan Assocs.訴Jaslow Dental Lab., Inc.[7]”案中,美國第三巡回上訴法院認為版權保護計算機程序的所有方面,而不保護其基本目的,這種廣泛的版權保護有助于軟件公司提升動力去開發(fā)軟件。法院的這種觀點是單純從對創(chuàng)作者進行激勵的角度進行推理的結果,忽略了版權具有的公共政策因素,因此,也引起很大爭議。這個裁決開啟了保護過嚴的時期,因功能性而得不到版權保護的情形只在極少數情況下發(fā)生。涉及“互操作性”軟件版權法發(fā)展的關鍵轉折點發(fā)生在1992年的美國第二巡回法院審理的“Comput? er Assocs. Intl v. Altai”案[8]。該案對上述Whelan的判決采否定態(tài)度,法院認為,根據美國1976年版權法第102(b)條的規(guī)定,版權不得擴展到兼容性所必需的程序元素,并基于兼容性功能對有關軟件不予版權保護。Lotus Dev. Corp. v. Borland Intl, Inc[9]是谷歌公司為了支持自己關于涉案接口不受版權保護的觀點所援引的案例,谷歌公司認為自己的案件與該案具有法律問題上的相似性,即根據第102(b)條,用于執(zhí)行計算機程序代碼的命令結構是否受版權保護,這涉及到思想與表達的界限問題。該案中,第一巡回法院認為,Borland所使用的Lotus公司的接口只是一種“操作方法”,因此不受版權保護。該案已經成為具有軟件保護方面里程碑式的判例。谷歌認為,第一巡回法院關于Lotus訴Oracle裁決判斷邏輯可以直接應用于其與Oracle的爭議。在谷歌公司看來,Java API調用的Java平臺的“操作方法”,其方式Borland使用與Lotus 1-2-3的電子表格軟件菜單項的操作方法完全相同。據此,以此案作為自己主張的先例依據。而在第九巡回法院的“Sega Enterprises Ltd. V. Accolade,Inc.”案[10]中,第九巡回法院認為,即使涉及復制整個代碼,這也是一種合理的使用方法,因為必須進行復制才能訪問接口組件,第九巡回法院認為這是不可保護的,并認為“因為Accolade擁有獲得這種訪問權的合法權益(以便確定如何使其盒式磁帶與Sega Gene? sis控制臺兼容)”,所以復制代碼以復制接口組件是一種合理的做法。
在以上案例處理的過程中,逐步形成了對應用程序編程接口在實現應用程序之間進行“互操作”的功能認可,因此,應用程序編程接口的功能性是毋庸置疑的[11]。相應的,對于為實現軟件“互操作性”目的的應用程序編程接口不應成為版權保護對象已成為共識,這也意味著第一場“戰(zhàn)爭”的結束。
(二)基于甲骨文訴谷歌版權案API版權保護觀點的分裂
第一場“戰(zhàn)爭”形成的編程接口不受版權保護的共識持續(xù)了數年,隨著2010年開始的“甲骨文訴谷歌應用程序編程接口版權”案,第二場“戰(zhàn)爭”開始。該“戰(zhàn)爭”的二審結果,恰恰挑戰(zhàn)了以往對于應用程序編程接口(API)不受版權保護的認知,引起廣泛關注,這也成為被稱為第二場“戰(zhàn)爭”的原因。在甲骨文訴谷歌軟件版權侵權案件中,雙方在案件事實方面并沒有爭議,即谷歌復制了37個Java API軟件包,包括其中的“聲明代碼(Declaring code)”和整體的“結構、次序和組織(Structure, Sequence, and Organization, SSO)”。案件的首要爭論點是這些構成元素是否構成版權保護的對象。美國聯邦上訴法院二審認可了涉案軟件接口的可版權性。該裁判觀點和以往業(yè)界對程序接口不受版權保護可自由使用的觀點相悖。而在此案之后,關于軟件接口的版權案件也開始增多,其中比較典型的如下述兩個案件。
“Synopsys, Inc. v. Atoptech, Inc.”案[12]中,Atop? tech公司編制的應用程序利用了Synopsys軟件所使用的相同輸入和輸出格式,以實現軟件之間的“互操作性”,進而降低潛在客戶可能會面臨的軟件轉換成本。經過審理,法院支持了Synopsys公司的版權主張,對接口給予了版權保護。“Cisco Sys. v. Arista Net? works, Inc.”案[13]則是與“互操作性”有關的另一個涉及接口的案例。Cisco公司認為,Arista逐字復制使用了思科的命令行用戶接口(CLI)程序,包括500條多行命令,來配置Arista的以太網交換技術,對此Arista公司予以承認。爭論的焦點是復制的內容是否能夠得到版權保護。Arista在一審法院勝訴。法院認為,Arista受到“功能性和既存網絡行業(yè)協議的約束”,其復制CLIs的行為應該被允許,也就是說,法院認為,基于消費者高度熟悉并使用Cisco公司的CLI(與其他CLI相比),Cisco公司的CLIs已成為創(chuàng)建Arista軟件的必要元素。法院經審理,Cisco公司的CLI及相關命令已成為業(yè)界標準。Cisco公司提出上訴稱,這些命令行接口并不是基于Cisco公司創(chuàng)建時的行業(yè)標準;而是在Arista復制它時,它成為行業(yè)標準。Cisco公司強調指出,“公平原則”只否認對創(chuàng)作時(而不是復制時)常見的匯編的保護;此外,消費者熟悉度和可用性的模糊概念不足以證明Cisco公司命令行接口對Arista軟件的創(chuàng)建是“必要”的。在法院作出裁決前,雙方于2018年8月達成和解。該案雖未進行到最后法院的裁決階段,爭訟各方基于各自的利益考量進行了和解,但可以預見,無論何方勝訴,都將給軟件接口的版權保護爭議添加新的不確定性因素,甚至影響相關產業(yè)政策的變化。
這些案件都涉及到之前普遍認同的基于“互操作性”不對編程接口進行版權保護的問題,都產生了新的爭議。在案情上,往往是市場領導者試圖利用編程接口的版權保護,對競爭對手提起訴訟,以阻止競爭對手進入市場或者制造障礙,提升對手競爭成本。而如果他們的這種版權主張獲得了支持,這將使美國程序員在競爭中處于不利地位,而其他司法管轄區(qū)(如歐盟)的開發(fā)人員認為,版權并不保護互操作性所必需的程序元素[14]。因此,由“甲骨文訴谷歌版權”案引發(fā)的第二場關于應用程序編程接口版權保護的戰(zhàn)爭還在繼續(xù),但似乎已接近尾聲,且與第一次“戰(zhàn)爭”的結果不同。雖然,最終的結果還取決于美國最高法院是否同意審理本案,以及如果審理本案后,最終的裁決結果如何,但目前的狀況,二審法院對編程接口進行版權保護的裁決已經對軟件行業(yè)的運行生態(tài)產生巨大的沖擊。
三、“合并”規(guī)則和“功能性”視角下接口可版權性的否定
甲骨文公司和谷歌公司具有強大的行業(yè)影響力,而Java作為最受歡迎的編程語言的現實③與利用Java資源編寫的軟件接口的普遍性,以甲骨文訴谷歌的應用程序編程接口(API)的版權問題為切入,對接口的可版權性進行深入分析,具有代表性并能反映軟件行業(yè)關于程序接口的可版權性問題的共性。
甲骨文公司于2010年基于收購升陽(Sun)公司獲得了Java的所有權。該Java平臺能夠用于編寫和運行Java程序軟件,可以使程序員不必為了在不同的計算機硬件上運行而不得不為此而重新編寫程序,也就是說,利用Java實現“一次編寫,普遍運行”的目標[15]。Java平臺的Java SE包括Java虛擬機和Java應用程序編程接口(API)及其他。Java API是用于常見和更高級計算機功能的“預寫Java源代碼程序”的集合,通過Java API“允許程序員使用預先編寫的代碼將某些功能構建到自己的程序中,而不是從頭開始編寫自己的代碼以執(zhí)行那些功能。”預先編寫的程序被分類為“包(Package)、類(Category)和方法(Meth? od)”。具體來說,API包(Package)是類(Category)的集合,每個類(Category)又包含方法(Method)。為了在程序中包含特定功能,程序員需要調用Java“聲明代碼”。聲明代碼是一行或多行源代碼,它“聲明或定義”(i)方法名稱和(ii)“輸入”和方法帶來的預期,以及“輸出”。在聲明代碼之后,每種方法都包括“實現代碼”,該代碼接受輸入并向計算機提供分步指示,以執(zhí)行聲明的功能。
本案涉及的主要事實是谷歌公司在自己開發(fā)的Android手機平臺中使用了來自Java SE 1.4版本和5.0版本的37個API軟件包,并且復制了其中“聲明代碼(Declaration Code)”和“結構、次序和組織”(Struc? ture, Sequence and Organization, SSO),對此,訴訟雙方均予以認可。本案涉及主要爭論點是API軟件包是否構成版權保護的作品,如果構成版權保護的對象,谷歌公司對本案涉及的使用行為,是否構成版權法上的合理使用。主要爭論點或者說根本爭論點為應用程序編程接口(API)是否具有可版權性。
(一)“合并”規(guī)則審視下接口可版權性的否定
獨創(chuàng)性是作品可版權性的同義詞,可以說,判斷作品的可版權性是獨創(chuàng)性分析的基本功能[16]。因此,對涉案API的可版權性分析的邏輯起點,就是對其獨創(chuàng)性進行分析。2008年,Java API有166個“程序包(package)”,分為600多個“類(classes)”,6 000多個“方法(method)”。這可以簡單理解為,Java API有166個“文件夾”(程序包),所有這些程序包含600多個預編寫的程序(類),以執(zhí)行總共6 000多個方法(method)。對于這些程序包,谷歌對甲骨文公司主張的獨創(chuàng)性是予以認可的。從技術結構上,可以將API比作圖書館,API“包(package)”就像圖書館里的書架,“類別(class)”就像書架上的一本書,而“方法(method)”則像書里面的一個“如何做”的章節(jié)。本案涉及的是37個API包的文字元素,即聲明代碼(Dec? laration Code))和非文字元素,即序列、結構和組織(Sequence, Structure and Organization, SSO)。“方式”和“類別”是被用來執(zhí)行某種需要的功能,而“聲明代碼”就是用來描述“方式”和“類別”的“頭文件(head? er)”,并且為實現規(guī)定的功能,“宣告代碼”必須要保持一致,具有固定的含義[17]。谷歌公司復制了涉案37個Java API“聲明代碼”,但自己編寫了“執(zhí)行代碼(Implementing Code)”。甲骨文公司認為,該“聲明代碼”表明了每個API包的結構,就像文章中的章節(jié)標題和主題句;當谷歌公司復制了“聲明代碼”,也就復制了甲骨文公司的API包的“序列和組織”;也就是說,谷歌復制了“聲明代碼”,然后通過轉述其余的“結構、序列和組織(SSO)”,進行了自己的“執(zhí)行代碼”(Implementing Code)的編寫。據此,甲骨文公司認為,谷歌公司進行了整個“結構、序列和組織(SSO)”的非文字性復制。因此,在涉案API具有獨創(chuàng)性的前提下,可版權性就要受制于其“聲明代碼”是“思想”還是“表達”的判斷。
“聲明代碼”由具體的名稱和短語構成。但版權法不保護名稱、標題或簡短短語或表達方式[18];即使名稱、標題或短語是新穎的或與眾不同的,也不能受版權保護。一審法院對此予以認可,但二審法院認為,保護與否的關鍵在于“這些短語被使用或者組織在一起的方式是否展示出創(chuàng)新性”,而甲骨文公司“在創(chuàng)造API包,編寫相關的聲明代碼時,在‘方法的‘聲明的選擇和組織過程中展示了創(chuàng)新性”[19]。據此認定了Java API的可版權性。
筆者認為,二審法院的觀點看似合理,但仔細觀之,根據Java的編程規(guī)則,對于實現相同功能的“方法(method)”而言,對于該“方法”所進行的“聲明(decla? ration)”應當一致,據以實現相同的功能。即作品雖具有獨創(chuàng)性,但還要經過版權法其他原則如“合并”規(guī)則、“功能性”排除規(guī)則等的檢驗。因此,Java API包編寫聲明代碼的方式就是唯一的。谷歌為了實現“方法”的功能,所編寫的“聲明”代碼,應當與甲骨文公司的API的一致。基于Java語言開放的Android系統,雖然谷歌對自己基于Java語言編寫的Android操作系統又自己編寫了其他的執(zhí)行代碼,以實現達到相同的功能,有了其他不復制亦可以實現該功能的方法,但不能反向推論得出谷歌對前述“聲明代碼”的就不能進行復制的結論。
就Java語言自身而言,有自己的語言要素和語法結構。在“方法(method)”之后更高一級別為“類(class)”類。一個類通常包括保存“值(value)”的字段和對這些“值(value)”進行操作的“方法”。類是Ja? va語言中的基本結構元素。Java程序被編寫為一個或多個類。一個類中可以有多個方法,而一個包中可以有多個類。Java程序中的所有代碼都必須放在一個類中。而“聲明(declaration)”是一行包含“類”的名稱和其他定義“類”類的信息的代碼。“聲明”的這種作用也要求其盡量簡潔,并且基于實現相同的“類別”和“方法”,其表達極其有限。
在這種“聲明代碼(Declaration Code)”表達有限的情況下,二審法院認為,谷歌公司為實現相同功能,具有多種不同于甲骨文公司進行的編寫方式,排除了版權法“合并”規(guī)則的適用。當表現一定思想的表達有限時,如果仍然對表達進行保護,則難免限制公眾的思想,這些表達也被視為“思想”而不受保護[20]。該規(guī)則是版權不保護思想這一基本原則的邏輯擴展,即當對某思想的表達方式有限情況下,如果對這種有限的表達進行版權保護,則有礙思想的傳播,甚至形成了版權保護思想的事實。這是與版權法的立法目的和基本原理相悖的。該規(guī)則對表達方式的多寡并無具體的數量要求,但一般情況下方式數量自然不能多,但根本上還應當考慮對思想、功能的具體表達方式的優(yōu)劣或效率。如雖然存在其他表達方式,但這種表達方式的效率較低或者社會成本較高,應也不能以其存在其他表達方式,而據以排除“合并”原則的適用。因此,二審法院因此作為“存在其他方式”作為排除使用該規(guī)則的理由,難以令人信服。由此導致的結果將是整個軟件行業(yè)編程成本的增加,效率的降低。
此外,就軟件本身的技術特性而言,軟件編寫不同于一般作品,如文字作品的創(chuàng)作,往往需要體現一定的遣詞造句,講究一定的文學素養(yǎng)等,軟件是一連串冰冷的代碼構成,而這些代碼的最終編寫的目的是要實現一定的功能。基于此,對于軟件語言和一般語言的標準就應有所不同。在一般文學作品中所體現的字或者詞,在編程語言中,就是具體的單個代碼或者較短的詞組。但申而言之,軟件行業(yè)存在明顯的網絡效應。網絡效應的形成和最終結果如何,很大程度上會取決于整個軟件編寫的生態(tài),有賴于行業(yè)內部共通的“語言”和“語言”的效率。為實現這種效率,并考慮編程代碼要實現的功能價值,對于編程語言“字”、“詞”、“短語”的理解就應進一步擴展,甚至包括“句”,以實現軟件編寫語言利用的高效和軟件之間的互通。而且從整個Java語言體系和產品體系的角度去看,“聲明代碼”的基礎性作用,體現了更多的功能屬性,難以作為具有獨創(chuàng)性的表達。綜合而言,“聲明代碼”本身仍然屬于不受著作權保護的基本語言要素,在此基礎之上才有獨創(chuàng)性表達的探討空間,進而為軟件行業(yè)留足“公共領域”,便利軟件的編寫和互通。正是“獨創(chuàng)性”理論和“公共領域”概念工具在版權法機制內的有機配合,實現了良性版權機制的至深關切和終極目標[21]。
(二)接口“表達”功能性視角下可版權性的否定
“思想”和“表達”之間的關鍵區(qū)別很難得出,劃清界限的指導性考慮因素是保持競爭與保護之間的平衡[22]。既要考慮對創(chuàng)作者的保護,以便對其形成激勵,還要注意這種保護不能形成對社會創(chuàng)新的阻礙,進而降低社會競爭的可能。具體到涉應用程序編程接口案件,突出的問題是,如何為了實現“互操作性”,如何確定“思想”和“表達”的界限,并進而確定應用程序編程接口的是否具有可版權性。
谷歌公司主張使用Java API開發(fā)Android智能手機操作系統,其目的乃是“為了使廣大程序員采用熟悉的語言編寫程序,并有利于軟件行業(yè)的互操作性”。因該接口具有互操作性功能,屬于美國版權法第102(b)條規(guī)定的情形,排除其版權保護。美國版權法第102(b)條規(guī)定,任何情形下,都不得將對原創(chuàng)作品的版權保護延及至思想、程序、過程、系統、操作方法、概念、原理、發(fā)現,不論這些內容在作品中以何種形式闡述、說明、解釋或體現。美國國會報告強調,第102(b)節(jié)“絕不會擴大或縮小版權保護的范圍”,并且“其目的是重申……表達與構想之間的基本二分法不變。第102(b)條不會僅僅因為某種表達體現在一種操作方法中就排除了對該思想特定表達的保護。”在評估版權性時,地區(qū)法院必須找出作品的表達,然后將可保護的表達與“不可保護的思想,事實、過程和操作方法”分開。最終一審法院美國加州北區(qū)地方法院認可“聲明”和“結構、序列和組織”的“互操作性”功能性特征,并基于版權不保護思想而認定涉案接口不能獲得版權法的保護。
軟件之間的“互操作性”是軟件之間實現互聯互通及信息交流的基本保障。對于這種互操作性是不是必須限于使用接口代碼后要實現對之前軟件的互操作,還是說可以通過此“聲明代碼”進行新的創(chuàng)作,以實現對新的產品之間的“互操作”,則并無明確規(guī)定;而法院對此該“互操作性”是否是第102(b)中“功能”的理解,一定程度上決定了涉案API是否能夠得到版權保護。而本案中,聯邦上訴巡回法院基于An? droid系統不能對Java平臺反向兼容,并不認可谷歌公司關于“互操作性”功能的主張,進而認定此因素應是在對Java API版權保護后,針對谷歌公司對涉案API使用行為進行合理使用判斷的考慮因素。此推論并不能讓人信服,版權保護的對象判定是一個基于作品的本質判斷問題,應具有本體性問題,不應受外界因素的影響而發(fā)生改變。而以上述邏輯,如谷歌公司反向兼容了Java平臺,則按照上訴邏輯,應導致基于思想表達二分原則,因軟件接口因為“互操作性”功能而不受版權法保護,則明顯是由外界因素決定了作品是否具有可版權性的本體性問題。這是以事實判斷來代替了法律判斷。
對于軟件接口的功能性認定,仍然應從版權保護作品的本質規(guī)定性去尋找,這種結果也不應由于外界因素的變化而發(fā)生改變。在此需要注意的是,此處的功能性并不是作品具有的作用或效能,即不是其可能具有的美學效能或者物理功用,這是事實功能性,這種功能性與法律是否保護的功能性是不同性質的問題,僅有法律功能性才是版權法功能性原則的內容,是版權法所不保護的“技術”方案,這強調的是其狹義上的“技術”含義,即技術是指制造某一產品的系統知識,可將其等同于專利法上的“技術方案”。該案“聲明代碼”即使具有替代性,谷歌公司可以其他方式加以實現其功能,但“替代設計的可獲得性并不完全表明其不具有功能性”[23]。
本案裁決關于否定谷歌基于“互操作性”功能而不認可認定涉案API的具有的功能性觀點,對整個軟件行業(yè)創(chuàng)新造成負面影響。因為功能性原則,對于具有一定使用功能的作品,如實用藝術作品、計算機軟件等版權保護目的的實現上,是促進創(chuàng)新,降低壟斷的有效途徑。對于該問題的判斷,更要從版權法立法目的出發(fā),基于產業(yè)政策導向,做出最后的判斷。
四、鼓勵創(chuàng)新和反壟斷視角下接口可版權性的否定
如上分析,對于應用程序編程接口是否受版權保護,從版權法律角度進行分析已可以得出結論。基于應用程序編程接口在軟件之間實現互操作的重要作用,對其嘗試從更寬視野去分析,應有助于我們做出并進一步驗證是否對其進行版權保護的判斷,以實現版權法所要保護的促進科學、文學的發(fā)展與繁榮的目標實現。
(一)促進創(chuàng)新視角下可版權性的否定
軟件行業(yè)是網絡效應得以顯現的重要領域之一,軟件本身由于更多人使用,軟件用戶更易與其他用戶進行信息交流互通[24],這點在即時通訊軟件體現上更為明顯。為了實現軟件之間的協作開發(fā)和具有互操作性,軟件開發(fā)人員必須將自己的應用程序代碼連接到其他開發(fā)人員編寫的代碼,這些就是有應用程序編程接口來實現。某種意義上說,共享的應用程序編程接口是現在已建立的行業(yè)機制,可以在促進創(chuàng)新的同時保護每個開發(fā)人員的創(chuàng)造性作品。沒有共享的接口,每個設備和程序都是一個孤島,現代軟件開發(fā)根本不可能發(fā)生。而應用程序編程接口更是實現這種互通的橋梁,通過軟件接口實現的互操作性允許獨立開發(fā)人員在他人的工作基礎上進行開發(fā),節(jié)約了開發(fā)時間,并且使軟件互聯,推動實現網絡效應,真正的實現網絡互聯。可以說,互操作性是已經定義了現代技術發(fā)展的特征,并且隨著物聯網在未來幾年的發(fā)展而變的更加重要。軟件接口作為重要且高度創(chuàng)新的軟件行業(yè)的重要組成部分,是實現互操作性的關鍵,對程序接口的控制將對軟件創(chuàng)新和網絡發(fā)展的未來產生根本影響。對于軟件開發(fā)人員來說,繼續(xù)從事創(chuàng)建高度協作和可互操作的軟件系統的能力和最終結果,將一定程度上取決于應用程序編程接口在法律上如何進行界定。
軟件接口對創(chuàng)新來說是必要的④,而關于為保障軟件的互操作性及實現軟件行業(yè)的創(chuàng)新,美國軟件開發(fā)者聯盟(Developers Alliance)向美國最高法院提交了法庭之友意見,請求美國最高法院審理此案,并認為聯邦上訴巡回法院的裁決在一定程度上顛覆了以往的應用程序編程接口不受版權保護的共識,造成認知上的混亂,現寄希望于通過最高法院的審理以“提供必要的法律上的明確性”⑤。
版權法的激勵創(chuàng)新,一方面是通過給予創(chuàng)作者版權實現對創(chuàng)作者的激勵,另一方面則是通過著作權的限制制度,以便作品使用者使用作品,降低使用成本和效率,以促進更多的創(chuàng)新。給予軟件接口在軟件行業(yè)中的特殊作用,對其不予進行版權保護,這是實現版權立法保護促進創(chuàng)新作用根本目的應有之義。
(二)反壟斷視角下接口可版權性的否定
版權法的立法目的是促進科學和文化的繁榮,而關于版權法的爭議解決要服務于版權法的立法目的,對應用程序編程接口爭議的解決方案要能夠反映其促進創(chuàng)新、競爭和消費者福利的最終目標。甲骨文作為Java平臺的權利人,擁有Java語言及相關產品,雖然Java語言免費使用,但因語言而成就的產品是不是就像一般的版權作品一樣符合版權法的基本保護門檻就要受到保護,并沒有簡單的答案。尤其是涉及到軟件這樣一個本身具有一定技術功能的作品,情況更顯復雜。加之基于Java語言的最大市場占有量,決定了與其相關的Java產品具有軟件市場的絕對影響力,就應用程序編程接口而言,如聯邦上訴法院的裁決,即便是像谷歌這樣的大公司也必須支付巨額的軟件接口許可使用費,更遑論一般的軟件企業(yè),也會因使用帶來較大的成本。即使這種使用行為有可能構成合理使用,但囿于具體使用情形的不同,法律判斷的差異,是否能夠構成合理使用具有不確定性,這必然會影響許多軟件企業(yè)未來的發(fā)展,甚至一些本有可能對現有軟件企業(yè)造成挑戰(zhàn)的初創(chuàng)企業(yè)也會因為聯邦巡回上訴法院對軟件接口的過度保護而造成壁壘,喪失挑戰(zhàn)的機會和成功的可能。
相對于一般作品的版權保護,軟件接口的版權保護尤其具有反競爭性,基于主流平臺的巨大的網絡效應,這種保護往往會阻止新進入者的挑戰(zhàn),鞏固基于軟件的壟斷,減緩軟件市場的創(chuàng)新和競爭⑥。因此,基于自由競爭的鼓勵和壟斷的限制,對應用程序編程接口不進行版權保護也就成了當然之義。
結語
對于應用程序編程接口能否得到版權保護,從“甲骨文訴谷歌版權”案引發(fā)的觀點撕裂并不會因為聯邦上訴巡回法院的裁決結果而戛然而止。從單純版權法律角度來看,聯邦上訴巡回法院的裁決,已經打開了對軟件接口進行版權保護的潘多拉盒子,這點從類似爭議的出現及對以往行業(yè)認知顛覆后的爭執(zhí)不休,都可以佐證;而從保護創(chuàng)新,增添市場活力的角度,對應用程序編程接口的版權保護更是與此目標相背離;基于接口的互操作性功能及對其在軟件編寫中的基礎性作用,對接口的版權保護更易使相關“權利人”形成一定的市場壟斷地位,進而損害競爭,阻礙創(chuàng)新,這點也是不符合版權法的立法目的。
雖然美國最高法院已決定審理“甲骨文訴谷歌”案,但在該案的二審裁決并未被推翻之前,該裁決依然要得到執(zhí)行,此時,根據該裁決而進行必要的行業(yè)調整也是客觀需要;如果二審法院的裁決并沒有得到美國最高法院的改變,則可以預見關于應用接口的版權訴訟會有一個上升的態(tài)勢,隨著行業(yè)規(guī)則調整的形成,會趨于新的動態(tài)平衡。初期,應用程序編寫人員的應用開發(fā)成本會因為軟件接口版權保護而有所提升,其具體編寫行為也會涉及更多法律判斷的不確定性,例如是否合理使用。但長期來看,某種新的或者舊的編程語言“語法體系”帶來的徹底開放的軟件接口的出現,進而形成新的市場格局及規(guī)則變化,也并非沒有可能。對軟件開發(fā)企業(yè)而言,短期內從微觀層面看,基于司法裁決結果,進行法律風險的規(guī)避,做好軟件開發(fā)及應用的合法合規(guī),尤其避免版權侵權風險是首要目標;宏觀層面,要基于該風險進行開源軟件的選擇,以規(guī)避侵權風險;長期觀之,軟件開發(fā)底層能力,包括編程語言及其他構成要素的設計開發(fā)能力,才是軟件行業(yè)未來真正的核心競爭力,這于我國軟件行業(yè)亦是如此,甚至是當務之急,更是未來方向。
參考文獻:
[1] Google v. Oracle: Silicon Valley Braces for "Lawsuit of the Decade" as Google Petitions for Cert to decide API Copy? rightability[OL]. [2020-05-18]. https://jolt. law. harvard. edu/digest/google-v-oracle-silicon-valley-braces-forlawsuit-of-the-decade-as-google-petitions-for-cert-todecide-api-copyrightability.
[2]谷歌vs甲骨文史詩級版權訴訟案!甲骨文抄襲黑歷史被翻出,10年API之爭下周開審-電子頭條-EEWORLD電子工程世界[OL]. [2020-05-18]. http://news.eeworld.com. cn/mp/leiphone/a85200.jspx.
[3] 2019年全球及中國軟件行業(yè)市場現狀與競爭格局分析[OL]. [2020-05-18]. http://tradeinservices.mofcom.gov.cn/ article/lingyu/rjckou/201908/88392.html.
[4]§3:72.The 1976 Copyright Act, Patry on Copyright.
[5] Menell P S. Rise of the API Copyright Dead: An Updated Epitaph for Copyright Protection of Network and Function? al Features of Computer Software[J]. Harv. JL & Tech., 2017, 31:305-473.
[6] Apple Computer, Inc. v. Franklin Computer Corp., 714 F.2d 1240, 1253, 1983 U.S. App. LEXIS 24388, *41, 219 U.S.P.Q. (BNA) 113, 124, Copy. L. Rep. (CCH) P25,565, 70 A.L.R. Fed. 153.
[7] Whelan Assocs. v. Jaslow Dental Lab., Inc., 797 F.2d 1222.
[8] Computer Associates International, Inc. v. Altai, Inc., 982 F.2d 693.
[9] Lotus Dev. Corp. v. Borland Intl, Inc., 516 U.S. 233.
[10] Sega Enterprises Ltd. v. Accolade, Inc., 977 F.2d 1510.
[11] Samuelson P. Functionality and Expression in Computer Programs: Refining the Tests for Software Copyright In? fringement[J]. Berkeley Tech. LJ, 2016:1215-1300.
[12] Synopsys, Inc. v. Atoptech, Inc., 2013 U.S. Dist. LEXIS 153089, 2013 Copy. L. Rep. (CCH) P30,507, 2013 WL 5770542.
[13] Cisco Sys. v. Arista Networks, Inc., 2015 U.S. Dist. LEX? IS 136444.
[14] Band J. The Global API Copyright Conflict[J]. Harvard Journal of Law & Technology (Harvard JOLT), 2017(31): 615-637.
[15]How Will Java Technology Change My Life? (The Java? Tutorials > Getting Started > The Java Technology Phe? nomenon)[OL]. [2020-05-18]. https://docs.oracle.com/ja? vase/tutorial/getStarted/intro/changemylife.html.
[16]王坤.論作品的獨創(chuàng)性——以對作品概念的科學建構為分析起點[J].知識產權,2014(4):15-22.
[17] Oracle Am., Inc. v. Google Inc., 872 F. Supp. 2d 974.
[18] 37 CFR 202.1(a).
[19] Oracle Am., Inc. v. Google, Inc., 750 F.3d 1339.
[20]王遷.知識產權法[M].第6版.北京:中國人民大學出版社, 2019:54.
[21]黃匯.版權法“獨創(chuàng)性”理論的困境與出路[J].電子知識產權,2009(9):84-87.
[22]Herbert Rosenthal Jewelry Corp. v. Kalpakian, 446 F.2d 738.
[23]梁志文.論版權法上的功能性原則[J].法學,2019(7): 150-162.
[24]李曉華.網絡效應、反盜版及其對我國軟件產業(yè)發(fā)展的啟示[J].中國社會科學院研究生院學報,2007(1): 46-51.
The Negation of "Copyrightability" of Application Programming Interfaces
——Taking Oracle v. Google Application Programming Interface Copyright Controversy as an Example
JIA Lei
(Institute of Intellectual Property, Zhongnan University of Economics and Law, Wuhan 430073,China; Insti? tute of Intellectual Property, Henan University of Economics and Law, Zhengzhou 450046,China)
Abstract: Application programming interfaces (API) are critical to the interoperability of software and operating sys? tems, which play an important role in the software industry. The question of whether an interface is copyrightable has gone through a transition from dispute to consensus and then to the overthrow of consensus in the United States. The copyrightability of the API involves fundamental issues in the scope of software protection. Whether to apply the "merg? er" rules of copyright law or consider its own "interoperability" functions, and consider the needs of innovation and ef? fective competition in the software industry, the copyrightability of API should be excluded.
Key words: interface; merge; interoperability; functionality; copyrightablity
基金項目:高等學校學科創(chuàng)新引智計劃(111計劃)資助(B18058);中南財經政法大學一流學科建設高校建設方案拔尖創(chuàng)新人才培養(yǎng)項目資助
作者簡介:賈磊(1979—),男,河南周口人,中南財經政法大學知識產權學院博士研究生,河南財經政法大學知識產權學院講師,研究方向:知識產權法。
①對于應用程序編程接口,審理法院指出,具體名稱并不重要,關鍵是具體的內容是什么,本案中應用程序編程接口指的就是相應程序的源代碼。程序“接口”并不同于日常生活中不同物品相互連接所需的物理接口,其往往表現為具體的應用程序編程代碼,其功能的實現一般是利用一定編程語言,并根據其語法,通過具體的函數、變量等通過程序編寫來實現。應用程序編程接口之爭,最直觀的落腳點還是應用程序代碼表達的權利之爭。See Oracle Am., Inc. v. Google Inc., 750 F.3d 1339。
②互操作性指(Interoperability)是指產品或系統的接口能夠被其他產品或系統理解,并可以無限制地與之共同發(fā)揮作用。互操作性實現了應用之間、應用與操作系統之間互聯互通,使其發(fā)揮各自功能并促進網絡效應的形成。See http://interop‐erability-definition.info/en/。
③TIOBE是一家專門從事評估和跟蹤軟件質量的公司,發(fā)布TIOBE編程社區(qū)索引以反映編程語言受歡迎程度的指標。該索引每月更新一次。2019年11月Java編程語言仍位列第一。See TIOBE Index | TIOBE - The Software Quality Company[OL]. https://www.tiobe.com/tiobe-index/,最后訪問時間:2019年11月19日。
④基于軟件接口對軟件創(chuàng)新的重要作用,為支持谷歌公司向美國最高法院提交的審理該案請求,78名計算機領域的科學家提出了法庭之友意見。See Motion For Leave To File Brief Of 78 amici Curiae And Brief Of 78 Amici Curiae Computer Scien‐tists In Support Of Petitioner。
⑤美國軟件開發(fā)者聯盟為支持谷歌公司的再審申請,向美國最高法院提出了法庭之友意見,以表達該案關于軟件接口的問題對軟件版權保護的競爭意義。See Amicus Curiae Brief Of Developers alliance In Support Of Petitioner。
⑥美國反壟斷協會(“AAI”)是一個獨立的非營利組織,致力于促進保護消費者、企業(yè)和社會的競爭。通過研究、教育和宣傳競爭的好處以及將反壟斷執(zhí)法作為國家和國際競爭政策的重要組成部分來為公眾服務。該協會向美國最高法院提出法庭之友意見,以請求最高法院審理甲骨文訴谷歌版權案。See Brief For The American Antitrust Institute As Amicus Curiae In Support Of Petitioner。