THE SPDX WIKI IS NO LONGER ACTIVE. ALL CONTENT HAS BEEN MOVED TO https://github.com/spdx
Difference between revisions of "Technical Team/SPDX Meta Tags"
From SPDX Wiki
(→Introduction) |
|||
Line 8: | Line 8: | ||
= Introduction = | = Introduction = | ||
− | Meta Tagging is a proposal by the SPDX Work-group to use [http://spdx.org/licenses/ short license identifiers] from the SPDX License List in place of software license headers. | + | Meta Tagging is a proposal by the SPDX Work-group to use [http://spdx.org/licenses/ short license identifiers] from the SPDX License List in place of software license headers. The advantages of doing this are numerous but include: |
+ | |||
+ | * The license list for SPDX is immutable and will never change. | ||
+ | * Its precise, there is no ambiguity due to variations in license header text. | ||
+ | * Its language neutral. | ||
+ | * Its easy to machine process. | ||
+ | * Leads to code that is easier to read (no messy headers to shift through). | ||
+ | * The license travels with the file. | ||
+ | * Its simple and can be used without much cost in interpreted environments like java Script, etc.,. | ||
+ | |||
+ | Although discussed by SPDX for some time, with proposals by Windriver, the U-boot project was the first open source project to adopt. This was the commit message by Wolfgang Denk the project maintainer: | ||
+ | |||
+ | <code> | ||
+ | Like many other projects, U-Boot has a tradition of including big | ||
+ | blocks of License headers in all files. This not only blows up the | ||
+ | source code with mostly redundant information, but also makes it very | ||
+ | difficult to generate License Clearing Reports. An additional problem | ||
+ | is that even the same licenses are referred to by a number of | ||
+ | slightly varying text blocks (full, abbreviated, different | ||
+ | indentation, line wrapping and/or white space, with obsolete address | ||
+ | information, ...) which makes automatic processing a nightmare. | ||
+ | |||
+ | To make this easier, such license headers in the source files will be | ||
+ | replaced with a single line reference to Unique Lincense Identifiers | ||
+ | as defined by the Linux Foundation's SPDX project [1]. For example, | ||
+ | in a source file the full "GPL v2.0 or later" header text will be | ||
+ | replaced by a single line: | ||
+ | |||
+ | SPDX-License-Identifier: GPL-2.0+ | ||
+ | </code> | ||
= Meta Tags = | = Meta Tags = |
Revision as of 19:36, 20 September 2013
SPDX Meta Tagging
Contents
Last Updated: 20 September 2013
Introduction
Meta Tagging is a proposal by the SPDX Work-group to use short license identifiers from the SPDX License List in place of software license headers. The advantages of doing this are numerous but include:
- The license list for SPDX is immutable and will never change.
- Its precise, there is no ambiguity due to variations in license header text.
- Its language neutral.
- Its easy to machine process.
- Leads to code that is easier to read (no messy headers to shift through).
- The license travels with the file.
- Its simple and can be used without much cost in interpreted environments like java Script, etc.,.
Although discussed by SPDX for some time, with proposals by Windriver, the U-boot project was the first open source project to adopt. This was the commit message by Wolfgang Denk the project maintainer:
Like many other projects, U-Boot has a tradition of including big blocks of License headers in all files. This not only blows up the source code with mostly redundant information, but also makes it very difficult to generate License Clearing Reports. An additional problem is that even the same licenses are referred to by a number of slightly varying text blocks (full, abbreviated, different indentation, line wrapping and/or white space, with obsolete address information, ...) which makes automatic processing a nightmare. To make this easier, such license headers in the source files will be replaced with a single line reference to Unique Lincense Identifiers as defined by the Linux Foundation's SPDX project [1]. For example, in a source file the full "GPL v2.0 or later" header text will be replaced by a single line: SPDX-License-Identifier: GPL-2.0+
Meta Tags
Examples
Entity | Link / Notes |
---|---|
U-boot | [1]Using SPDX-License-Identifier in place of a license header in source. |