]> git.donarmstrong.com Git - debian/debian-policy.git/blob - copyright-format/copyright-format.xml
e854c2a1464c842bcbb3262847607b5697d02503
[debian/debian-policy.git] / copyright-format / copyright-format.xml
1 <?xml version="1.0" encoding="utf-8"?>
2 <?xml-stylesheet type="text/xsl"
3         href="http://docbook.sourceforge.net/release/xsl/current/html/docbook.xsl"?>
4
5 <!-- Process this file with an XSLT processor, e.g. xsltproc:    -->
6 <!-- `xsltproc \
7       -''-nonet \
8       1.0.xml'  -->
9
10 <!DOCTYPE article PUBLIC '-//OASIS//DTD DocBook XML V4.5//EN'
11                          'http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd'>
12
13 <article class="specification" status="draft" lang="en" id="copyright-format">
14   <articleinfo>
15     <title>
16       Machine-readable <filename>debian/copyright</filename> file.
17     </title>
18     <subtitle>Version 1.0</subtitle>
19     <legalnotice>
20       <para>
21         Copying and distribution of this file, with or without modification, are
22         permitted in any medium without royalty provided the copyright notice
23         and this notice are preserved.
24       </para>
25     </legalnotice>
26     <abstract>
27       <para>
28         This specification was drafted as <ulink
29         url="http://dep.debian.net/deps/dep5/">DEP-5</ulink>, to establish a
30         standard, machine-readable format for
31         <filename>debian/copyright</filename> files within packages and
32         facilitate automated checking and reporting of licenses for packages and
33         sets of packages.
34       </para>
35     </abstract>
36   </articleinfo>
37
38   <section id="introduction">
39     <title>Introduction</title>
40     <para>
41       This is a proposal to make <filename>debian/copyright</filename>
42       machine-interpretable.  This file is one of the most important files in
43       Debian packaging, yet there is currently no standard format defined for it
44       and its contents vary tremendously across packages, making it difficult to
45       automatically extract licensing information.
46     </para>
47     <para>
48       This is not a proposal to change the policy in the short term.  In
49       particular, nothing in this proposal supersedes or modifies any of the
50       requirements specified in Debian Policy regarding the appropriate detail
51       or granularity to use when documenting copyright and license status in
52       <filename>debian/copyright</filename>.
53     </para>
54   </section>
55
56   <section id="rationale">
57     <title>Rationale</title>
58     <para>
59       The diversity of free software licenses means that Debian needs to care
60       not only about the freeness of a given work, but also its license's
61       compatibility with the other parts of Debian it uses.
62     </para>
63     <para>
64       The arrival of the GPL version 3, its incompatibility with version 2, and
65       our inability to spot the software where the incompatibility might be
66       problematic is one prominent occurrence of this limitation.
67     </para>
68     <para>
69       There are earlier precedents, also. One is the GPL/OpenSSL
70       incompatibility.  Apart from grepping
71       <filename>debian/copyright</filename>, which is prone to numerous false
72       positives (packaging under the GPL but software under another license) or
73       negatives (GPL software but with an <quote>OpenSSL special
74       exception</quote> dual licensing form), there is no reliable way to know
75       which software in Debian might be problematic.
76     </para>
77     <para>
78       And there is more to come.  There are issues with shipping GPLv2-only
79       software with a CDDL operating system such as Nexenta. The GPL version 3
80       solves this issue, but not all GPL software can switch to it and we have
81       no way to know how much of Debian should be stripped from such a system.
82     </para>
83     <para>
84       A user might want to have a way to avoid software with certain licenses
85       they have a problem with, even if the licenses are DFSG-free. For example,
86       the Affero GPL.
87     </para>
88   </section>
89
90   <section id="acknowledgements">
91     <title>Acknowledgements</title>
92     <para>
93       Many people have worked on this specification over the years.  The
94       following alphabetical list is incomplete, please suggest missing people:
95       Russ Allbery,
96       Ben Finney,
97       Sam Hocevar,
98       Steve Langasek,
99       Charles Plessy,
100       Noah Slater,
101       Jonas Smedegaard,
102       Lars Wirzenius.
103     </para>
104   </section>
105
106   <section id="file-syntax">
107     <title>File syntax</title>
108     <para>
109       The <filename>debian/copyright</filename> file must be
110       machine-interpretable, yet human-readable, while communicating all
111       mandated upstream information, copyright notices and licensing details.
112     </para>
113     <para>
114       The syntax of the file is the same as for other Debian control files, as
115       specified in the Debian Policy Manual.  See its <ulink
116       url="http://www.debian.org/doc/debian-policy/ch-controlfields#s-controlsyntax">section
117       5.1</ulink> for details. Extra fields can be added to any paragraph.  No
118       prefixing is necessary or desired, but please avoid names similar to
119       standard ones so that mistakes are easier to catch.  Future versions of
120       the <filename>debian/copyright</filename> specification will attempt to
121       avoid conflicting specifications for widely used extra fields.
122     </para>
123     <para>
124       There are four kinds values for fields.  Each field specifies which kind
125       is allowed.
126     </para>
127
128     <section id="single-line">
129       <title>Single-line values</title>
130       <para>
131         A single-line value means that the whole value of a field must fit on a
132         single line.  For example, the <varname>Format</varname> field has a
133         single line value specifying the version of the machine-readable format
134         that is used.
135       </para>
136     </section>
137
138     <section id="white-space-lists">
139       <title>White space separated lists</title>
140       <para>
141         A white space separated list means that the field value may be on one
142         line or many, but values in the list are separated by one or more white
143         space characters (including space, TAB, and newline).  For example, the
144         <varname>Files</varname> field has a list of filename patterns.
145       </para>
146     </section>
147
148     <section id="line-based-lists">
149       <title>Line based lists</title>
150       <para>
151         Another kind of list value has one value per line. For example,
152         <varname>Copyright</varname> can list many copyright statements, one per
153         line.
154       </para>
155     </section>
156
157     <section id="formatted-text">
158       <title>Text formatted like package long descriptions</title>
159       <para>
160         Formatted text fields use the same rules as the long description in a
161         package's <varname>Description</varname> field, possibly also using the
162         first line  as a synopsis, like <varname>Description</varname> uses it
163         for the short description. See Debian Policy's section 5.6.13, <ulink
164         url="http://www.debian.org/doc/debian-policy/ch-controlfields#s-f-Description"><quote>Description</quote></ulink>,
165         for details.  For example, <varname>Disclaimer</varname> has no special
166         first line, whereas <varname>License</varname> does.
167       </para>
168     </section>
169   </section>
170
171   <section id="paragraphs">
172     <title>Paragraphs</title>
173     <para>
174       There are three kinds of paragraphs: the first one is called the
175       <link linkend="header-paragraph">header paragraph</link>.  Every other
176       paragraph is either a <link linkend="files-paragraph">Files</link>
177       paragraph or a <link linkend="stand-alone-license-paragraph">stand-alone
178       license</link> paragraph.  This is similar to source and binary package
179       paragraphs in <filename>debian/control</filename> files.
180     </para>
181
182     <section id="header-paragraph">
183       <title>Header paragraph (Once)</title>
184       <section id="format-header-field">
185         <title><varname>Format</varname></title>
186         <para>
187           Required single line: URI of the format specification, such as:
188           <literal>http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/</literal>
189         </para>
190       </section>
191
192       <section id="upstream-name-header-field">
193         <title><varname>Upstream-Name</varname></title>
194         <para>
195           Optional single line: the name upstream uses for the software
196         </para>
197       </section>
198
199       <section id="upstream-contact-header-field">
200         <title><varname>Upstream-Contact</varname></title>
201         <para>
202           Optional line based list: the preferred address(es) to reach the
203           upstream project.  May be free-form text, but by convention  will
204           usually be written as a list of RFC5322 addresses or URIs.
205         </para>
206       </section>
207
208       <section id="source-header-field">
209         <title><varname>Source</varname></title>
210         <para>
211           Optional formatted text, no synopsis: an explanation from where the
212           upstream source came from. Typically this would be a URL, but it might
213           be a free-form explanation.  The Debian Policy section <ulink
214           url="http://www.debian.org/doc/debian-policy/ch-docs#s-copyrightfile">12.5</ulink>
215           requires this information unless there are no upstream sources, which
216           is mainly the case for native Debian packages. If the upstream source
217           has been modified to remove non-free parts, that should be explained
218           in this field.
219         </para>
220       </section>
221
222       <section id="disclaimer-header-field">
223         <title><varname>Disclaimer</varname></title>
224         <para>
225           Optional formatted text, no synopsis: this field can be used in the
226           case of non-free and contrib packages (see <ulink
227           url="http://www.debian.org/doc/debian-policy/ch-docs#s-copyrightfile">12.5</ulink>)
228         </para>
229       </section>
230
231       <section id="comment-header-field">
232         <title><varname>Comment</varname></title>
233         <para>
234           Optional formatted text, no synopsis: this field can provide
235           additional information.  For example, it might quote an e-mail from
236           upstream justifying why the license is acceptable to the main archive,
237           or an explanation of how this version of the package has been forked
238           from a version known to be DFSG-free, even though the current upstream
239           version is not.
240         </para>
241       </section>
242
243       <section id="license-header-field">
244         <title><varname>License</varname></title>
245         <para>
246           Optional formatted text, with synopsis: in the header paragraph
247           (no <varname>Files</varname> specification), this field gives the
248           license information for the package as a whole, which may be different
249           or simplified from a combination of all the per-file license
250           information. <varname>License</varname> below in the <link
251           linkend="files-paragraph">Files paragraph</link> section.
252         </para>
253       </section>
254
255       <section id="copyright-header-field">
256         <title><varname>Copyright</varname></title>
257         <para>
258           Optional line based list: in the header paragraph (no
259           <varname>Files</varname> specification), this field gives the
260           copyright information for the package as a whole, which may be
261           different or simplified from a combination of all the per-file
262           copyright information.  See also <varname>Copyright</varname> below
263           in the <link linkend="files-paragraph">Files paragraph</link>
264           section.
265         </para>
266         <para>
267           The <varname>Copyright</varname> and <varname>License</varname> fields
268           in the <emphasis>header paragraph</emphasis> may complement but do not
269           replace the <emphasis>files paragraphs</emphasis>.  They can be used
270           to summarise the contributions and redistribution terms for the whole
271           package, for instance when a work combines a permissive and a copyleft
272           license, or to document a <emphasis>compilation copyright</emphasis>
273           and license.  It is possible to use only <varname>License</varname> in
274           the header paragraph, but <varname>Copyright</varname> alone makes no
275           sense.
276         </para>
277       </section>
278
279       <section id="example-header-paragraph">
280         <title>Example header paragraph</title>
281 <programlisting>Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
282 Upstream-Name: SOFTware
283 Upstream-Contact: John Doe &lt;john.doe@example.com&gt;
284 Source: http://www.example.com/software/project</programlisting>
285       </section>
286     </section>
287
288     <section id="files-paragraph">
289       <title>Files paragraph (Repeatable)</title>
290       <para>
291         The declaration of copyright and license for files is done in one or
292         more paragraphs.  In the simplest case, a single paragraph can be used
293         which applies to all files and lists all applicable copyrights and
294         licenses.
295       </para>
296
297       <section id="files-files-field">
298         <title><varname>Files</varname></title>
299         <para>
300           Required white space separated list: list of patterns indicating files
301           covered by the license and copyright specified in this paragraph.
302         </para>
303         <para>
304           Filename patterns in the <varname>Files</varname> field are specified
305           using a simplified shell glob syntax.  Patterns are separated by white
306           space.
307         <itemizedlist>
308           <listitem>
309             <para>
310               Only the wildcards <literal>*</literal> and <literal>?</literal>
311               apply; the former matches any number of characters (including
312               none), the latter a single character.  Both match a slash
313               (<literal>/</literal>) and a leading dot.
314             </para>
315           </listitem>
316           <listitem>
317             <para>
318               Patterns match pathnames that start at the root of the source
319               tree.  Thus, <quote><filename>Makefile.in</filename></quote>
320               matches only the file at the root of the tree, but
321               <quote><filename>*/Makefile.in</filename></quote> matches at any
322               depth.
323             </para>
324           </listitem>
325           <listitem>
326             <para>
327               The backslash (<literal>\</literal>) is used to remove the magic
328               from the next character; see table below.
329             </para>
330           </listitem>
331         </itemizedlist>
332         <informaltable>
333           <tgroup cols="2">
334             <thead>
335               <row>
336                 <entry>Escape sequence</entry>
337                 <entry>Matches</entry>
338               </row>
339             </thead>
340             <tbody>
341               <row>
342                 <entry><literal>\*</literal></entry>
343                 <entry>star (asterisk)</entry>
344               </row>
345               <row>
346                 <entry><literal>\?</literal></entry>
347                 <entry>question mark</entry>
348               </row>
349               <row>
350                 <entry><literal>\\</literal></entry>
351                 <entry>backslash</entry>
352               </row>
353             </tbody>
354           </tgroup>
355         </informaltable>
356         Any other character following a backslash is an error.
357       </para>
358       <para>
359         Multiple <varname>Files</varname> paragraphs are allowed.  The last
360         paragraph that matches a particular file applies to it.
361       </para>
362       <para>
363         Exclusions are done by having multiple <varname>Files</varname>
364         paragraphs.
365       </para>
366       </section>
367
368       <section id="copyright-files-field">
369         <title><varname>Copyright</varname></title>
370         <para>
371           Required line based list: one or more free-form copyright
372           statement(s), one per line, that apply to the files matched by the
373           above pattern.  If a work has no copyright holder (i.e., it is in
374           the public domain), that information should be recorded here.
375         </para>
376         <para>
377           The <varname>Copyright</varname> field collects all relevant copyright
378           notices for the files of this paragraph.  Not all copyright notices
379           may apply to every individual file, and years of publication for one
380           copyright holder may be gathered together.  For example, if file A
381           has:
382 <programlisting>Copyright 2008 John Smith
383 Copyright 2009 Angela Watts</programlisting>
384           and file B has:
385 <programlisting>Copyright 2010 Angela Watts</programlisting>
386           the <varname>Copyright</varname> field for a stanza
387           covering both file A and file B need contain only:
388 <programlisting>Copyright 2008 John Smith
389 Copyright 2009, 2010 Angela Watts</programlisting>
390         </para>
391         <para>
392           The <varname>Copyright</varname> field may contain the original
393           copyright statement copied exactly (including the word
394           <quote>Copyright</quote>), or it can shorten the text, as long
395           as it does not sacrifice information.  Examples in this specification
396           use both forms.
397         </para>
398       </section>
399
400       <section id="license-files-field">
401         <title><varname>License</varname></title>
402         <para>
403           Required formatted text, with synopsis: licensing terms for the files
404           listed in <varname>Files</varname> field for this paragraph.
405         </para>
406         <para>
407           First line: an abbreviated name for the license, or expression
408           giving alternatives (see <link linkend="license-short-name">Short
409           names</link> section for a list of standard abbreviations).  If there
410           are licenses present in the package without a standard short name, an
411           arbitrary short name may be assigned for these licenses.  These
412           arbitrary names are only guaranteed to be unique within a single
413           copyright file.
414         </para>
415         <para>
416           Remaining lines: if left blank here, the file
417           <emphasis>must</emphasis> include a stand-alone
418           <varname>License</varname> paragraph matching each license short
419           name listed on the first line (see the <link
420           linkend="stand-alone-license-paragraph">Standalone License
421           Paragraph</link> section).  Otherwise, this field should either
422           include the full text of the license(s) or include a pointer to the
423           license file under <filename>/usr/share/common-licenses</filename>.
424           This field should include all text needed in order to fulfill both
425           Debian Policy's requirement for including a copy of the software's
426           distribution license (<ulink
427           url="http://www.debian.org/doc/debian-policy/ch-docs#s-copyrightfile">12.5</ulink>),
428           and any license requirements to include warranty disclaimers or other
429           notices with the binary package.
430         </para>
431       </section>
432
433       <section id="comment-files-field">
434         <title><varname>Comment</varname></title>
435         <para>
436           Same as the <link linkend="comment-header-field">
437           <varname>Comment</varname></link> field in the header paragraph.
438         </para>
439       </section>
440
441       <section id="example-files-paragraph">
442         <title>Example files paragraphs</title>
443 <programlisting>Files: *
444 Copyright: 1975-2010 Ulla Upstream
445 License: GPL-2+
446
447 Files: debian/*
448 Copyright: 2010 Daniela Debianizer
449 License: GPL-2+
450
451 Files: debian/patches/fancy-feature
452 Copyright: 2010 Daniela Debianizer
453 License: GPL-3+
454
455 Files: */*.1
456 Copyright: 2010 Manuela Manpager
457 License: GPL-2+</programlisting>
458         <para>
459           In this example, all files are copyright by the upstream and licensed
460           under the GPL, version 2 or later, with three exceptions.  All the
461           Debian packaging files are copyright by the packager, and further one
462           specific file providing a new feature is licensed differently.
463           Finally, there are some manual pages added to the package, written by
464           a third person.
465         </para>
466       </section>
467     </section>
468
469     <section id="stand-alone-license-paragraph">
470       <title>Standalone License Paragraph (Optional, Repeatable)</title>
471       <para>
472         Where a set of files are dual (tri, etc) licensed, or when the same
473         license occurs multiple times, you can use a single line
474         <varname>License</varname> field and standalone
475         <varname>License</varname> paragraphs to expand the license short names.
476       </para>
477       <example>
478         <title>tri-licensed files</title>
479 <programlisting>Files: src/js/editline/*
480 Copyright: 1993, John Doe
481            1993, Joe Average
482 License: MPL-1.1 or GPL-2 or LGPL-2.1
483
484 License: MPL-1.1
485  [LICENSE TEXT]
486
487 License: GPL-2
488  [LICENSE TEXT]
489
490 License: LGPL-2.1
491  [LICENSE TEXT]</programlisting>
492       </example>
493
494       <example>
495         <title>recurrent license</title>
496 <programlisting>Files: src/js/editline/*
497 Copyright: 1993, John Doe
498            1993, Joe Average
499 License: MPL-1.1
500
501 Files: src/js/fdlibm/*
502 Copyright: 1993, J-Random Corporation
503 License: MPL-1.1
504
505 License: MPL-1.1
506  [LICENSE TEXT]</programlisting>
507       </example>
508     </section>
509   </section>
510
511   <section id="license-specification">
512     <title>License specification</title>
513
514     <section id="license-short-name">
515       <title>Short name</title>
516       <para>
517         Much of the value of a machine-parseable copyright file lies in being
518         able to correlate the licenses of multiple pieces of software.  To that
519         end, this spec defines standard short names for a number of commonly
520         used licenses, which can be used in the first line of a
521         <varname>License</varname> field.
522       </para>
523       <para>
524         These short names have the specified meanings across all uses of this
525         file format, and <emphasis>must not</emphasis> be used to refer to any
526         other licenses.  Parsers may thus rely on these short names referring to
527         the same licenses wherever they occur, without needing to parse or
528         compare the full license text.
529       </para>
530       <para>
531         From time to time, licenses may be added to or removed from the list of
532         standard short names.  Such changes in the list of short names will
533         always be accompanied by changes to the recommended
534         <varname>Format</varname> value. Implementers who are parsing copyright
535         files should take care not to assume anything about the meaning of
536         license short names for unknown <varname>Format</varname> versions.
537       </para>
538       <para>
539         Use of a standard short name does not override the Debian Policy
540         requirement to include the full license text in
541         <filename>debian/copyright</filename>, nor any requirements in the
542         license of the work regarding reproduction of legal notices.  This
543         information must still be included in the <varname>License</varname>
544         field, either in a stand-alone license paragraph or in the relevant
545         files paragraph.
546       </para>
547       <para>
548         For licenses which have multiple versions in use, the version number is
549         added, using a dash as a separator. If omitted, the lowest version
550         number is implied. When the license grant permits using the terms of any
551         later version of that license, the short name is finished with a plus
552         sign. For <link linkend="spdx">SPDX</link> compatibility, trailing
553         <emphasis>dot-zeroes</emphasis> are considered to be equal to plainer
554         version (e.g., <quote>2.0.0</quote> is considered equal to
555         <quote>2.0</quote> and <quote>2</quote>).
556       </para>
557       <para>
558         Currently, the full text of the licenses is only available in the <ulink
559         url="http://spdx.org/licenses">SPDX Open Source License Registry</ulink>.
560       </para>
561       <informaltable>
562         <tgroup cols="2">
563           <thead>
564             <row>
565               <entry>Keyword</entry>
566               <entry>Meaning</entry>
567             </row>
568           </thead>
569           <tbody>
570             <row>
571               <entry>public-domain</entry>
572               <entry>
573                 No license required for any purpose; the work is not subject to
574                 copyright in any jurisdiction.
575               </entry>
576             </row>
577             <row>
578               <entry>
579                 Apache
580               </entry>
581               <entry>
582                 Apache license
583                 <ulink url="http://spdx.org/licenses/Apache-1.0">1.0</ulink>,
584                 <ulink url="http://spdx.org/licenses/Apache-2.0">2.0</ulink>.
585               </entry>
586             </row>
587             <row>
588               <entry>
589                 Artistic
590               </entry>
591               <entry>
592                 Artistic license
593                 <ulink url="http://spdx.org/licenses/Artistic-1.0">1.0</ulink>,
594                 <ulink url="http://spdx.org/licenses/Artistic-2.0">2.0</ulink>.
595               </entry>
596             </row>
597             <row>
598               <entry>
599                 BSD-2-clause
600               </entry>
601               <entry>
602                 Berkeley software distribution license,
603                 <ulink url="http://spdx.org/licenses/BSD-2-Clause">2-clause
604                 version</ulink>.
605               </entry>
606             </row>
607             <row>
608               <entry>
609                 BSD-3-clause
610               </entry>
611               <entry>
612                 Berkeley software distribution license,
613                 <ulink url="http://spdx.org/licenses/BSD-3-Clause">3-clause
614                 version</ulink>.
615               </entry>
616             </row>
617             <row>
618               <entry>
619                 BSD-4-clause
620               </entry>
621               <entry>
622                 Berkeley software distribution license,
623                 <ulink url="http://spdx.org/licenses/BSD-4-Clause">4-clause
624                 version</ulink>.
625               </entry>
626             </row>
627             <row>
628               <entry>
629                 ISC
630               </entry>
631               <entry>
632                 <ulink url="http://spdx.org/licenses/ISC">Internet Software
633                 Consortium</ulink>, sometimes also known as the OpenBSD License.
634               </entry>
635             </row>
636             <row>
637               <entry>
638                 CC-BY
639               </entry>
640               <entry>
641                 Creative Commons Attribution license
642                 <ulink url="http://spdx.org/licenses/CC-BY-1.0">1.0</ulink>,
643                 <ulink url="http://spdx.org/licenses/CC-BY-2.0">2.0</ulink>,
644                 <ulink url="http://spdx.org/licenses/CC-BY-2.5">2.5</ulink>,
645                 <ulink url="http://spdx.org/licenses/CC-BY-3.0">3.0</ulink>.
646               </entry>
647             </row>
648             <row>
649               <entry>
650                 CC-BY-SA
651               </entry>
652               <entry>
653                 Creative Commons Attribution Share Alike license
654                 <ulink url="http://spdx.org/licenses/CC-BY-SA-1.0">1.0</ulink>,
655                 <ulink url="http://spdx.org/licenses/CC-BY-SA-2.0">2.0</ulink>,
656                 <ulink url="http://spdx.org/licenses/CC-BY-SA-2.5">2.5</ulink>,
657                 <ulink url="http://spdx.org/licenses/CC-BY-SA-3.0">3.0</ulink>.
658               </entry>
659             </row>
660             <row>
661               <entry>
662                 CC-BY-ND
663               </entry>
664               <entry>
665                 Creative Commons Attribution No Derivatives license
666                 <ulink url="http://spdx.org/licenses/CC-BY-ND-1.0">1.0</ulink>,
667                 <ulink url="http://spdx.org/licenses/CC-BY-ND-2.0">2.0</ulink>,
668                 <ulink url="http://spdx.org/licenses/CC-BY-ND-2.5">2.5</ulink>,
669                 <ulink url="http://spdx.org/licenses/CC-BY-ND-3.0">3.0</ulink>.
670               </entry>
671             </row>
672             <row>
673               <entry>
674                 CC-BY-NC
675               </entry>
676               <entry>
677                 Creative Commons Attribution Non-Commercial license
678                 <ulink url="http://spdx.org/licenses/CC-BY-NC-1.0">1.0</ulink>,
679                 <ulink url="http://spdx.org/licenses/CC-BY-NC-2.0">2.0</ulink>,
680                 <ulink url="http://spdx.org/licenses/CC-BY-NC-2.5">2.5</ulink>,
681                 <ulink url="http://spdx.org/licenses/CC-BY-NC-3.0">3.0</ulink>.
682               </entry>
683             </row>
684             <row>
685               <entry>
686                 CC-BY-NC-SA
687               </entry>
688               <entry>
689                 Creative Commons Attribution Non-Commercial Share Alike license
690                 <ulink url="http://spdx.org/licenses/CC-BY-NC-SA-1.0">1.0</ulink>,
691                 <ulink url="http://spdx.org/licenses/CC-BY-NC-SA-2.0">2.0</ulink>,
692                 <ulink url="http://spdx.org/licenses/CC-BY-NC-SA-2.5">2.5</ulink>,
693                 <ulink url="http://spdx.org/licenses/CC-BY-NC-SA-3.0">3.0</ulink>.
694               </entry>
695             </row>
696             <row>
697               <entry>
698                 CC-BY-NC-ND
699               </entry>
700               <entry>
701                 Creative Commons Attribution Non-Commercial No Derivatives license
702                 <ulink url="http://spdx.org/licenses/CC-BY-NC-ND-1.0">1.0</ulink>,
703                 <ulink url="http://spdx.org/licenses/CC-BY-NC-ND-2.0">2.0</ulink>,
704                 <ulink url="http://spdx.org/licenses/CC-BY-NC-ND-2.5">2.5</ulink>,
705                 <ulink url="http://spdx.org/licenses/CC-BY-NC-ND-3.0">3.0</ulink>.
706               </entry>
707             </row>
708             <row>
709               <entry>
710                 CC0
711               </entry>
712               <entry>
713                 Creative Commons Zero 1.0 Universal
714                 <ulink url="http://spdx.org/licenses/CC0-1.0">1.0</ulink>.
715               </entry>
716             </row>
717             <row>
718               <entry>
719                 CDDL
720               </entry>
721               <entry>
722                 Common Development and Distribution License
723                 <ulink url="http://spdx.org/licenses/CDDL-1.0">1.0</ulink>.
724               </entry>
725             </row>
726             <row>
727               <entry>
728                 CPL
729               </entry>
730               <entry>
731                 <ulink url="http://spdx.org/licenses/CPL-1.0">IBM Common Public
732                 License</ulink>.
733               </entry>
734             </row>
735             <row>
736               <entry>
737                 EFL
738               </entry>
739               <entry>
740                 The Eiffel Forum License
741                 <ulink url="http://spdx.org/licenses/EFL-1.0">1.0</ulink>,
742                 <ulink url="http://spdx.org/licenses/EFL-2.0">2.0</ulink>.
743               </entry>
744             </row>
745             <row>
746               <entry>
747                 Expat
748               </entry>
749               <entry>
750                 The <ulink url="http://www.jclark.com/xml/copying.txt">Expat</ulink>
751                 license.
752               </entry>
753             </row>
754             <row>
755               <entry>
756                 GPL
757               </entry>
758               <entry>
759                 GNU General Public License
760                 <ulink url="http://spdx.org/licenses/GPL-1.0">1.0</ulink>,
761                 <ulink url="http://spdx.org/licenses/GPL-2.0">2.0</ulink>,
762                 <ulink url="http://spdx.org/licenses/GPL-3.0">3.0</ulink>.
763               </entry>
764             </row>
765             <row>
766               <entry>
767                 LGPL
768               </entry>
769               <entry>
770                 GNU Lesser General Public License
771                 <ulink url="http://spdx.org/licenses/LGPL-2.1">2.1</ulink>,
772                 <ulink url="http://spdx.org/licenses/LGPL-3.0">3.0</ulink>, or
773                 GNU Library General Public License
774                 <ulink url="http://spdx.org/licenses/LGPL-2.0">2.0</ulink>.
775               </entry>
776             </row>
777             <row>
778               <entry>
779                 GFDL
780               </entry>
781               <entry>
782                 GNU Free Documentation License 1.0, or
783                 <ulink url="http://spdx.org/licenses/GFDL-1.1">1.1</ulink>.
784               </entry>
785             </row>
786             <row>
787               <entry>
788                 GFDL-NIV
789               </entry>
790               <entry>
791                 GNU Free Documentation License, with no invariant sections.
792               </entry>
793             </row>
794             <row>
795               <entry>
796                 LPPL
797               </entry>
798               <entry>
799                 <ulink url="http://www.latex-project.org/lppl/">LaTeX Project
800                 Public License</ulink>
801                 <ulink url="http://spdx.org/licenses/LPPL-1.0">1.0</ulink>,
802                 <ulink url="http://spdx.org/licenses/LPPL-1.1">1.1</ulink>,
803                 <ulink url="http://spdx.org/licenses/LPPL-1.2">1.2</ulink>,
804                 <ulink url="http://spdx.org/licenses/LPPL-1.3c">1.3c</ulink>.
805               </entry>
806             </row>
807             <row>
808               <entry>
809                 MPL
810               </entry>
811               <entry>
812                 Mozilla Public License
813                 <ulink url="http://spdx.org/licenses/MPL-1.1">1.1</ulink>.
814               </entry>
815             </row>
816             <row>
817               <entry>
818                 Perl
819               </entry>
820               <entry>
821                 <ulink url="http://dev.perl.org/licenses/">Perl</ulink> license
822                 (use <quote><literal>GPL-1+ or Artistic-1</literal></quote>
823                 instead).
824               </entry>
825             </row>
826             <row>
827               <entry>
828                 Python
829               </entry>
830               <entry>
831                 Python license
832                 <ulink url="http://spdx.org/licenses/Python-2.0">2.0</ulink>.
833               </entry>
834               <!-- See https://fossbazaar.org/pipermail/spdx-legal/2011-February/000010.html -->
835             </row>
836             <row>
837               <entry>
838                 QPL
839               </entry>
840               <entry>
841                 Q Public License <ulink
842                 url="http://spdx.org/licenses/QPL-1.0">1.0</ulink>.
843               </entry>
844             </row>
845             <row>
846               <entry>
847                 W3C
848               </entry>
849               <entry>
850                 <ulink url="http://spdx.org/licenses/W3C">W3C Software
851                 License</ulink> For more information, consult the
852                 <ulink
853                 url="http://www.w3.org/Consortium/Legal/IPR-FAQ-20000620">W3C
854                 Intellectual Rights FAQ</ulink>.
855               </entry>
856             </row>
857             <row>
858               <entry>
859                 Zlib
860               </entry>
861               <entry>
862                 <ulink url="http://spdx.org/licenses/Zlib">
863                 zlib/libpng license</ulink>.
864               </entry>
865             </row>
866             <row>
867               <entry>
868                 Zope
869               </entry>
870               <entry>
871                 Zope Public License 1.0,
872                   <ulink url="http://spdx.org/licenses/ZPL-1.1">1.1</ulink>,
873                   <ulink url="http://spdx.org/licenses/ZPL-2.0">2.0</ulink>,
874                   <ulink url="http://spdx.org/licenses/ZPL-2.1">2.1</ulink>.
875               </entry>
876             </row>
877           </tbody>
878         </tgroup>
879       </informaltable>
880       <para>
881         There are <ulink
882         url="http://en.wikipedia.org/wiki/MIT_License#Various_versions">many
883         versions of the MIT license</ulink>. Please use Expat instead, when it
884         matches.
885       </para>
886       <para>
887         An exception or clarification to a license is signaled in plain text, by appending
888         <literal>with <varname><replaceable>keywords</replaceable></varname>
889         exception</literal> to the short name.  This document provides a list of
890         keywords that must be used when referring to the most frequent
891         exceptions.  When exceptions other than these are in effect that modify
892         a common license by granting additional permissions, you may use an
893         arbitrary keyword not taken from the below list of keywords.  When a
894         license differs from a common license because of added restrictions
895         rather than because of added permissions, a distinct short name should
896         be used instead of <literal>with
897         <varname><replaceable>keywords</replaceable></varname>exception</literal>.
898       </para>
899       <para>
900         Only one exception may be specified for each license within a given
901         license specification.  If more than one exception applies to a single
902         license, an arbitrary short name must be used instead.
903       </para>
904       <para>
905         The GPL <literal>Font</literal> exception refers to the text added to the
906         license notice of each file as specified at <ulink
907         url="http://www.gnu.org/licenses/gpl-faq#FontException">How does the GPL
908         apply to fonts</ulink>.  The precise text corresponding to this
909         exception is:
910 <programlisting>As a special exception, if you create a document which uses this font,
911 and embed this font or unaltered portions of this font into the
912 document, this font does not by itself cause the resulting document to
913 be covered by the GNU General Public License. This exception does not
914 however invalidate any other reasons why the document might be covered
915 by the GNU General Public License. If you modify this font, you may
916 extend this exception to your version of the font, but you are not
917 obligated to do so. If you do not wish to do so, delete this exception
918 statement from your version.</programlisting>
919         </para>
920         <para>
921           The GPL <literal>OpenSSL</literal> exception gives permission to link GPL-licensed
922 code with the OpenSSL library, which contains GPL-incompatible clauses.
923 For more information, see <ulink
924 url="http://www.gnome.org/~markmc/openssl-and-the-gpl">The -OpenSSL License and
925 The GPL</ulink> by Mark
926 McLoughlin and the message <ulink
927 url="http://lists.debian.org/debian-legal/2004/05/msg00595.html">middleman
928 software license conflicts with OpenSSL</ulink>
929 by Mark McLoughlin on the <emphasis>debian-legal</emphasis> mailing list.  The text corresponding
930 to this exception is:
931 <programlisting>In addition, as a special exception, the copyright holders give
932 permission to link the code of portions of this program with the
933 OpenSSL library under certain conditions as described in each
934 individual source file, and distribute linked combinations including
935 the two.
936
937 You must obey the GNU General Public License in all respects for all
938 of the code used other than OpenSSL. If you modify file(s) with this
939 exception, you may extend this exception to your version of the
940 file(s), but you are not obligated to do so. If you do not wish to do
941 so, delete this exception statement from your version. If you delete
942 this exception statement from all source files in the program, then
943 also delete it here.</programlisting>
944         </para>
945
946         <section id="public-domain">
947           <title>Public domain</title>
948           <para>
949             The <varname>License</varname> short name
950             <literal>public-domain</literal> does not refer to a set of license
951             terms. There are some works which are not subject to copyright in
952             any jurisdiction and therefore no license is required for any
953             purpose covered by copyright law. This short name is an explicit
954             declaration that the associated files are <quote>in the public
955             domain</quote>.
956           </para>
957           <para>
958             Widespread misunderstanding about copyright in general, and the
959             public domain in particular, results in the common assertion that a
960             work is in the public domain when this is partly or wholly untrue
961             for that work. The <ulink
962             url="http://en.wikipedia.org/wiki/Public_domain">Wikipedia article
963             on public domain</ulink> is a useful reference for this subject.
964           </para>
965           <para>
966             When the <varname>License</varname> field in a paragraph has the
967             short name <literal>public-domain</literal>, the remaining lines of
968             the field <emphasis>must</emphasis> explain exactly what exemption
969             the corresponding files for that paragraph have from default
970             copyright restrictions.
971         </para>
972       </section>
973     </section>
974
975     <section id="license-syntax">
976       <title>Syntax</title>
977       <para>
978         License names are case-insensitive, and may not contain spaces.
979       </para>
980       <para>
981         In case of multi-licensing, the license short names are separated by
982         <literal>or</literal> when the user can chose between different licenses,
983         and by <literal>and</literal> when use of the work must simultaneously
984         comply with the terms of multiple licenses.
985       </para>
986       <para>
987         For instance, this is a simple, <quote>GPL version 2 or later</quote>
988         field:
989 <programlisting>License: GPL-2+</programlisting>
990         This is a dual-licensed GPL/Artistic work such as Perl:
991 <programlisting>License: GPL-1+ or Artistic</programlisting>
992         This is for a file that has both GPL and classic BSD code in it:
993 <programlisting>License: GPL-2+ and BSD</programlisting>
994         For the most complex cases, the comma is used to disambiguate the
995         priority of <literal>or</literal>s and <literal>and</literal>s
996         <literal>and</literal> has the priority over <literal>or</literal>,
997         unless preceded by a comma. For instance:
998       </para>
999       <simpara>
1000         <literal>A or B and C</literal> means <literal>A or (B and C)</literal>.
1001       </simpara>
1002       <simpara>
1003         <literal>A or B, and C</literal> means <literal>(A or B), and
1004         C</literal>.
1005       </simpara>
1006       <para>
1007         This is for a file that has Perl code and classic BSD code in it:
1008 <programlisting>License: GPL-2+ or Artistic-2.0, and BSD</programlisting>
1009         A <literal>GPL-2+</literal> work with the <literal>OpenSSL</literal>
1010         exception is in effect a dual-licensed work that can be redistributed
1011         either under the <literal>GPL-2+</literal>, or under the
1012         <literal>GPL-2+</literal> with the <literal>OpenSSL</literal> exception.
1013         It is thus expressed as <literal>GPL-2+ with OpenSSL
1014         exception</literal>:
1015 <programlisting>License: GPL-2+ with OpenSSL exception
1016  This program is free software; you can redistribute it
1017  and/or modify it under the terms of the GNU General Public
1018  License as published by the Free Software Foundation; either
1019  version 2 of the License, or (at your option) any later
1020  version.
1021  .
1022  In addition, as a special exception, the author of this
1023  program gives permission to link the code of its
1024  release with the OpenSSL project's "OpenSSL" library (or
1025  with modified versions of it that use the same license as
1026  the "OpenSSL" library), and distribute the linked
1027  executables. You must obey the GNU General Public
1028  License in all respects for all of the code used other
1029  than "OpenSSL".  If you modify this file, you may extend
1030  this exception to your version of the file, but you are
1031  not obligated to do so.  If you do not wish to do so,
1032  delete this exception statement from your version.
1033  .
1034  This program is distributed in the hope that it will be
1035  useful, but WITHOUT ANY WARRANTY; without even the implied
1036  warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
1037  PURPOSE.  See the GNU General Public License for more
1038  details.
1039  .
1040  You should have received a copy of the GNU General Public
1041  License along with this package; if not, write to the Free
1042  Software Foundation, Inc., 51 Franklin St, Fifth Floor,
1043  Boston, MA  02110-1301 USA
1044  .
1045  On Debian systems, the full text of the GNU General Public
1046  License version 2 can be found in the file
1047  `/usr/share/common-licenses/GPL-2'.</programlisting>
1048        </para>
1049      </section>
1050
1051     <section id="spdx">
1052       <title>SPDX</title>
1053       <para>
1054         <ulink url="http://spdx.org/">SPDX</ulink> is an attempt to standardize
1055         a format for communicating the components, licenses and copyrights
1056         associated with a software package. It and the machine-readable
1057         <filename>debian/copyright</filename> format attempt to be somewhat
1058         compatible. However, the two formats have different aims, and so the
1059         formats are different. The <ulink
1060         url="http://wiki.debian.org/Proposals/CopyrightFormat">DEP5 wiki
1061         page</ulink> will be used to track the differences.
1062       </para>
1063     </section>
1064   </section>
1065
1066   <section id="examples">
1067     <title>Examples</title>
1068     <example>
1069       <title>Simple</title>
1070       <para>
1071         A possible <filename>debian/copyright</filename> file for the program
1072         <quote>X Solitaire</quote> distributed in the Debian source package
1073         <literal>xsol</literal>:
1074 <programlisting><![CDATA[Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
1075 Upstream-Name: X Solitaire
1076 Source: ftp://ftp.example.com/pub/games
1077
1078 Files: *
1079 Copyright: Copyright 1998 John Doe <jdoe@example.com>
1080 License: GPL-2+
1081  This program is free software; you can redistribute it
1082  and/or modify it under the terms of the GNU General Public
1083  License as published by the Free Software Foundation; either
1084  version 2 of the License, or (at your option) any later
1085  version.
1086  .
1087  This program is distributed in the hope that it will be
1088  useful, but WITHOUT ANY WARRANTY; without even the implied
1089  warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
1090  PURPOSE.  See the GNU General Public License for more
1091  details.
1092  .
1093  You should have received a copy of the GNU General Public
1094  License along with this package; if not, write to the Free
1095  Software Foundation, Inc., 51 Franklin St, Fifth Floor,
1096  Boston, MA  02110-1301 USA
1097  .
1098  On Debian systems, the full text of the GNU General Public
1099  License version 2 can be found in the file
1100  `/usr/share/common-licenses/GPL-2'.
1101
1102 Files: debian/*
1103 Copyright: Copyright 1998 Jane Smith <jsmith@example.net>
1104 License: GPL-2+
1105  [LICENSE TEXT]]]></programlisting>
1106       </para>
1107     </example>
1108
1109     <example>
1110       <title>Complex</title>
1111       <para>
1112         A possible <filename>debian/copyright</filename> file for the program
1113         <quote>Planet Venus</quote>, distributed in the Debian source
1114         package <literal>planet-venus</literal>:
1115 <programlisting><![CDATA[Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
1116 Upstream-Name: Planet Venus
1117 Upstream-Contact: John Doe <jdoe@example.com>
1118 Source: http://www.example.com/code/venus
1119
1120 Files: *
1121 Copyright: 2008, John Doe <jdoe@example.com>
1122            2007, Jane Smith <jsmith@example.org>
1123            2007, Joe Average <joe@example.org>
1124            2007, J. Random User <jr@users.example.com>
1125 License: PSF-2
1126  [LICENSE TEXT]
1127
1128 Files: debian/*
1129 Copyright: 2008, Dan Developer <dan@debian.example.com>
1130 License: permissive
1131  Copying and distribution of this package, with or without
1132  modification, are permitted in any medium without royalty
1133  provided the copyright notice and this notice are
1134  preserved.
1135
1136 Files: debian/patches/theme-diveintomark.patch
1137 Copyright: 2008, Joe Hacker <hack@example.org>
1138 License: GPL-2+
1139  [LICENSE TEXT]
1140
1141 Files: planet/vendor/compat_logging/*
1142 Copyright: 2002, Mark Smith <msmith@example.org>
1143 License: MIT
1144  [LICENSE TEXT]
1145
1146 Files: planet/vendor/httplib2/*
1147 Copyright: 2006, John Brown <brown@example.org>
1148 License: MIT2
1149  Unspecified MIT style license.
1150
1151 Files: planet/vendor/feedparser.py
1152 Copyright: 2007, Mike Smith <mike@example.org>
1153 License: PSF-2
1154  [LICENSE TEXT]
1155
1156 Files: planet/vendor/htmltmpl.py
1157 Copyright: 2004, Thomas Brown <coder@example.org>
1158 License: GPL-2+
1159  This program is free software; you can redistribute it
1160  and/or modify it under the terms of the GNU General Public
1161  License as published by the Free Software Foundation; either
1162  version 2 of the License, or (at your option) any later
1163  version.
1164  .
1165  This program is distributed in the hope that it will be
1166  useful, but WITHOUT ANY WARRANTY; without even the implied
1167  warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
1168  PURPOSE.  See the GNU General Public License for more
1169  details.
1170  .
1171  You should have received a copy of the GNU General Public
1172  License along with this package; if not, write to the Free
1173  Software Foundation, Inc., 51 Franklin St, Fifth Floor,
1174  Boston, MA  02110-1301 USA
1175  .
1176  On Debian systems, the full text of the GNU General Public
1177  License version 2 can be found in the file
1178  `/usr/share/common-licenses/GPL-2'.]]></programlisting>
1179       </para>
1180     </example>
1181   </section>
1182
1183 </article>