--- /dev/null
+<?xml version="1.0" encoding="utf-8"?>
+<?xml-stylesheet type="text/xsl"
+ href="http://docbook.sourceforge.net/release/xsl/current/html/docbook.xsl"?>
+
+<!-- Process this file with an XSLT processor, e.g. xsltproc: -->
+<!-- `xsltproc \
+ -''-nonet \
+ 1.0.xml' -->
+
+<!DOCTYPE article PUBLIC '-//OASIS//DTD DocBook XML V4.5//EN'
+ 'http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd'>
+
+<article class="specification" status="draft" lang="en" id="copyright-format">
+ <articleinfo>
+ <title>
+ Machine-readable <filename>debian/copyright</filename> file.
+ </title>
+ <subtitle>Version 1.0</subtitle>
+ <legalnotice>
+ <para>
+ Copying and distribution of this file, with or without modification, are
+ permitted in any medium without royalty provided the copyright notice
+ and this notice are preserved.
+ </para>
+ </legalnotice>
+ <abstract>
+ <para>
+ This specification was drafted as <ulink
+ url="http://dep.debian.net/deps/dep5/">DEP-5</ulink>, to establish a
+ standard, machine-readable format for
+ <filename>debian/copyright</filename> files within packages and
+ facilitate automated checking and reporting of licenses for packages and
+ sets of packages. The DEP drivers were Steve Langasek
+ <email>vorlon@debian.org</email> and Lars Wirzenius
+ <email>liw@liw.fi</email>.
+ </para>
+ </abstract>
+ </articleinfo>
+
+ <section id="introduction">
+ <title>Introduction</title>
+ <para>
+ This is a proposal to make <filename>debian/copyright</filename>
+ machine-interpretable. This file is one of the most important files in
+ Debian packaging, yet there is currently no standard format defined for it
+ and its contents vary tremendously across packages, making it difficult to
+ automatically extract licensing information.
+ </para>
+ <para>
+ This is not a proposal to change the policy in the short term. In
+ particular, nothing in this proposal supersedes or modifies any of the
+ requirements specified in Debian Policy regarding the appropriate detail
+ or granularity to use when documenting copyright and license status in
+ <filename>debian/copyright</filename>.
+ </para>
+ </section>
+
+ <section id="rationale">
+ <title>Rationale</title>
+ <para>
+ The diversity of free software licenses means that Debian needs to care
+ not only about the freeness of a given work, but also its license's
+ compatibility with the other parts of Debian it uses.
+ </para>
+ <para>
+ The arrival of the GPL version 3, its incompatibility with version 2, and
+ our inability to spot the software where the incompatibility might be
+ problematic is one prominent occurrence of this limitation.
+ </para>
+ <para>
+ There are earlier precedents, also. One is the GPL/OpenSSL
+ incompatibility. Apart from grepping
+ <filename>debian/copyright</filename>, which is prone to numerous false
+ positives (packaging under the GPL but software under another license) or
+ negatives (GPL software but with an <quote>OpenSSL special
+ exception</quote> dual licensing form), there is no reliable way to know
+ which software in Debian might be problematic.
+ </para>
+ <para>
+ And there is more to come. There are issues with shipping GPLv2-only
+ software with a CDDL operating system such as Nexenta. The GPL version 3
+ solves this issue, but not all GPL software can switch to it and we have
+ no way to know how much of Debian should be stripped from such a system.
+ </para>
+ <para>
+ A user might want to have a way to avoid software with certain licenses
+ they have a problem with, even if the licenses are DFSG-free. For example,
+ the Affero GPL.
+ </para>
+ </section>
+
+ <section id="acknowledgements">
+ <title>Acknowledgements</title>
+ <para>
+ Many people have worked on this specification over the years. The
+ following alphabetical list is incomplete, please suggest missing people:
+ Russ Allbery,
+ Ben Finney,
+ Sam Hocevar,
+ Steve Langasek,
+ Charles Plessy,
+ Noah Slater,
+ Jonas Smedegaard,
+ Lars Wirzenius.
+ </para>
+ </section>
+
+ <section id="file-syntax">
+ <title>File syntax</title>
+ <para>
+ The <filename>debian/copyright</filename> file must be
+ machine-interpretable, yet human-readable, while communicating all
+ mandated upstream information, copyright notices and licensing details.
+ </para>
+ <para>
+ The syntax of the file is the same as for other Debian control files, as
+ specified in the Debian Policy Manual. See its <ulink
+ url="http://www.debian.org/doc/debian-policy/ch-controlfields#s-controlsyntax">section
+ 5.1</ulink> for details. Extra fields can be added to any paragraph. No
+ prefixing is necessary or desired, but please avoid names similar to
+ standard ones so that mistakes are easier to catch. Future versions of
+ the <filename>debian/copyright</filename> specification will attempt to
+ avoid conflicting specifications for widely used extra fields.
+ </para>
+ <para>
+ There are four kinds values for fields. Each field specifies which kind
+ is allowed.
+ </para>
+
+ <section id="single-line">
+ <title>Single-line values</title>
+ <para>
+ A single-line value means that the whole value of a field must fit on a
+ single line. For example, the <varname>Format</varname> field has a
+ single line value specifying the version of the machine-readable format
+ that is used.
+ </para>
+ </section>
+
+ <section id="white-space-lists">
+ <title>White space separated lists</title>
+ <para>
+ A white space separated list means that the field value may be on one
+ line or many, but values in the list are separated by one or more white
+ space characters (including space, TAB, and newline). For example, the
+ <varname>Files</varname>field has a list of filename patterns.
+ </para>
+ </section>
+
+ <section id="line-based-lists">
+ <title>Line based lists</title>
+ <para>
+ Another kind of list value has one value per line. For example,
+ <varname>Copyright</varname> can list many copyright statements, one per
+ line.
+ </para>
+ </section>
+
+ <section id="formatted-text">
+ <title>Text formatted like package long descriptions</title>
+ <para>
+ Formatted text fields use the same rules as the long description in a
+ package's <varname>Description</varname> field, possibly also using the
+ first line as a synopsis, like <varname>Description</varname> uses it
+ for the short description. See Debian Policy's section 5.6.13, <ulink
+ url="http://www.debian.org/doc/debian-policy/ch-controlfields#s-f-Description"><quote>Description</quote></ulink>,
+ for details. For example, <varname>Disclaimer</varname> has no special
+ first line, whereas <varname>License</varname> does.
+ </para>
+ </section>
+ </section>
+
+ <section id="paragraphs">
+ <title>Paragraphs</title>
+ <para>
+ There are three kinds of paragraphs: the first one is called the
+ <link linkend="header-paragraph">header paragraph</link>. Every other
+ paragraph is either a <link linkend="files-paragraph">Files</link>
+ paragraph or a <link linkend="stand-alone-license-paragraph">stand-alone
+ license</link> paragraph. This is similar to source and binary package
+ paragraphs in <filename>debian/control</filename> files.
+ </para>
+
+ <section id="header-paragraph">
+ <title>Header paragraph (Once)</title>
+ <section id="format-header-field">
+ <title><varname>Format</varname></title>
+ <para>
+ Required single line: URI of the format specification, such as:
+ <literal>http://www.debian.org/doc/copyright-format/1.0</literal>
+ </para>
+ </section>
+
+ <section id="upstream-name-header-field">
+ <title><varname>Upstream-Name</varname></title>
+ <para>
+ Optional single line: the name upstream uses for the software
+ </para>
+ </section>
+
+ <section id="upstream-contact-header-field">
+ <title><varname>Upstream-Contact</varname></title>
+ <para>
+ Optional line based list: the preferred address(es) to reach the
+ upstream project. May be free-form text, but by convention will
+ usually be written as a list of RFC5322 addresses or URIs.
+ </para>
+ </section>
+
+ <section id="source-header-field">
+ <title><varname>Source</varname></title>
+ <para>
+ Optional formatted text, no synopsis: an explanation from where the
+ upstream source came from. Typically this would be a URL, but it might
+ be a free-form explanation. The Debian Policy section <ulink
+ url="http://www.debian.org/doc/debian-policy/ch-docs#s-copyrightfile">12.5</ulink>
+ requires this information unless there are no upstream sources, which
+ is mainly the case for native Debian packages. If the upstream source
+ has been modified to remove non-free parts, that should be explained
+ in this field.
+ </para>
+ </section>
+
+ <section id="disclaimer-header-field">
+ <title><varname>Disclaimer</varname></title>
+ <para>
+ Optional formatted text, no synopsis: this field can be used in the
+ case of non-free and contrib packages (see <ulink
+ url="http://www.debian.org/doc/debian-policy/ch-docs#s-copyrightfile">12.5</ulink>)
+ </para>
+ </section>
+
+ <section id="comment-header-field">
+ <title><varname>Comment</varname></title>
+ <para>
+ Optional formatted text, no synopsis: this field can provide
+ additional information. For example, it might quote an e-mail from
+ upstream justifying why the license is acceptable to the main archive,
+ or an explanation of how this version of the package has been forked
+ from a version known to be DFSG-free, even though the current upstream
+ version is not.
+ </para>
+ </section>
+
+ <section id="license-header-field">
+ <title><varname>License</varname></title>
+ <para>
+ Optional formatted text, with synopsis: in the header paragraph
+ (no <varname>Files</varname> specification), this field gives the
+ license information for the package as a whole, which may be different
+ or simplified from a combination of all the per-file license
+ information. <varname>License</varname> below in the <link
+ linkend="files-paragraph">Files paragraph</link> section.
+ </para>
+ </section>
+
+ <section id="copyright-header-field">
+ <title><varname>Copyright</varname></title>
+ <para>
+ Optional line based list: in the header paragraph (no
+ <varname>Files</varname> specification), this field gives the
+ copyright information for the package as a whole, which may be
+ different or simplified from a combination of all the per-file
+ copyright information. See also <varname>Copyright</varname> below
+ in the <link linkend="files-paragraph">Files paragraph</link>
+ section.
+ </para>
+ <para>
+ The <varname>Copyright</varname> and <varname>License</varname> fields
+ in the <emphasis>header paragraph</emphasis> may complement but do not
+ replace the <emphasis>files paragraphs</emphasis>. They can be used
+ to summarise the contributions and redistribution terms for the whole
+ package, for instance when a work combines a permissive and a copyleft
+ license, or to document a <emphasis>compilation copyright</emphasis>
+ and license. It is possible to use only <varname>License</varname> in
+ the header paragraph, but <varname>Copyright</varname>alone makes no
+ sense.
+ </para>
+ </section>
+
+ <section id="example-header-paragraph">
+ <title>Example header paragraph</title>
+<programlisting>Format: <VERSIONED_FORMAT_URL>
+Upstream-Name: SOFTware
+Upstream-Contact: John Doe <john.doe@example.com>
+Source: http://www.example.com/software/project</programlisting>
+ </section>
+ </section>
+
+ <section id="files-paragraph">
+ <title>Files paragraph (Repeatable)</title>
+ <para>
+ The declaration of copyright and license for files is done in one or
+ more paragraphs. In the simplest case, a single paragraph can be used
+ which applies to all files and lists all applicable copyrights and
+ licenses.
+ </para>
+
+ <section id="files-files-field">
+ <title><varname>Files</varname></title>
+ <para>
+ Required white space separated list: list of patterns indicating files
+ covered by the license and copyright specified in this paragraph.
+ </para>
+ <para>
+ Filename patterns in the <varname>Files</varname> field are specified
+ using a simplified shell glob syntax. Patterns are separated by white
+ space.
+ <itemizedlist>
+ <listitem>
+ <para>
+ Only the wildcards <literal>*</literal> and <literal>?</literal>
+ apply; the former matches any number of characters (including
+ none), the latter a single character. Both match a slash
+ (<literal>/</literal>) and a leading dot.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ Patterns match pathnames that start at the root of the source
+ tree. Thus, <quote><filename>Makefile.in</filename></quote>
+ matches only the file at the root of the tree, but
+ <quote><filename>*/Makefile.in</filename></quote> matches at any
+ depth.
+ </para>
+ </listitem>
+ <listitem>
+ <para>
+ The backslash (<literal>\</literal>) is used to remove the magic
+ from the next character; see table below.
+ </para>
+ </listitem>
+ </itemizedlist>
+ <informaltable>
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>Escape sequence</entry>
+ <entry>Matches</entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry><literal>\*</literal></entry>
+ <entry>star (asterisk)</entry>
+ </row>
+ <row>
+ <entry><literal>\?</literal></entry>
+ <entry>question mark</entry>
+ </row>
+ <row>
+ <entry><literal>\\</literal></entry>
+ <entry>backslash</entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+ Any other character following a backslash is an error.
+ </para>
+ <para>
+ Multiple <varname>Files</varname> paragraphs are allowed. The last
+ paragraph that matches a particular file applies to it.
+ </para>
+ <para>
+ Exclusions are done by having multiple <varname>Files</varname>
+ paragraphs.
+ </para>
+ </section>
+
+ <section id="copyright-files-field">
+ <title><varname>Copyright</varname></title>
+ <para>
+ Required line based list: one or more free-form copyright
+ statement(s), one per line, that apply to the files matched by the
+ above pattern. If a work has no copyright holder (i.e., it is in
+ the public domain), that information should be recorded here.
+ </para>
+ <para>
+ The <varname>Copyright</varname> field collects all relevant copyright
+ notices for the files of this paragraph. Not all copyright notices
+ may apply to every individual file, and years of publication for one
+ copyright holder may be gathered together. For example, if file A
+ has:
+<programlisting>Copyright 2008 John Smith
+Copyright 2009 Angela Watts</programlisting>
+ and file B has:
+<programlisting>Copyright 2010 Angela Watts</programlisting>
+ the <varname>Copyright</varname> field for a stanza
+ covering both file A and file B need contain only:
+<programlisting>Copyright 2008 John Smith
+Copyright 2009, 2010 Angela Watts</programlisting>
+ </para>
+ <para>
+ The <varname>Copyright</varname> field may contain the original
+ copyright statement copied exactly (including the word
+ <quote>Copyright</quote>), or it can shorten the text, as long
+ as it does not sacrifice information. Examples in this specification
+ use both forms.
+ </para>
+ </section>
+
+ <section id="license-files-field">
+ <title><varname>License</varname></title>
+ <para>
+ Required formatted text, with synopsis: licensing terms for the files
+ listed in <varname>Files</varname> field for this paragraph.
+ </para>
+ <para>
+ First line: an abbreviated name for the license, or expression
+ giving alternatives (see <link linkend="license-short-name">Short
+ names</link> section for a list of standard abbreviations). If there
+ are licenses present in the package without a standard short name, an
+ arbitrary short name may be assigned for these licenses. These
+ arbitrary names are only guaranteed to be unique within a single
+ copyright file.
+ </para>
+ <para>
+ Remaining lines: if left blank here, the file
+ <emphasis>must</emphasis> include a stand-alone
+ <varname>License</varname> paragraph matching each license short
+ name listed on the first line (see the <link
+ linkend="stand-alone-license-paragraph">Standalone License
+ Paragraph</link> section). Otherwise, this field should either
+ include the full text of the license(s) or include a pointer to the
+ license file under <filename>/usr/share/common-licenses</filename>.
+ This field should include all text needed in order to fulfill both
+ Debian Policy's requirement for including a copy of the software's
+ distribution license (<ulink
+ url="http://www.debian.org/doc/debian-policy/ch-docs#s-copyrightfile">12.5</ulink>),
+ and any license requirements to include warranty disclaimers or other
+ notices with the binary package.
+ </para>
+ </section>
+
+ <section id="comment-files-field">
+ <title><varname>Comment</varname></title>
+ <para>
+ Same as the <link linkend="comment-header-field">
+ <varname>Comment</varname></link> field in the header paragraph.
+ </para>
+ </section>
+
+ <section id="example-files-paragraph">
+ <title>Example files paragraphs</title>
+<programlisting>Files: *
+Copyright: 1975-2010 Ulla Upstream
+License: GPL-2+
+
+Files: debian/*
+Copyright: 2010 Daniela Debianizer
+License: GPL-2+
+
+Files: debian/patches/fancy-feature
+Copyright: 2010 Daniela Debianizer
+License: GPL-3+
+
+Files: */*.1
+Copyright: 2010 Manuela Manpager
+License: GPL-2+</programlisting>
+ <para>
+ In this example, all files are copyright by the upstream and licensed
+ under the GPL, version 2 or later, with three exceptions. All the
+ Debian packaging files are copyright by the packager, and further one
+ specific file providing a new feature is licensed differently.
+ Finally, there are some manual pages added to the package, written by
+ a third person.
+ </para>
+ </section>
+ </section>
+
+ <section id="stand-alone-license-paragraph">
+ <title>Standalone License Paragraph (Optional, Repeatable)</title>
+ <para>
+ Where a set of files are dual (tri, etc) licensed, or when the same
+ license occurs multiple times, you can use a single line
+ <varname>License</varname> field and standalone
+ <varname>License</varname> paragraphs to expand the license short names.
+ </para>
+ <example>
+ <title>tri-licensed files</title>
+<programlisting>Files: src/js/editline/*
+Copyright: 1993, John Doe
+ 1993, Joe Average
+License: MPL-1.1 or GPL-2 or LGPL-2.1
+
+License: MPL-1.1
+ [LICENSE TEXT]
+
+License: GPL-2
+ [LICENSE TEXT]
+
+License: LGPL-2.1
+ LICENSE TEXT]</programlisting>
+ </example>
+
+ <example>
+ <title>recurrent license</title>
+<programlisting>Files: src/js/editline/*
+Copyright: 1993, John Doe
+ 1993, Joe Average
+License: MPL-1.1
+
+Files: src/js/fdlibm/*
+Copyright: 1993, J-Random Corporation
+License: MPL-1.1
+
+License: MPL-1.1
+ [LICENSE TEXT]</programlisting>
+ </example>
+ </section>
+ </section>
+
+ <section id="license-specification">
+ <title>License specification</title>
+
+ <section id="license-short-name">
+ <title>Short name</title>
+ <para>
+ Much of the value of a machine-parseable copyright file lies in being
+ able to correlate the licenses of multiple pieces of software. To that
+ end, this spec defines standard short names for a number of commonly
+ used licenses, which can be used in the first line of a
+ <varname>License</varname> field.
+ </para>
+ <para>
+ These short names have the specified meanings across all uses of this
+ file format, and <emphasis>must not</emphasis> be used to refer to any
+ other licenses. Parsers may thus rely on these short names referring to
+ the same licenses wherever they occur, without needing to parse or
+ compare the full license text.
+ </para>
+ <para>
+ From time to time, licenses may be added to or removed from the list of
+ standard short names. Such changes in the list of short names will
+ always be accompanied by changes to the recommended
+ <varname>Format</varname> value. Implementers who are parsing copyright
+ files should take care not to assume anything about the meaning of
+ license short names for unknown <varname>Format</varname> versions.
+ </para>
+ <para>
+ Use of a standard short name does not override the Debian Policy
+ requirement to include the full license text in
+ <filename>debian/copyright</filename>, nor any requirements in the
+ license of the work regarding reproduction of legal notices. This
+ information must still be included in the <varname>License</varname>
+ field, either in a stand-alone license paragraph or in the relevant
+ files paragraph.
+ </para>
+ <para>
+ For licenses which have multiple versions in use, the version number is
+ added, using a dash as a separator. If omitted, the lowest version
+ number is implied. When the license grant permits using the terms of any
+ later version of that license, the short name is finished with a plus
+ sign. For <link linkend="spdx">SPDX</link> compatibility, trailing
+ <emphasis>dot-zeroes</emphasis> are considered to be equal to plainer
+ version (e.g., <quote>2.0.0</quote> is considered equal to
+ <quote>2.0</quote> and <quote>2</quote>).
+ </para>
+ <para>
+ Currently, the full text of the licenses is only available in the <ulink
+ url="http://spdx.org/wiki/working-version-license-list">working version
+ of the SPDX license list</ulink>.
+ </para>
+ <informaltable>
+ <tgroup cols="2">
+ <thead>
+ <row>
+ <entry>Keyword</entry>
+ <entry>Meaning</entry>
+ </row>
+ </thead>
+ <tbody>
+ <row>
+ <entry>public-domain</entry>
+ <entry>
+ No license required for any purpose; the work is not subject to
+ copyright in any jurisdiction.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ Apache
+ </entry>
+ <entry>
+ Apache license
+ <ulink url="http://spdx.org/licenses/ASL-1.0">1.0</ulink>,
+ <ulink url="http://spdx.org/licenses/ASL-2.0">2.0</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ Artistic
+ </entry>
+ <entry>
+ Artistic license
+ <ulink url="http://spdx.org/licenses/Artistic-1.0">1.0</ulink>,
+ <ulink url="http://spdx.org/licenses/Artistic-2.0">2.0</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ BSD-2-clause
+ </entry>
+ <entry>
+ Berkeley software distribution license,
+ <ulink url="http://spdx.org/licenses/BSD-2-Clause">2-clause
+ version</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ BSD-3-clause
+ </entry>
+ <entry>
+ Berkeley software distribution license,
+ <ulink url="http://spdx.org/licenses/BSD-3-Clause">3-clause
+ version</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ BSD-4-clause
+ </entry>
+ <entry>
+ Berkeley software distribution license,
+ <ulink url="http://spdx.org/licenses/BSD-4-Clause">4-clause
+ version</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ ISC
+ </entry>
+ <entry>
+ <ulink url="http://spdx.org/licenses/ISC">Internet Software
+ Consortium</ulink>, sometimes also known as the OpenBSD License.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ CC-BY
+ </entry>
+ <entry>
+ Creative Commons Attribution license
+ <ulink url="http://spdx.org/licenses/CC-BY-1.0">1.0</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-2.0">2.0</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-2.5">2.5</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-3.0">3.0</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ CC-BY-SA
+ </entry>
+ <entry>
+ Creative Commons Attribution Share Alike license
+ <ulink url="http://spdx.org/licenses/CC-BY-SA-1.0">1.0</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-SA-2.0">2.0</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-SA-2.5">2.5</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-SA-3.0">3.0</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ CC-BY-ND
+ </entry>
+ <entry>
+ Creative Commons Attribution No Derivatives license
+ <ulink url="http://spdx.org/licenses/CC-BY-ND-1.0">1.0</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-ND-2.0">2.0</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-ND-2.5">2.5</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-ND-3.0">3.0</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ CC-BY-NC
+ </entry>
+ <entry>
+ Creative Commons Attribution Non-Commercial license
+ <ulink url="http://spdx.org/licenses/CC-BY-NC-1.0">1.0</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-NC-2.0">2.0</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-NC-2.5">2.5</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-NC-3.0">3.0</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ CC-BY-NC-SA
+ </entry>
+ <entry>
+ Creative Commons Attribution Non-Commercial Share Alike license
+ <ulink url="http://spdx.org/licenses/CC-BY-NC-SA-1.0">1.0</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-NC-SA-2.0">2.0</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-NC-SA-2.5">2.5</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-NC-SA-3.0">3.0</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ CC-BY-NC-ND
+ </entry>
+ <entry>
+ Creative Commons Attribution Non-Commercial No Derivatives license
+ <ulink url="http://spdx.org/licenses/CC-BY-NC-ND-1.0">1.0</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-NC-ND-2.0">2.0</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-NC-ND-2.5">2.5</ulink>,
+ <ulink url="http://spdx.org/licenses/CC-BY-NC-ND-3.0">3.0</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ CC0
+ </entry>
+ <entry>
+ Creative Commons <ulink
+ url="http://creativecommons.org/license/zero/">Universal
+ waiver</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ CDDL
+ </entry>
+ <entry>
+ <ulink url="http://spdx.org/licenses/CDDL">Common Development
+ and Distribution License</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ CPL
+ </entry>
+ <entry>
+ <ulink url="http://spdx.org/licenses/CPL-1.0">IBM Common Public
+ License</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ EFL
+ </entry>
+ <entry>
+ The Eiffel Forum License
+ <ulink url="http://spdx.org/licenses/EPL-1.0">1.0</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ Expat
+ </entry>
+ <entry>
+ The <ulink url="http://www.jclark.com/xml/copying.txt">Expat</ulink>
+ license.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ GPL
+ </entry>
+ <entry>
+ GNU General Public License
+ <ulink url="http://spdx.org/licenses/GPL-1.0">1.0</ulink>,
+ <ulink url="http://spdx.org/licenses/GPL-2.0">2.0</ulink>,
+ <ulink url="http://spdx.org/licenses/GPL-3.0">3.0</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ LGPL
+ </entry>
+ <entry>
+ GNU Lesser General Public License
+ <ulink url="http://spdx.org/licenses/LGPL-2.1">2.1</ulink>,
+ <ulink url="http://spdx.org/licenses/LGPL-3.0">3.0</ulink>, or
+ GNU Library General Public License
+ <ulink url="http://spdx.org/licenses/LGPL-1.0">1.0</ulink>,
+ <ulink url="http://spdx.org/licenses/LGPL-2.0">2.0</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ GFDL
+ </entry>
+ <entry>
+ <ulink url="http://spdx.org/licenses/FDL-1.0">GNU Free
+ Documentation License</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ GFDL-NIV
+ </entry>
+ <entry>
+ GNU Free Documentation License, with no invariant sections.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ LPPL
+ </entry>
+ <entry>
+ <ulink url="http://www.latex-project.org/lppl/">LaTeX Project
+ Public License</ulink>
+ <ulink url="http://spdx.org/licenses/LPPL-1.0">1.0</ulink>,
+ <ulink url="http://spdx.org/licenses/LPPL-1.1">1.1</ulink>,
+ <ulink url="http://spdx.org/licenses/LPPL-1.2">1.2</ulink>,
+ <ulink url="http://spdx.org/licenses/LPPL-1.3c">1.3c</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ MPL
+ </entry>
+ <entry>
+ Mozilla Public License
+ <ulink url="http://spdx.org/licenses/MPL-1.1">1.1</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ Perl
+ </entry>
+ <entry>
+ <ulink url="http://dev.perl.org/licenses/">Perl</ulink> license
+ (use <quote><literal>GPL-1+ or Artistic-1</literal></quote>
+ instead).
+ </entry>
+ </row>
+ <row>
+ <entry>
+ Python-CNRI
+ </entry>
+ <entry>
+ <ulink url="http://spdx.org/licenses/Python-CNRI">Python
+ license</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ QPL
+ </entry>
+ <entry>
+ Q Public License <ulink
+ url="http://spdx.org/licenses/QPL-1.0">1.0</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ W3C
+ </entry>
+ <entry>
+ <ulink url="http://spdx.org/licenses/W3C">W3C Software
+ License</ulink> For more information, consult the
+ <ulink
+ url="http://www.w3.org/Consortium/Legal/IPR-FAQ-20000620">W3C
+ Intellectual Rights FAQ</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ Zlib
+ </entry>
+ <entry>
+ <ulink url="http://spdx.org/licenses/Zlib">
+ zlib/libpng license</ulink>.
+ </entry>
+ </row>
+ <row>
+ <entry>
+ Zope
+ </entry>
+ <entry>
+ Zope Public License
+ <ulink url="http://spdx.org/licenses/ZPL-1.0">1.0</ulink>,
+ <ulink url="http://spdx.org/licenses/ZPL-2.0">2.0</ulink>,
+ <ulink url="http://spdx.org/licenses/ZPL-2.1">2.1</ulink>.
+ </entry>
+ </row>
+ </tbody>
+ </tgroup>
+ </informaltable>
+ <para>
+ There are <ulink
+ url="http://en.wikipedia.org/wiki/MIT_License#Various_versions">many
+ versions of the MIT license</ulink>. Please use Expat instead, when it
+ matches.
+ </para>
+ <para>
+ Exceptions and clarifications are signaled in plain text, by appending
+ <literal>with <varname><replaceable>keywords</replaceable></varname>
+ exception</literal> to the short name. This document provides a list of
+ keywords that refer to the most frequent exceptions.
+ </para>
+ <para>
+ The GPL <literal>Font</literal> exception refers to the text added to the
+ license notice of each file as specified at <ulink
+ url="http://www.gnu.org/licenses/gpl-faq#FontException">How does the GPL
+ apply to fonts</ulink>. The precise text corresponding to this
+ exception is:
+<programlisting>As a special exception, if you create a document which uses this font,
+and embed this font or unaltered portions of this font into the
+document, this font does not by itself cause the resulting document to
+be covered by the GNU General Public License. This exception does not
+however invalidate any other reasons why the document might be covered
+by the GNU General Public License. If you modify this font, you may
+extend this exception to your version of the font, but you are not
+obligated to do so. If you do not wish to do so, delete this exception
+statement from your version.</programlisting>
+ </para>
+ <para>
+ The GPL <literal>OpenSSL</literal> exception gives permission to link GPL-licensed
+code with the OpenSSL library, which contains GPL-incompatible clauses.
+For more information, see <ulink
+url="http://www.gnome.org/~markmc/openssl-and-the-gpl">The -OpenSSL License and
+The GPL</ulink> by Mark
+McLoughlin and the message <ulink
+url="http://lists.debian.org/debian-legal/2004/05/msg00595.html">middleman
+software license conflicts with OpenSSL</ulink>
+by Mark McLoughlin on the <emphasis>debian-legal</emphasis> mailing list. The text corresponding
+to this exception is:
+<programlisting>In addition, as a special exception, the copyright holders give
+permission to link the code of portions of this program with the
+OpenSSL library under certain conditions as described in each
+individual source file, and distribute linked combinations including
+the two.
+
+You must obey the GNU General Public License in all respects for all
+of the code used other than OpenSSL. If you modify file(s) with this
+exception, you may extend this exception to your version of the
+file(s), but you are not obligated to do so. If you do not wish to do
+so, delete this exception statement from your version. If you delete
+this exception statement from all source files in the program, then
+also delete it here.</programlisting>
+ </para>
+
+ <section id="public-domain">
+ <title>Public domain</title>
+ <para>
+ The <varname>License</varname> short name
+ <literal>public-domain</literal> does not refer to a set of license
+ terms. There are some works which are not subject to copyright in
+ any jurisdiction and therefore no license is required for any
+ purpose covered by copyright law. This short name is an explicit
+ declaration that the associated files are <quote>in the public
+ domain</quote>.
+ </para>
+ <para>
+ Widespread misunderstanding about copyright in general, and the
+ public domain in particular, results in the common assertion that a
+ work is in the public domain when this is partly or wholly untrue
+ for that work. The <ulink
+ url="http://en.wikipedia.org/wiki/Public_domain">Wikipedia article
+ on public domain</ulink> is a useful reference for this subject.
+ </para>
+ <para>
+ When the <varname>License</varname> field in a paragraph has the
+ short name <literal>public-domain</literal>, the remaining lines of
+ the field <emphasis>must</emphasis> explain exactly what exemption
+ the corresponding files for that paragraph have from default
+ copyright restrictions.
+ </para>
+ </section>
+ </section>
+
+ <section id="license-syntax">
+ <title>Syntax</title>
+ <para>
+ License names are case-insensitive, and may not contain spaces.
+ </para>
+ <para>
+ In case of multi-licensing, the license short names are separated by
+ <literal>or</literal> when the user can chose between different licenses,
+ and by <literal>and</literal> when use of the work must simultaneously
+ comply with the terms of multiple licenses.
+ </para>
+ <para>
+ For instance, this is a simple, <quote>GPL version 2 or later</quote>
+ field:
+<programlisting>License: GPL-2+</programlisting>
+ This is a dual-licensed GPL/Artistic work such as Perl:
+<programlisting>License: GPL-1+ or Artistic</programlisting>
+ This is for a file that has both GPL and classic BSD code in it:
+<programlisting>License: GPL-2+ and BSD</programlisting>
+ For the most complex cases, the comma is used to disambiguate the
+ priority of <literal>or</literal>s and <literal>and</literal>s
+ <literal>and</literal> has the priority over <literal>or</literal>,
+ unless preceded by a comma. For instance:
+ </para>
+ <simpara>
+ <literal>A or B and C</literal> means <literal>A or (B and C)</literal>.
+ </simpara>
+ <simpara>
+ <literal>A or B, and C</literal> means <literal>(A or B), and
+ C</literal>.
+ </simpara>
+ <para>
+ This is for a file that has Perl code and classic BSD code in it:
+<programlisting>License: GPL-2+ or Artistic-2.0, and BSD</programlisting>
+ A <literal>GPL-2+</literal> work with the <literal>OpenSSL</literal>
+ exception is in effect a dual-licensed work that can be redistributed
+ either under the <literal>GPL-2+</literal>, or under the
+ <literal>GPL-2+</literal> with the <literal>OpenSSL</literal> exception.
+ It is thus expressed as <literal>GPL-2+ with OpenSSL
+ exception</literal>:
+<programlisting>License: GPL-2+ with OpenSSL exception
+ This program is free software; you can redistribute it
+ and/or modify it under the terms of the GNU General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later
+ version.
+ .
+ In addition, as a special exception, the author of this
+ program gives permission to link the code of its
+ release with the OpenSSL project's "OpenSSL" library (or
+ with modified versions of it that use the same license as
+ the "OpenSSL" library), and distribute the linked
+ executables. You must obey the GNU General Public
+ License in all respects for all of the code used other
+ than "OpenSSL". If you modify this file, you may extend
+ this exception to your version of the file, but you are
+ not obligated to do so. If you do not wish to do so,
+ delete this exception statement from your version.
+ .
+ This program is distributed in the hope that it will be
+ useful, but WITHOUT ANY WARRANTY; without even the implied
+ warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ PURPOSE. See the GNU General Public License for more
+ details.
+ .
+ You should have received a copy of the GNU General Public
+ License along with this package; if not, write to the Free
+ Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+ Boston, MA 02110-1301 USA
+ .
+ On Debian systems, the full text of the GNU General Public
+ License version 2 can be found in the file
+ `/usr/share/common-licenses/GPL-2'.</programlisting>
+ </para>
+ </section>
+
+ <section id="spdx">
+ <title>SPDX</title>
+ <para>
+ <ulink url="http://spdx.org/">SPDX</ulink> is an attempt to standardize
+ a format for communicating the components, licenses and copyrights
+ associated with a software package. It and the machine-readable
+ <filename>debian/copyright</filename> format attempt to be somewhat
+ compatible. However, the two formats have different aims, and so the
+ formats are different. The <ulink
+ url="http://wiki.debian.org/Proposals/CopyrightFormat">DEP5 wiki
+ page</ulink> will be used to track the differences.
+ </para>
+ </section>
+ </section>
+
+ <section id="examples">
+ <title>Examples</title>
+ <example>
+ <title>Simple</title>
+ <para>
+ A possible <filename>debian/copyright</filename> file for the program
+ <quote>X Solitaire</quote> distributed in the Debian source package
+ <literal>xsol</literal>:
+<programlisting><![CDATA[Format: <VERSIONED_FORMAT_URL>
+Upstream-Name: X Solitaire
+Source: ftp://ftp.example.com/pub/games
+
+Files: *
+Copyright: Copyright 1998 John Doe <jdoe@example.com>
+License: GPL-2+
+ This program is free software; you can redistribute it
+ and/or modify it under the terms of the GNU General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later
+ version.
+ .
+ This program is distributed in the hope that it will be
+ useful, but WITHOUT ANY WARRANTY; without even the implied
+ warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ PURPOSE. See the GNU General Public License for more
+ details.
+ .
+ You should have received a copy of the GNU General Public
+ License along with this package; if not, write to the Free
+ Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+ Boston, MA 02110-1301 USA
+ .
+ On Debian systems, the full text of the GNU General Public
+ License version 2 can be found in the file
+ `/usr/share/common-licenses/GPL-2'.
+
+Files: debian/*
+Copyright: Copyright 1998 Jane Smith <jsmith@example.net>
+License:
+ [LICENSE TEXT]]]></programlisting>
+ </para>
+ </example>
+
+ <example>
+ <title>Complex</title>
+ <para>
+ A possible <filename>debian/copyright</filename> file for the program
+ <quote>Planet Venus</quote>, distributed in the Debian source
+ package <literal>planet-venus</literal>:
+<programlisting><![CDATA[Format: <VERSIONED_FORMAT_URL>
+Upstream-Name: Planet Venus
+Upstream-Contact: John Doe <jdoe@example.com>
+Source: http://www.example.com/code/venus
+
+Files: *
+Copyright: 2008, John Doe <jdoe@example.com>
+ 2007, Jane Smith <jsmith@example.org>
+ 2007, Joe Average <joe@example.org>
+ 2007, J. Random User <jr@users.example.com>
+License: PSF-2
+ [LICENSE TEXT]
+
+Files: debian/*
+Copyright: 2008, Dan Developer <dan@debian.example.com>
+License:
+ Copying and distribution of this package, with or without
+ modification, are permitted in any medium without royalty
+ provided the copyright notice and this notice are
+ preserved.
+
+Files: debian/patches/theme-diveintomark.patch
+Copyright: 2008, Joe Hacker <hack@example.org>
+License: GPL-2+
+ [LICENSE TEXT]
+
+Files: planet/vendor/compat_logging/*
+Copyright: 2002, Mark Smith <msmith@example.org>
+License: MIT
+ [LICENSE TEXT]
+
+Files: planet/vendor/httplib2/*
+Copyright: 2006, John Brown <brown@example.org>
+License: MIT2
+ Unspecified MIT style license.
+
+Files: planet/vendor/feedparser.py
+Copyright: 2007, Mike Smith <mike@example.org>
+License: PSF-2
+ [LICENSE TEXT]
+
+Files: planet/vendor/htmltmpl.py
+Copyright: 2004, Thomas Brown <coder@example.org>
+License: GPL-2+
+ This program is free software; you can redistribute it
+ and/or modify it under the terms of the GNU General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later
+ version.
+ .
+ This program is distributed in the hope that it will be
+ useful, but WITHOUT ANY WARRANTY; without even the implied
+ warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ PURPOSE. See the GNU General Public License for more
+ details.
+ .
+ You should have received a copy of the GNU General Public
+ License along with this package; if not, write to the Free
+ Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+ Boston, MA 02110-1301 USA
+ .
+ On Debian systems, the full text of the GNU General Public
+ License version 2 can be found in the file
+ `/usr/share/common-licenses/GPL-2'.]]></programlisting>
+ </para>
+ </example>
+ </section>
+
+ <section id="appendix">
+ <title>
+ Appendix: Note about the use of this format in Debian
+ </title>
+ <para>
+ The Debian Policy (ยง<ulink
+ url="http://www.debian.org/doc/debian-policy/ch-docs#s-copyrightfile">12.5</ulink>)
+ demands that each package is accompanied by a file,
+ <filename>debian/copyright</filename> in source packages and
+ <filename>/usr/share/doc/package/copyright</filename> in binary packages,
+ that contains a verbatim copy of its copyright and distribution license.
+ In addition, it requires that copyrights must be extractable by mechanical
+ means. This proposal for machine-readable copyright and license summary
+ files has been crafted for Debian's use, but it is our hope that other
+ software distributions, as well as upstream developers will adopt it, so
+ that review efforts can be easily reproduced and shared.
+ </para>
+ <para>
+ The copyright of the Debian packaging and the history of package
+ maintainers is simply indicated in a <literal>Files: debian/*</literal>
+ paragraph.
+ </para>
+ </section>
+</article>