Blame view

src/doc/legal.dox 6.92 KB
8dcb6dfcb   Yannick Estève   first commit
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
  // doc/legal.dox
  
  // Copyright 2012  Johns Hopkins University (Author: Daniel Povey)
  
  // See ../../COPYING for clarification regarding multiple authors
  //
  // Licensed under the Apache License, Version 2.0 (the "License");
  // you may not use this file except in compliance with the License.
  // You may obtain a copy of the License at
  
  //  http://www.apache.org/licenses/LICENSE-2.0
  
  // THIS CODE IS PROVIDED *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  // KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
  // WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
  // MERCHANTABLITY OR NON-INFRINGEMENT.
  // See the Apache 2 License for the specific language governing permissions and
  // limitations under the License.
  
  /**
   \page legal  Legal stuff
  
   This is not a legal document; see the COPYING file in the distribution
   for that.  In this page we explain what the legal stuff means (as we
   understand it).
  
   The code and other content (e.g. scripts, documentation) in
   Kaldi is released under the Apache license, version 2.0.  The Apache
   license is a popular "BSD-like" license.  This means you can use
   Kaldi for free and redistribute it, even for commercial purposes,
   although you can't take off the license headers (and under some
   circumstances you may have to distribute a license document).  Apache is
   not a ``viral'' license like the GPL, which forces you to release
   your modifications to the source code.  Also note that this project has no
   connection to the Apache Foundation, other than that we use the same
   license terms.
  
   From a legal and copyright point of view, none of the participants in the Kaldi
   project have a special status.  It is a community project, which means
   decisions are not made by any one person, and there is no "legal owner" of the
   Kaldi project.  In a sense this doesn't matter, because the whole project is
   "forkable": that is, if you don't agree with the way the project is being run,
   you can copy the code and create your own Kaldi community, giving it a
   different name if you wish.  If you want you can even claim that you are the
   true carriers of the Kaldi torch, and that the original authors have somehow
   deviated from the true path.  The name itself is not copyrighted by us.
  
   Some fraction of open source projects operate through "copyright assignment".
   That means that when you give your code to the project you assign your
   ownership of the copyright to a third party, who then releases it to the world.
   Kaldi is not set up that way.  If you, Joe Schmo, want to add something to
   Kaldi, the files you contribute are licensed under the Apache terms directly
   from you to the user of Kaldi.  The files that you write will have an Apache
   header on them that says something like:
  \verbatim
    // Copyright 2012  Joe M. Schmo
    //
  // See ../../COPYING for clarification regarding multiple authors
  //
    // Licensed under the Apache License, Version 2.0 (the "License");
    // etc.
  \endverbatim
   However, if Joe Schmo works for Acme Corporation and releases code
   as part of his work, then (depending what country Joe lives in) the header
   would probably look something like this:
  \verbatim
    // Copyright 2012  Acme Corporation
    //
  // See ../../COPYING for clarification regarding multiple authors
  //
    // Licensed under the Apache License, Version 2.0 (the "License");
    // etc.
  \endverbatim
   This would be the case under some circumstances even if he did it
   in his spare time.  For example: the terms of Joe's employment with
   Acme Corporation might dictate that anything he does while working for them
   is owned by them from a copyright point of view ("work for hire"), and
   Acme Corporation might have agreed that he can contribute to the project, but
   that he should put their name as the owner of the copyright.
  
   If Joe Schmo jointly worked with Jane Doe on this, but did so
   while he was working with Acme Corporation, then the header would
   look something like this:
  \verbatim
    // Copyright 2012  Acme Corporation  Jane Doe
    //
  // See ../../COPYING for clarification regarding multiple authors
  //
    // Licensed under the Apache License, Version 2.0 (the "License");
    // etc.
  \endverbatim
   In this case Acme Corporation and Jane Doe (and we're assuming that they
   agreed to this), jointly own the copyright on the code that they wrote.
   The order of names has no legal meaning.
   Joint ownership means that if either party chooses (and they don't have to
   both agree), they can release the code themselves under a different
   license.  However, for Apache-licensed projects, there is
   typically no point in doing this, since Apache already
   allows for commercial use.
  
   There are other cases that work like this: Joe Schmo (working for Acme
   Corporation) creates a file, and releases it under Apache.  Later Jane Doe
   finds a bug and fixes it, or adds new functionality to that file.  Jane Doe
   can't claim "joint ownership" of the copyright on the code, not without getting
   an agreement from Acme Corporation.  This is obvious from common sense, because
   that would allow her to re-release the entire project under a different and
   possibly incompatible license, simply by making a trivial change to each file.
   The way this is normally handled is, Jane Doe
   should add a new Apache header at the top of the file, above the one
   mentioning Acme Corporation, and she should say something to the
   effect that the work is  derived from the original file from Acme
   Corporation, and the whole modified file is being released under Apache.
   We haven't done it this way, because the project is very
   collaborative, and if we did it like this we would have extremely long copyright
   headers.  Instead we use the convention that if Jane makes a change,
   she simply adds her name to the list of authors in the copyright
   header.  We are treating this as
   a kind of shorthand for the whole multiple-header thing (this is
   explained in the COPYING file).  The way you can disambiguate
   between joint copyright ownership and derivative work, is to
   go back in the version history in Git, and see what the original
   release contained.  We guess that most people won't care about
   this distinction, which is why we have not bothered to disambiguate it.
   For shell and perl scripts and other non-C++ content
   (e.g. README files, Makefiles) we have not always been very
   careful to ensure the Apache header is there.  Our intention
   is that everything is being released under Apache.
  
   Note that the use of Kaldi does not protect you against patent claims by any
   third parties.  It doesn't even protect you from patent lawsuits by
   contributors to Kaldi code, as long as the part they are suing you about was
   not contributed by them.  Patent law is completely separate from copyright law.
  
   Also, some of the example scripts download tools from the Web that may have
   a different license from Kaldi itself.  You may want to check the licenses
   on those tools as they aren't always the same as Kaldi (although we try to
   use only tools that have similarly unrestrictive licenses).
  
  */