軟體包資料交換規範

軟體包資料交換規範（Software Package Data Exchange）簡稱SPDX，是軟體材料表（SBOM）的开源标准 。SPDX可以說明軟體元件、軟體授權、版權、安全參考資料以及其他有關軟體的元資料，其原始的設計目的是要提昇授權條款的相容性，之後也增加了額外的使用例，像是供應鏈的透明度以及安全性。SPDX是由Linux基金會主持，由社群驅動的SPDX計劃所撰寫。 SPDX標準目前已到2.3版。 SPDX標準定義了軟體材料表的文件，其中包括了有關軟體的SPDX元資料。此文件可以用JSON、YAML、RDF/XML、tag-value及試算表的形式表示。每一份SPDX文件會敘述一個或多個元件，可能是軟體包、特定的檔案，或是檔案的某一部份。每一個元件都有唯一的識別碼，因此各元件可以互相參照。 SPDX規格的第1版是在2011年8月發佈的，原始的設計目的是要簡化軟體授權相容確認，不過後續的版本加入了可以用在其他用途的功能，例如可以包括已知軟體漏洞的參考資訊。近期的SPDX已符合美國國家電信暨資訊管理局（英语：National Telecommunications and Information Administration）（NTIA）提出的「軟體材料表中的基本元素」。 SPDX 2.2.1於2020年10月提交到國際標準化組織，在2021年8月發行，成為ISO/IEC 5962:2021 Information technology — SPDX® Specification V2.2.1。 授權條款的識別方式為其完整名稱（例如Mozilla Public License 2.0"）以及較短的名稱（例如MPL-2.0）。 授權條款可以用運算子AND或OR組合，也可以加上分組(, )。 例如(Apache-2.0 OR MIT)表示可以選擇Apache-2.0（Apache许可证）或MIT （MIT許可證）。而(Apache-2.0 AND MIT)表示這二個都要符合。 也可使用"+"運算子，配合授權條款使用，表示也可以使用該授權條款較新的版本。例如Apache-1.1+表示Apache-1.1、Apache-2.0、或是更新的版本都可以適用。 SPDX在軟體授權條款的地方，準確的敘述其授權條款。SPDX不打算將授權條款分類，例如將類似BSD许可证的授權條款分類成"BSD-like"。 歐洲聯盟委員會在2020年發行了Joinup Licensing Assistant，可以在超過50種的授權條款之間比較及選擇，可以使用其SPDX識別符以及完整名稱。 GNU家族的授權條款（例如GNU GPLv2）有選項可以延伸到更新的版本。但對於SPDX表示法，就無法確定GPL-2.0是指「只有GPL 2.0版」還是「GPL 2.0版或更新版本」。因此，自從SPDX 3.0版的授權條款列表開始，GNU家族的授權條款有新的名稱。GPL-2.0-only表示「只有GPL 2.0版」，而GPL-2.0-or-later表示「GPL 2.0版或更新版本」。 SPDX授權條款識別符可以加在原始碼檔案的最前面，用短的字串準確的說明使用的授權條款。SPDX-License-Identifier語法由Das U-Boot在2013年提出，在2017年成為SPDX 2.1版中的一部份。歐洲自由軟體基金會（英语：FSFE）提出了REUSE，是可以檢查註解，快速的取出授權條款資訊的工具。 SPDX授權條款識別符也用在許多的软件包管理系统中，例如Npm、Python及Rust cargo。Fedora Linux裡RPM程式包元資料使用SPDX授權條款識別符，取代較早期使用的Callaway系統。Debian用的則是另一個略有不同的授權條款規格。 授權擴散（英语：License proliferation） SPDX Announces 3.0 Release Candidate with New Use Cases. Software Package Data Exchange (SPDX). 16 May 2023 [2024-01-04]. （原始内容存档于2024-01-04）.  Stewart, Kate. SPDX: It's Already in Use for Global Software Bill of Materials (SBOM) and Supply Chain Security. Linux Foundation. May 25, 2021 [2021-08-13]. （原始内容存档于2022-08-31）.  Survey of Existing SBOM Formats and Standards (PDF). National Telecommunications and Information Administration: 9. October 25, 2019 [2021-08-13]. （原始内容存档 (PDF)于2024-02-13）.  Bridgwater, Adrian. Linux Foundation eases open source licensing woes. Computer Weekly. August 19, 2011 [2021-08-13]. （原始内容存档于2021-11-30）.  Rushgrove, Gareth. Advancing SBOM standards: Snyk and SPDX. June 16, 2021 [2021-08-14]. （原始内容存档于2024-01-04）.  SPDX Current version. spdx.dev. [2022-11-22]. （原始内容存档于2023-09-09）.  SPDX and NTIA Minimum Elements for SBOM HOWTO. spdx.github.io. [2024-01-04]. （原始内容存档于2024-01-04）.  The Linux Foundation's Open Compliance Initiative Releases New SPDX Specification. Linux Foundation. October 4, 2016 [2021-12-01]. （原始内容存档于2022-05-26）.  The Minimum Elements For a Software Bill of Materials (SBOM) (PDF). National Telecommunications and Information Administration. [2021-12-01]. （原始内容存档 (PDF)于2024-04-05）.  ISO/IEC 5962:2021 Information technology — SPDX® Specification V2.2.1. iso.org. [2021-12-01]. （原始内容存档于2024-02-27）.  Bernard, Allen. SPDX becomes internationally recognized standard. TechRepublic. September 9, 2021 [2021-12-01]. （原始内容存档于2023-03-23）.  Odence, Phil. The Software Package Data Exchange (SPDX) Format. Dr Dobb's. 2010-06-23 [2012-08-31].  Joinup Licensing Assistant. [31 March 2020]. （原始内容存档于2020-09-08）.  Richard Stallman. For Clarity's Sake, Please Don't Say "Licensed under GNU GPL 2"!. GNU. [2018-05-24]. （原始内容存档于2024-04-07）.  Jilayne Lovejoy. License List 3.0 Released!. spdx.dev. 5 January 2018 [2021-09-02]. （原始内容存档于2018-01-05）.  Solving License Compliance at the Source: Adding SPDX License IDs - Linux Foundation. www.linuxfoundation.org. [2024-01-09]. （原始内容存档于2024-02-08） （英语）.  package.json | npm Docs. docs.npmjs.com. [2024-01-09]. （原始内容存档于2024-03-06） （英语）.  PEP 639 – Improving License Clarity with Better Package Metadata | peps.python.org. peps.python.org. [2024-01-09]. （原始内容存档于2024-02-05）.  The Manifest Format - The Cargo Book. doc.rust-lang.org. [2024-01-09]. （原始内容存档于2019-08-26）.  License: field in Spec File. Fedora Legal Documentation. [30 July 2023]. （原始内容存档于2024-03-24）.  Machine-readable debian/copyright file. www.debian.org. [2024-01-09]. （原始内容存档于2024-04-07）.  SPDX on the ISO website （页面存档备份，存于互联网档案馆） Linux Foundation Open Compliance Program （页面存档备份，存于互联网档案馆） Nathan Willis: A SPDX case study （页面存档备份，存于互联网档案馆） LWN.net