登入  |  English
感謝您對「自由軟體鑄造場」的支持與愛護,十多年來「自由軟體鑄造場」受中央研究院支持,並在資訊科學研究所以及資訊科技創新研究中心執行,現已完成階段性的任務。 原網站預計持續維運至 2021年底,網站內容基本上不會再更動。本網站由 Denny Huang 備份封存。
也紀念我們永遠的朋友 李士傑先生(Shih-Chieh Ilya Li)。
討論區
關於Apache協議請教 (1 位瀏覽者) (1) Guest
Go to bottom Favoured: 0
TOPIC: 關於Apache協議請教
#458
關於Apache協議請教 2010/04/06 09:20  (9 Years, 7 Months ago) Karma: 0  
您好!

我們公司是一家北京的公司,目前正在開發一款應用軟體,軟體是以 apache 2.0授權的open source 為基礎開發的。就Apache協定,我想就我們目前的理解向各位做一些求證和請教。

我們目前有以下理解:

1. 對於Apache協定,當我們要發佈協議所說的“Derivative Works”時,根據協定第4條第2款——如果我們進行了任何修改,則我們既可以對所作出的修改、也可以對“Derivative Works”(作為整體)添加版權聲明並提出額外的或者不同的(additional or different)許可條件;但是,我們同時需要做到的是我們對“Works”的使用、複製和發佈不違反Apache協定。

換做直白一些的表述是否就是:只要我們就所獲得的“Works”的部分向許可人遵守Apache協議的規定,對於我們衍生創作的“Derivative Works”,我們可以對所修改部分提出與Apache不同的許可條件(比如限定地域、收費等),同時我們也可以對“Derivative Works”整體提出與Apache不同的許可條件(比如限定地域、收費等)。

不知上述的表述是否有誤?

2. 該協議第4條redistribution第1段a規定,You must give any other recipients of the Work or Derivative Works a copy of this License,這裏僅僅指的只需要向recipients提供一份Apache協定的副本,而不是給予授權(Grants)?

不知上述的表述是否有誤?

此外:

1. 第4條第1款第4項的“NOTICE”所指是什麼不太容易理解,不知道和我上面問道的問題是否有關?

2. 如果我們擬通過上述方式對“Derivative Works”提出不同的許可條件,我們還需要注意些什麼?

希望不吝賜教!
!echosky (User)
Fresh Boarder
Posts: 3
graphgraph
User Offline Click here to see the profile of this user
Logged Logged  
 
The administrator has disabled public write access.  
#467
Re:關於Apache協議請教 2010/04/11 23:18  (9 Years, 7 Months ago) Karma: 10  
Hi echosky,

以下簡單回覆您的問題:

1、修改Apache2.0授權程式後,能不能更改其程式碼的授權狀態?

可以、Apache2.0是類BSD類的授權條款,這一類的授權條款容許使用者改變程式碼之後的授權狀態,但、不能與原先的授權規定違逆。

舉例來說,

原來的Apache2.0規定了A,B,C,D四項使用者要遵守的規定(例如程式再修改要保留原Copyright Holder的Copyright Notice等…),

您將該程式修改過後,可以用自己的授權方式/另一份授權條款來釋出這個改作後的軟體專案,

但前提是,原Apache2.0所規定的A,B,C,D四項使用規定不得消去。

----------

原Apache2.0授權程式:授權條款A,B,C,D四項規定→改作後的echosky1.0授權程式:原A,B,C,D四項授權規定保留,可再加上E,F,G,H,I等修改者自訂,且與A,B,C,D不相違逆的新授權規定。

----------

2、Apache2.0第4條關於redistribution:You must give any other recipients of the Work or Derivative Works a copy of this License,這段文字是什麼意思?

這段文字是說,原來Apache2.0授權的程式,如果接著您也願意以Apache2.0的授權方式來對外散布的話,不論這個程式有沒有被修改,您都可以依照Apache2.0第4條第1項的4款規定來做。

其實、這段文字之所以會讓人誤會,是因為「You must give any other recipients of the Work or Derivative Works a copy of this License」這句話,就文義上只寫了,要將授權條款的本文傳遞給收受程式的後手,卻沒有明白解釋授權關係,其實、將程式碼傳遞給後手,並且還將Apache2.0的授權本文一併傳遞給後手,這個動作就表示,該程式碼就是以Apache2.0的授權方式傳遞給後手的。

那麼、若是修改了原以Apache2.0授權的程式,但想將自己修改的部份改以其他授權方式釋出,或是將整個修改作品改用別的授權方式釋出,要參照的是第4條第2項的說明:

You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License.

上面這段說的就是修改了Apache2.0的程式,後續版本卻不欲全以Apache2.0授權釋出的狀況,第4條第2項說明的方式有二種:

(1)原作品的部份仍以Apache2.0授權釋出,自行修改的部份改以自己律定的授權條款釋出;此時原作品的部份,仍需夾附一份Apache2.0的授權條款以供參照。

(2)將全部的作品視為一新的衍生作品,如上例:改作後的echosky1.0授權程式:原A,B,C,D四項授權規定保留,可再加上E,F,G,H,I等修改者自訂,且與A,B,C,D不相違逆的新授權規定。

3、Apache2.0第4條第1項第4款的“NOTICE“指的是什麼意思?

這裡的“NOTICE“一般來說,指的就是夾附在Apache2.0專案裡的「授權聲明文件/授權說明文件」,通常為一純文字檔,裡面有關於整個專案個別檔案授權狀態的說明。

4、修改了Apache2.0的程式,嗣後要以自行律定的授權方式將程式釋出時,最重要的有:

(1)改以自行命名的新授權方式授權,但、新的授權條款,需包含原Apache2.0的各項授權規定,且新的授權規定不能與原先的授權規定違逆。

(2)注意專利授權及商標權的授權問題,Apache2.0授權的軟體,會一併將原作者自行寫入程式的軟體專利(Software Patent)授權予您,但非軟體專利並不在此限;而以Apache2.0授權的軟體,並不會將商標權(Trademark)授權給後手,如果該Apache2.0程式裡內含前手的商標圖示(Logo),您在後續商業散布您的修改作品時,必需手動將此商標(Trademark)移除,或是另行接洽其商標權利人,洽談商標權的授權費用。

約略是如此、有任何後續問題歡迎接續討論。

敬祝 順心健康

20100411 2315 自由軟體鑄造場 林誠夏
lucien (Admin)
Moderator
Posts: 157
graph
User Offline Click here to see the profile of this user
Logged Logged  
 
The administrator has disabled public write access.  
#468
Re:關於Apache協議請教 2010/04/12 16:54  (9 Years, 7 Months ago) Karma: 0  
非常感謝,受益匪淺!

希望能進一步請教和確定一下:您回復文字中舉例提到的Apache2.0所規定的A,B,C,D四項使用者需要遵守的規定是特指Apache2.0第4條第1項所列舉的4款規定?而不是泛指原授權人所要求的授權條件(包括Apache2.0第2條中所規定的“ a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license ”等)?

希望得到您的回復。

順祝安康!
!echosky (User)
Fresh Boarder
Posts: 3
graphgraph
User Offline Click here to see the profile of this user
Logged Logged  
 
Last Edit: 2010/04/12 17:26 By !echosky.
 
The administrator has disabled public write access.  
#470
Re:關於Apache協議請教 2010/04/13 22:47  (9 Years, 7 Months ago) Karma: 10  
Hi echosky,

這個問題概念上是簡單,真要解釋它的範圍,還是會有點複雜。

先說Condition的定義:

例子中提到的A,B,C,D四項使用者需要遵守的規定,是泛指原授權人所要求的授權條件(Condition)。

所謂的Condition,指的就是就算使用者嗣後修改了這個Apache2.0的軟體,再以新的授權方式散布這個衍生作品時,仍然不能被改變的「義務性規定(Obligated Condition)」。

亦即以下Apache2.0第4條第2項紅字標示的文字:

You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License.

然而、這些「非得要遵守的授權條件」指的並不會是Apache2.0第2條中所規定的“ a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license ”等;因為Apache2.0第2條指的是「權利」,原Apache2.0程式的著作權利人,透過Apache2.0這個授權條款,所授權給程式使用者的「權利」,這些「權利」、在您改寫Apache2.0程式產生衍生作品之後,可以不用非得依Apache2.0的方式再授權給使用衍生作品的人(當然、若是您願意依Apache2.0的授權方式授權給使用衍生作品之人亦可)。

基本上Apache2.0指的Condition,會是第4條第1項第1-4款的規定,然而、也並不盡然,因為還有其他的義務性規定散見其他條文,像是:

軟體專利報復條款
If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed.

商標權明示未散布條款
This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file.

原Apache2.0程式著作權利人的免責聲明
Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License.

凡以上的種種,都可以算是例子中提到的A,B,C,D四項使用者需要遵守的授權條件(Condition)。

其實一般運用上,Apache2.0第4條第2項後段的更改授權方式是比較少見的:

or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License.

這段指的是您改寫了Apache2.0的程式並加寫了自己的部份,然後將整個程式視為一個整體,以您自訂的新授權條款來授權,這個新的授權方式也可以是不提供後手程式原始碼的商業授權條款,然而、這個新的授權條款亦不能違逆Apache2.0原本預設的Condition,所以一般來說這樣的新授權條款,會由專業的法律從業人員來重新撰寫,因為Apache2.0並沒有提供簡易的範本供您參考。

一般對於Apache2.0授權程式較常見的改寫方式,是Apache2.0第4條第2項前段的方式:

You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications,

這段指的是您改寫了Apache2.0的程式並加寫了自己的部份,然後將程式分為二部份分開授權,原來Apache2.0授權的部份延續使用Apache2.0來授權,那麼這部份的程式碼可以完全延用Apache2.0第4條第1項第1-4款的方式來授權,簡單來說就是維持原樣,並提供授權條款全文予後手,並將原Apache2.0授權的檔案標示出來;而自行加寫的部份,則以自己想要的授權方式來授權,只要這個授權方式不會與Apache2.0授權的程式碼產生授權相容方面的問題就好了(例如、不可以GPL2.0來授權自行加寫的部份)。

我想這部份我並沒有解釋的很清楚,不過約略的授權關係是如此,若還有進一步的疑問,歡迎接續討論。

敬祝 順心健康

20100413 2245 Lucien C.H. Lin
lucien (Admin)
Moderator
Posts: 157
graph
User Offline Click here to see the profile of this user
Logged Logged  
 
The administrator has disabled public write access.  
#471
Re:關於Apache協議請教 2010/04/14 13:21  (9 Years, 7 Months ago) Karma: 0  
Hi Lucien,

谢谢您的回答,我基本清楚了。

顺祝安康!
!echosky (User)
Fresh Boarder
Posts: 3
graphgraph
User Offline Click here to see the profile of this user
Logged Logged  
 
The administrator has disabled public write access.  
Go to top