]> git.donarmstrong.com Git - debian/debian-policy.git/blob - copyright-format/copyright-format.xml
* copyright-format: remove drivers from abstract and useless appendix
[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/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: &lt;VERSIONED_FORMAT_URL&gt;
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/ASL-1.0">1.0</ulink>,
584                 <ulink url="http://spdx.org/licenses/ASL-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 <ulink
714                 url="http://creativecommons.org/license/zero/">Universal
715                 waiver</ulink>.
716               </entry>
717             </row>
718             <row>
719               <entry>
720                 CDDL
721               </entry>
722               <entry>
723                 <ulink url="http://spdx.org/licenses/CDDL">Common Development
724                 and Distribution License</ulink>.
725               </entry>
726             </row>
727             <row>
728               <entry>
729                 CPL
730               </entry>
731               <entry>
732                 <ulink url="http://spdx.org/licenses/CPL-1.0">IBM Common Public
733                 License</ulink>.
734               </entry>
735             </row>
736             <row>
737               <entry>
738                 EFL
739               </entry>
740               <entry>
741                 The Eiffel Forum License
742                 <ulink url="http://spdx.org/licenses/EFL-1.0">1.0</ulink>,
743                 <ulink url="http://spdx.org/licenses/EFL-2.0">2.0</ulink>.
744               </entry>
745             </row>
746             <row>
747               <entry>
748                 Expat
749               </entry>
750               <entry>
751                 The <ulink url="http://www.jclark.com/xml/copying.txt">Expat</ulink>
752                 license.
753               </entry>
754             </row>
755             <row>
756               <entry>
757                 GPL
758               </entry>
759               <entry>
760                 GNU General Public License
761                 <ulink url="http://spdx.org/licenses/GPL-1.0">1.0</ulink>,
762                 <ulink url="http://spdx.org/licenses/GPL-2.0">2.0</ulink>,
763                 <ulink url="http://spdx.org/licenses/GPL-3.0">3.0</ulink>.
764               </entry>
765             </row>
766             <row>
767               <entry>
768                 LGPL
769               </entry>
770               <entry>
771                 GNU Lesser General Public License
772                 <ulink url="http://spdx.org/licenses/LGPL-2.1">2.1</ulink>,
773                 <ulink url="http://spdx.org/licenses/LGPL-3.0">3.0</ulink>, or
774                 GNU Library General Public License
775                 <ulink url="http://spdx.org/licenses/LGPL-1.0">1.0</ulink>,
776                 <ulink url="http://spdx.org/licenses/LGPL-2.0">2.0</ulink>.
777               </entry>
778             </row>
779             <row>
780               <entry>
781                 GFDL
782               </entry>
783               <entry>
784                 <ulink url="http://spdx.org/licenses/FDL-1.0">GNU Free
785                 Documentation License</ulink>.
786               </entry>
787             </row>
788             <row>
789               <entry>
790                 GFDL-NIV
791               </entry>
792               <entry>
793                 GNU Free Documentation License, with no invariant sections.
794               </entry>
795             </row>
796             <row>
797               <entry>
798                 LPPL
799               </entry>
800               <entry>
801                 <ulink url="http://www.latex-project.org/lppl/">LaTeX Project
802                 Public License</ulink>
803                 <ulink url="http://spdx.org/licenses/LPPL-1.0">1.0</ulink>,
804                 <ulink url="http://spdx.org/licenses/LPPL-1.1">1.1</ulink>,
805                 <ulink url="http://spdx.org/licenses/LPPL-1.2">1.2</ulink>,
806                 <ulink url="http://spdx.org/licenses/LPPL-1.3c">1.3c</ulink>.
807               </entry>
808             </row>
809             <row>
810               <entry>
811                 MPL
812               </entry>
813               <entry>
814                 Mozilla Public License
815                 <ulink url="http://spdx.org/licenses/MPL-1.1">1.1</ulink>.
816               </entry>
817             </row>
818             <row>
819               <entry>
820                 Perl
821               </entry>
822               <entry>
823                 <ulink url="http://dev.perl.org/licenses/">Perl</ulink> license
824                 (use <quote><literal>GPL-1+ or Artistic-1</literal></quote>
825                 instead).
826               </entry>
827             </row>
828             <row>
829               <entry>
830                 Python-CNRI
831               </entry>
832               <entry>
833                 <ulink url="http://spdx.org/licenses/Python-CNRI">Python
834                 license</ulink>.
835               </entry>
836             </row>
837             <row>
838               <entry>
839                 QPL
840               </entry>
841               <entry>
842                 Q Public License <ulink
843                 url="http://spdx.org/licenses/QPL-1.0">1.0</ulink>.
844               </entry>
845             </row>
846             <row>
847               <entry>
848                 W3C
849               </entry>
850               <entry>
851                 <ulink url="http://spdx.org/licenses/W3C">W3C Software
852                 License</ulink> For more information, consult the
853                 <ulink
854                 url="http://www.w3.org/Consortium/Legal/IPR-FAQ-20000620">W3C
855                 Intellectual Rights FAQ</ulink>.
856               </entry>
857             </row>
858             <row>
859               <entry>
860                 Zlib
861               </entry>
862               <entry>
863                 <ulink url="http://spdx.org/licenses/Zlib">
864                 zlib/libpng license</ulink>.
865               </entry>
866             </row>
867             <row>
868               <entry>
869                 Zope
870               </entry>
871               <entry>
872                 Zope Public License
873                   <ulink url="http://spdx.org/licenses/ZPL-1.0">1.0</ulink>,
874                   <ulink url="http://spdx.org/licenses/ZPL-2.0">2.0</ulink>,
875                   <ulink url="http://spdx.org/licenses/ZPL-2.1">2.1</ulink>.
876               </entry>
877             </row>
878           </tbody>
879         </tgroup>
880       </informaltable>
881       <para>
882         There are <ulink
883         url="http://en.wikipedia.org/wiki/MIT_License#Various_versions">many
884         versions of the MIT license</ulink>. Please use Expat instead, when it
885         matches.
886       </para>
887       <para>
888         Exceptions and clarifications are signaled in plain text, by appending
889         <literal>with <varname><replaceable>keywords</replaceable></varname>
890         exception</literal> to the short name.  This document provides a list of
891         keywords that refer to the most frequent exceptions.
892       </para>
893       <para>
894         The GPL <literal>Font</literal> exception refers to the text added to the
895         license notice of each file as specified at <ulink
896         url="http://www.gnu.org/licenses/gpl-faq#FontException">How does the GPL
897         apply to fonts</ulink>.  The precise text corresponding to this
898         exception is:
899 <programlisting>As a special exception, if you create a document which uses this font,
900 and embed this font or unaltered portions of this font into the
901 document, this font does not by itself cause the resulting document to
902 be covered by the GNU General Public License. This exception does not
903 however invalidate any other reasons why the document might be covered
904 by the GNU General Public License. If you modify this font, you may
905 extend this exception to your version of the font, but you are not
906 obligated to do so. If you do not wish to do so, delete this exception
907 statement from your version.</programlisting>
908         </para>
909         <para>
910           The GPL <literal>OpenSSL</literal> exception gives permission to link GPL-licensed
911 code with the OpenSSL library, which contains GPL-incompatible clauses.
912 For more information, see <ulink
913 url="http://www.gnome.org/~markmc/openssl-and-the-gpl">The -OpenSSL License and
914 The GPL</ulink> by Mark
915 McLoughlin and the message <ulink
916 url="http://lists.debian.org/debian-legal/2004/05/msg00595.html">middleman
917 software license conflicts with OpenSSL</ulink>
918 by Mark McLoughlin on the <emphasis>debian-legal</emphasis> mailing list.  The text corresponding
919 to this exception is:
920 <programlisting>In addition, as a special exception, the copyright holders give
921 permission to link the code of portions of this program with the
922 OpenSSL library under certain conditions as described in each
923 individual source file, and distribute linked combinations including
924 the two.
925
926 You must obey the GNU General Public License in all respects for all
927 of the code used other than OpenSSL. If you modify file(s) with this
928 exception, you may extend this exception to your version of the
929 file(s), but you are not obligated to do so. If you do not wish to do
930 so, delete this exception statement from your version. If you delete
931 this exception statement from all source files in the program, then
932 also delete it here.</programlisting>
933         </para>
934
935         <section id="public-domain">
936           <title>Public domain</title>
937           <para>
938             The <varname>License</varname> short name
939             <literal>public-domain</literal> does not refer to a set of license
940             terms. There are some works which are not subject to copyright in
941             any jurisdiction and therefore no license is required for any
942             purpose covered by copyright law. This short name is an explicit
943             declaration that the associated files are <quote>in the public
944             domain</quote>.
945           </para>
946           <para>
947             Widespread misunderstanding about copyright in general, and the
948             public domain in particular, results in the common assertion that a
949             work is in the public domain when this is partly or wholly untrue
950             for that work. The <ulink
951             url="http://en.wikipedia.org/wiki/Public_domain">Wikipedia article
952             on public domain</ulink> is a useful reference for this subject.
953           </para>
954           <para>
955             When the <varname>License</varname> field in a paragraph has the
956             short name <literal>public-domain</literal>, the remaining lines of
957             the field <emphasis>must</emphasis> explain exactly what exemption
958             the corresponding files for that paragraph have from default
959             copyright restrictions.
960         </para>
961       </section>
962     </section>
963
964     <section id="license-syntax">
965       <title>Syntax</title>
966       <para>
967         License names are case-insensitive, and may not contain spaces.
968       </para>
969       <para>
970         In case of multi-licensing, the license short names are separated by
971         <literal>or</literal> when the user can chose between different licenses,
972         and by <literal>and</literal> when use of the work must simultaneously
973         comply with the terms of multiple licenses.
974       </para>
975       <para>
976         For instance, this is a simple, <quote>GPL version 2 or later</quote>
977         field:
978 <programlisting>License: GPL-2+</programlisting>
979         This is a dual-licensed GPL/Artistic work such as Perl:
980 <programlisting>License: GPL-1+ or Artistic</programlisting>
981         This is for a file that has both GPL and classic BSD code in it:
982 <programlisting>License: GPL-2+ and BSD</programlisting>
983         For the most complex cases, the comma is used to disambiguate the
984         priority of <literal>or</literal>s and <literal>and</literal>s
985         <literal>and</literal> has the priority over <literal>or</literal>,
986         unless preceded by a comma. For instance:
987       </para>
988       <simpara>
989         <literal>A or B and C</literal> means <literal>A or (B and C)</literal>.
990       </simpara>
991       <simpara>
992         <literal>A or B, and C</literal> means <literal>(A or B), and
993         C</literal>.
994       </simpara>
995       <para>
996         This is for a file that has Perl code and classic BSD code in it:
997 <programlisting>License: GPL-2+ or Artistic-2.0, and BSD</programlisting>
998         A <literal>GPL-2+</literal> work with the <literal>OpenSSL</literal>
999         exception is in effect a dual-licensed work that can be redistributed
1000         either under the <literal>GPL-2+</literal>, or under the
1001         <literal>GPL-2+</literal> with the <literal>OpenSSL</literal> exception.
1002         It is thus expressed as <literal>GPL-2+ with OpenSSL
1003         exception</literal>:
1004 <programlisting>License: GPL-2+ with OpenSSL exception
1005  This program is free software; you can redistribute it
1006  and/or modify it under the terms of the GNU General Public
1007  License as published by the Free Software Foundation; either
1008  version 2 of the License, or (at your option) any later
1009  version.
1010  .
1011  In addition, as a special exception, the author of this
1012  program gives permission to link the code of its
1013  release with the OpenSSL project's "OpenSSL" library (or
1014  with modified versions of it that use the same license as
1015  the "OpenSSL" library), and distribute the linked
1016  executables. You must obey the GNU General Public
1017  License in all respects for all of the code used other
1018  than "OpenSSL".  If you modify this file, you may extend
1019  this exception to your version of the file, but you are
1020  not obligated to do so.  If you do not wish to do so,
1021  delete this exception statement from your version.
1022  .
1023  This program is distributed in the hope that it will be
1024  useful, but WITHOUT ANY WARRANTY; without even the implied
1025  warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
1026  PURPOSE.  See the GNU General Public License for more
1027  details.
1028  .
1029  You should have received a copy of the GNU General Public
1030  License along with this package; if not, write to the Free
1031  Software Foundation, Inc., 51 Franklin St, Fifth Floor,
1032  Boston, MA  02110-1301 USA
1033  .
1034  On Debian systems, the full text of the GNU General Public
1035  License version 2 can be found in the file
1036  `/usr/share/common-licenses/GPL-2'.</programlisting>
1037        </para>
1038      </section>
1039
1040     <section id="spdx">
1041       <title>SPDX</title>
1042       <para>
1043         <ulink url="http://spdx.org/">SPDX</ulink> is an attempt to standardize
1044         a format for communicating the components, licenses and copyrights
1045         associated with a software package. It and the machine-readable
1046         <filename>debian/copyright</filename> format attempt to be somewhat
1047         compatible. However, the two formats have different aims, and so the
1048         formats are different. The <ulink
1049         url="http://wiki.debian.org/Proposals/CopyrightFormat">DEP5 wiki
1050         page</ulink> will be used to track the differences.
1051       </para>
1052     </section>
1053   </section>
1054
1055   <section id="examples">
1056     <title>Examples</title>
1057     <example>
1058       <title>Simple</title>
1059       <para>
1060         A possible <filename>debian/copyright</filename> file for the program
1061         <quote>X Solitaire</quote> distributed in the Debian source package
1062         <literal>xsol</literal>:
1063 <programlisting><![CDATA[Format: <VERSIONED_FORMAT_URL>
1064 Upstream-Name: X Solitaire
1065 Source: ftp://ftp.example.com/pub/games
1066
1067 Files: *
1068 Copyright: Copyright 1998 John Doe <jdoe@example.com>
1069 License: GPL-2+
1070  This program is free software; you can redistribute it
1071  and/or modify it under the terms of the GNU General Public
1072  License as published by the Free Software Foundation; either
1073  version 2 of the License, or (at your option) any later
1074  version.
1075  .
1076  This program is distributed in the hope that it will be
1077  useful, but WITHOUT ANY WARRANTY; without even the implied
1078  warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
1079  PURPOSE.  See the GNU General Public License for more
1080  details.
1081  .
1082  You should have received a copy of the GNU General Public
1083  License along with this package; if not, write to the Free
1084  Software Foundation, Inc., 51 Franklin St, Fifth Floor,
1085  Boston, MA  02110-1301 USA
1086  .
1087  On Debian systems, the full text of the GNU General Public
1088  License version 2 can be found in the file
1089  `/usr/share/common-licenses/GPL-2'.
1090
1091 Files: debian/*
1092 Copyright: Copyright 1998 Jane Smith <jsmith@example.net>
1093 License:
1094  [LICENSE TEXT]]]></programlisting>
1095       </para>
1096     </example>
1097
1098     <example>
1099       <title>Complex</title>
1100       <para>
1101         A possible <filename>debian/copyright</filename> file for the program
1102         <quote>Planet Venus</quote>, distributed in the Debian source
1103         package <literal>planet-venus</literal>:
1104 <programlisting><![CDATA[Format: <VERSIONED_FORMAT_URL>
1105 Upstream-Name: Planet Venus
1106 Upstream-Contact: John Doe <jdoe@example.com>
1107 Source: http://www.example.com/code/venus
1108
1109 Files: *
1110 Copyright: 2008, John Doe <jdoe@example.com>
1111            2007, Jane Smith <jsmith@example.org>
1112            2007, Joe Average <joe@example.org>
1113            2007, J. Random User <jr@users.example.com>
1114 License: PSF-2
1115  [LICENSE TEXT]
1116
1117 Files: debian/*
1118 Copyright: 2008, Dan Developer <dan@debian.example.com>
1119 License:
1120  Copying and distribution of this package, with or without
1121  modification, are permitted in any medium without royalty
1122  provided the copyright notice and this notice are
1123  preserved.
1124
1125 Files: debian/patches/theme-diveintomark.patch
1126 Copyright: 2008, Joe Hacker <hack@example.org>
1127 License: GPL-2+
1128  [LICENSE TEXT]
1129
1130 Files: planet/vendor/compat_logging/*
1131 Copyright: 2002, Mark Smith <msmith@example.org>
1132 License: MIT
1133  [LICENSE TEXT]
1134
1135 Files: planet/vendor/httplib2/*
1136 Copyright: 2006, John Brown <brown@example.org>
1137 License: MIT2
1138  Unspecified MIT style license.
1139
1140 Files: planet/vendor/feedparser.py
1141 Copyright: 2007, Mike Smith <mike@example.org>
1142 License: PSF-2
1143  [LICENSE TEXT]
1144
1145 Files: planet/vendor/htmltmpl.py
1146 Copyright: 2004, Thomas Brown <coder@example.org>
1147 License: GPL-2+
1148  This program is free software; you can redistribute it
1149  and/or modify it under the terms of the GNU General Public
1150  License as published by the Free Software Foundation; either
1151  version 2 of the License, or (at your option) any later
1152  version.
1153  .
1154  This program is distributed in the hope that it will be
1155  useful, but WITHOUT ANY WARRANTY; without even the implied
1156  warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
1157  PURPOSE.  See the GNU General Public License for more
1158  details.
1159  .
1160  You should have received a copy of the GNU General Public
1161  License along with this package; if not, write to the Free
1162  Software Foundation, Inc., 51 Franklin St, Fifth Floor,
1163  Boston, MA  02110-1301 USA
1164  .
1165  On Debian systems, the full text of the GNU General Public
1166  License version 2 can be found in the file
1167  `/usr/share/common-licenses/GPL-2'.]]></programlisting>
1168       </para>
1169     </example>
1170   </section>
1171
1172 </article>