面向大规模的开源软件许可证识别:基于 World of Code 的全面数据集
软件工程
2025-06-23 v3
摘要
开源软件 (OSS) 的不断增长及其不同类型的复用,使得在软件供应链中进行准确的许可证识别这一至关重要的法律和合规任务变得极其困难。本研究提出了一个使用 World of Code (WoC) 基础设施创建的可复用且全面的 OSS 许可证数据集。通过扫描包含 "license" 的文件路径中的所有文件,并应用基于赫夫曼算法的近似匹配来从 SPDX 列表中识别最相似的许可证,我们发现并识别了 550 万个独立的许可证块(license blobs)存在于 OSS 项目中。该数据集包括详细的项目到许可证 (P2L) 映射,伴随提交时间戳,使其能够动态分析许可证的采纳情况及其随时间的变化。为验证数据集的准确性,我们采用分层抽样和手动审阅,最终实现准确率为 92.08%,精确率为 87.14%,召回率为 95.45%,F1 分数为 91.11%。该数据集旨在支持一系列研究和实际任务,包括检测许可证不合规、调查许可证变更、研究许可证趋势以及开发合规工具。该数据集为开放状态,为开发人员、研究人员和 OSS 社区中的法律专业人士提供了宝贵资源。
引用
@article{arxiv.2409.04824,
title = {OSS License Identification at Scale: A Comprehensive Dataset Using World of Code},
author = {Mahmoud Jahanshahi and David Reid and Adam McDaniel and Audris Mockus},
journal= {arXiv preprint arXiv:2409.04824},
year = {2025}
}
备注
Accepted in 2025 IEEE/ACM 22st International Conference on Mining Software Repositories (MSR)