Skip to content

Multiple Licenses for one Software Entry

Introduction

One of our entries with ESCAPE (FairMQ) has multiple licenses: Some of its files have different licenses from the main license. So the licenses are disjunct on a file basis.

I assume, that for the software as a whole, all those licenses need to be taken with AND (the license taker has to obey all of them!).

codemeta.json

I think, for codemeta.json, we could put a list of identifies as the license property. Like

{
  "@context": "https://doi.org/10.5063/schema/codemeta-2.0",
  "@type": "SoftwareSourceCode",
  
  "license": [
    "https://spdx.org/licenses/LGPL-3.0-or-later",
    "https://spdx.org/licenses/MIT"
  ]
}

But I was not able to quickly find any documentation of what multiple entries in the licenses property actually mean in codemeta. They could mean "AND" or "OR". (Or in other words: What would you put, if the software is dual licensed with OR logic?)

Zenodo

What are we expected to put on Zenodo in this case?

SPDX

Just as a note: SPDX supports all of this using their IDs: https://spdx.dev/ids/#how