SPDX is the Software Package Data Exchange project. It is a community-developed specification for software bill-of-material information, in a human-readable and machine-readable format.
Among other things, it aims to:
The SPDX community maintains a list of common (and uncommon) open source and source-available licenses, with a unique identifier for each, to decrease ambiguity about what license(s) apply to software.
The SPDX specification defines the format and contents of SPDX documents. Each SPDX document contains details about one or more packages of software.
And some examples / demonstrations I've been working on, to show how SPDX can be used to describe various combinations of software:
There are tools and libraries to work with SPDX files in a variety of languages. Here are some of the official tools:
If you're interested in participating in the project, come join us!