LiDetector , a hybrid method that automatically understands license texts and infers rights and obligations to detect license incompatibility in open-source software.
For an open-source project as input, where licenses may appear in three forms: referenced, declared, and inline, the license texts are first extracted from the two forms for further incompatibility analysis. With such a license set, the main components of LiDetector include:
(1) License term identification, which aims to identify license terms relevant to rights and obligations;
(2) Right and obligation inference, which infers the stated condition of software use defined by license terms;
(3) Incompatibility detection, which automatically analyzes incompatibility between multiple licenses within one project based on the rights and obligations inferred from each license.
Overview of LiDetector
Some knowledge learned and dataset used in this paper are released as follows:
https://drive.google.com/uc?id=1YCrKGC5QIbu7KB17DnXCSCr5xM1Cf2UL&export=download
https://drive.google.com/uc?id=1TQS_UmX0wpTvq5dj5b6CdGc20v9qd4JP&export=download
https://drive.google.com/uc?id=1e91pG_EGvqUxtNiLbeKPj-WxRTByOzrp&export=download