This is an old revision of the document!
Software Project Data Exchange SPDX(R)
SPDX is a set of standards for communicating the components, licenses, and copyrights associated with software. The open adoption permitted by the BSD license is one of FreeBSD's strongest points so it is convenient for the project to facilitate the use of tooling and standards that make our licensing information clearer.
Introductory Information
A guide to using the license identifiers can be found in the SPDX specification, in particular appendix V.
There is an FAQ that provides a few additional details.
David Wheeler put together an SPDX tutorial.
If you want to programmatically access the license metadata – see the related article.
In terms of tools, there is a license grader that will scan source code and report how well the licenses are documented. It is relatively new, so it may have a few “rough edges”.
There is a variety of tools sponsored by SPDX. Gary O'Neall maintains the Java tools, but there are also Python tools being maintained as well.
Another good resource is the mailing lists for SPDX. The Legal team is responsible for maintaining the license list and the license matching guidelines. The Technical team works on the spec and tooling. The mailing lists can be found in the pages for each of the teams.
Progress
Other projects are in early adoption stages. Some projects seem happy replacing the license text with License tags but there is not consensus that this approach is correct. FreeBSD is currently only exploring the idea but in principle it would be a complementary tag, mainly an aide for license parsing tools, without any intention to replace existing license information.
This page is Work In Progress, and a placeholder for useful information.