I think the problem arises from the desire to produce a rigorous general 
definition of the “later” – while I (and others) believe that no such thing is 
possible. It would have been great if it were so, but unfortunately we deal 
with human language as the primary form of expression (license texts are in 
English).
This reminds me of the joke that a software specified requirements “Windows 98 
or better” and people complained it didn’t run on Linux… 😉

I think that whether GPLv4 (if such thing ever exists) will be considered a 
“later” version of GPLv3 is something that will be determined only once all the 
details are known. After all, GPLv3 (in section 14) also allows for a work to 
specify that a proxy can decide which future versions of the GNU General Public 
License can be used – and in that case you will have to rely on that proxy's 
public statement of acceptance of a version.

Feel free to peruse the collection of “or later” clauses in various licenses 
that the Legal Team has amassed in 
https://wiki.spdx.org/view/Legal_Team/later-version-clauses

-- zvr

From: [email protected] <[email protected]> On Behalf Of Vladimir 
Sitnikov
Sent: Monday, 24 June, 2019 16:32
To: Zavras, Alexios <[email protected]>; [email protected]
Subject: Re: [spdx-tech] "Or later" operator is not well defined

Alexios>The same way that in Unicode the sequence of [U+03C0 GREEK SMALL LETTER 
PI] and [U+0301 COMBINING ACUTE ACCENT] is permitted (syntactically valid) but 
meaningless (semantically invalid), in SPDX license expression grammar you can 
have “MIT+”.

I am sure you are aware of Unicode Normalization Forms (see 
https://unicode.org/reports/tr15/ )
I am sure you are aware that SPDX misses "normalization forms".

It looks like you are using MIT+ example as a way to tell that "SPDX does not 
need any definition of or-later operator".

I agree MIT+ does not make much sense, and it would hardly be used in the real 
life.
In case MIT+ happens in a real code, then it would be better that software 
would just fail and ask a human.

However, GPL-2.0+ could easily be present in the real life, and it is really 
sad SPDX provides no clue to interpret that.

Alexios>If you’re start disallowing “MIT+”, where will you stop?  Is 
“GPL-2.0-only AND GPL-3.0-only” a semantically meaningful expression?

I don't really care. What I care is the way to mechanically interpret "or 
later" expression.

For instance: "GPL-2.0-only AND GPL-3.0-only".
This expression falls under "category X"  for ASF policy 
(https://www.apache.org/legal/resolved.html) because GPL-2.0-only is "category 
X", and "GPL-3.0-only" is "category X".
"X and X" produces X which means that dependency can't be used in ASF projects.

I don't need to know if the expression makes sense or not. I can just 
mechanically evaluate the expression and check if it is "category A, B or X"
However, "or-later" breaks that. I can't really do the check of "GPL-2.0+" 
because the standard provides no meaning to "or-later".

Alexios>If your question was specifically about the equivalence of “GPL-2.0+” 
and “GPL-2.0-or-later”, this is not stated explicitly anywhere, since it is 
implied by the definition of the operator.

I'm afraid you are wrong here.
SPDX standard does not specify what "a version" of a license is.
SDPX standard does not specify the way to compare versions, so there is NO way 
to tell which version is "later"

There can be no "implied" definition. The definition has to be in the standard.

Vladimir

Intel Deutschland GmbH
Registered Address: Am Campeon 10-12, 85579 Neubiberg, Germany
Tel: +49 89 99 8853-0, www.intel.de
Managing Directors: Christin Eisenschmid, Gary Kershaw
Chairperson of the Supervisory Board: Nicole Lau
Registered Office: Munich
Commercial Register: Amtsgericht Muenchen HRB 186928

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#3723): https://lists.spdx.org/g/Spdx-tech/message/3723
Mute This Topic: https://lists.spdx.org/mt/32049933/21656
Group Owner: [email protected]
Unsubscribe: https://lists.spdx.org/g/Spdx-tech/unsub  
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to