<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="https://wiki.spdx.org/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://wiki.spdx.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Bkuhn</id>
		<title>SPDX Wiki - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="https://wiki.spdx.org/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Bkuhn"/>
		<link rel="alternate" type="text/html" href="https://wiki.spdx.org/view/Special:Contributions/Bkuhn"/>
		<updated>2026-05-07T12:50:52Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.23.13</generator>

	<entry>
		<id>https://wiki.spdx.org/view/GSOC/GSOC_ProjectIdeas</id>
		<title>GSOC/GSOC ProjectIdeas</title>
		<link rel="alternate" type="text/html" href="https://wiki.spdx.org/view/GSOC/GSOC_ProjectIdeas"/>
				<updated>2019-01-10T17:15:07Z</updated>
		
		<summary type="html">&lt;p&gt;Bkuhn: /* SPDX Specification in MarkDown */  I can mentor this one if the other mentors have other projects they're focused on.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;span style=&amp;quot;font-size:150%&amp;quot;&amp;gt;'''Welcome to the 2019 SPDX Google Summer of Code Project Page'''&amp;lt;/span&amp;gt;&lt;br /&gt;
&lt;br /&gt;
See the [https://rtgdk.github.io/spdx-gsoc-proposal.html proposal template] if you are interested in submitting a Google Summer of Code proposal.&lt;br /&gt;
&lt;br /&gt;
Should you have questions please do not hesitate to contact one of the mentors directly.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
__TOC__&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br /&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== What is SPDX ? ==&lt;br /&gt;
&lt;br /&gt;
First and foremost we are a community dedicated to solving the issues and problems around Open Source licensing and compliance. The SPDX work group (part of the Linux Foundation) consists of individuals, community members, and representatives from companies, foundations and organizations who use or are considering using the SPDX standard. The work group operates much like a meritocratic, consensus-based community project; that is, anyone with an interest in the project can join the community, contribute to the specification, and participate in the decision-making process. We come from many different backgrounds including open source developers, lawyers, consultants and business professionals, many of who have been involved with license compliance and identification for years.&lt;br /&gt;
&lt;br /&gt;
As part of this effort we have developed a set of collateral that can be used:&lt;br /&gt;
&lt;br /&gt;
* [https://spdx.org/using-spdx License List and Short Identifiers]&lt;br /&gt;
* [https://spdx.org/using-spdx SPDX Specification for generating SPDX Doucments in either RDF or Tag/Value format]&lt;br /&gt;
* [https://spdx.org/tools A set of basic tools for working with SPDX Documents]&lt;br /&gt;
* [https://spdx.org/using-spdx License Identifiers in source]&lt;br /&gt;
&lt;br /&gt;
== Why choose an SPDX Project? ==&lt;br /&gt;
&lt;br /&gt;
Contributing to one of the SPDX projects below will provide a valuable contribution to developers and/or users of open source software. We believe you will find the projects both technically challenging and rewarding. In essence we believe you will be able to look back one day and I say I was part of that effort.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
= Getting Involved =&lt;br /&gt;
&lt;br /&gt;
Beyond working wth your mentor(s) we highly encourage students who select one of these projects to get involved with the SPDX community via our technical working group. Interaction with the technical team is primarily done via its mailing list (see resources). There is however a weekly call you could join as well. All of the daily work for the Tech team is done on this wiki.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Resources ==&lt;br /&gt;
&lt;br /&gt;
* [http://spdx.org SPDX website]&lt;br /&gt;
* [https://spdx.org/specifications SPDX Specification]&lt;br /&gt;
* [https://spdx.org/tools SPDX Workgroup Tools webpage]&lt;br /&gt;
* [https://lists.spdx.org/mailman/listinfo/spdx-tech SPDX tech mailing list]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
=SPDX Workgroup Tooling Projects=&lt;br /&gt;
These projects are aimed at contributing to the SPDX tools to help reduce the effort to create SPDX and increase the accuracy of the SPDX documents.&lt;br /&gt;
&lt;br /&gt;
==Update Parser Libraries to SPDX 2.1 for GO==&lt;br /&gt;
Update one of the SPDX GO libraries to the SPDX 2.1 specification.  The SPDX 2.1 specification is a major upgrade from SPDX 1.2 supporting relationships between SPDX documents and SPDX elements.&lt;br /&gt;
====Skills Needed====&lt;br /&gt;
* Development skills in the GO language&lt;br /&gt;
* Experience with parser development&lt;br /&gt;
* Understanding of RDF and XML&lt;br /&gt;
====Background Information====&lt;br /&gt;
SPDX currently provides libraries supporting the reading and writing of SPDX document.  Currently, only Java libraries support the new SPDX 2.1 specification.  The Python libraries and the GO libraries support version 1.2 of the spec.  The libraries must support both RDF/XML import/export as well as tag/value import/export.  The [[https://github.com/spdx/tools-go SPDX git repository]] SPDX Tools project contains the source code for the libraries.&lt;br /&gt;
&lt;br /&gt;
====Available Mentors====&lt;br /&gt;
[mailto:gary@sourceauditor.com Gary O'Neall]&lt;br /&gt;
&lt;br /&gt;
==Additional Format Support for the Python Libraries==&lt;br /&gt;
Add the ability to read and write XML, JSON, and YAML formats of the SPDX documents.&lt;br /&gt;
&lt;br /&gt;
====Skills Needed====&lt;br /&gt;
* Development skills in the Python language&lt;br /&gt;
* Experience with parser development&lt;br /&gt;
* Understanding of XML, JSON and YAML&lt;br /&gt;
&lt;br /&gt;
====Background Information====&lt;br /&gt;
SPDX 2.1 specification supports reading and writing RDF/XML and a tag/value format for SPDX documents.  Version 2.2 of the specification will add support for XML, JSON and YAML.  The Python libraries currently support reading and writing the RDF/XML and tag/value.  This project would extend the parsing and file generation capabilities of the python libraries to include XML, JSON and YAML format.  &lt;br /&gt;
&lt;br /&gt;
The current python libraries are in the [[https://github.com/spdx/tools-python SPDX python tools git repository]]&lt;br /&gt;
&lt;br /&gt;
====Available Mentors====&lt;br /&gt;
[mailto:tetechris20@gmail.com Krys Nuvadga], [mailto:gary@sourceauditor.com Gary O'Neall]&lt;br /&gt;
&lt;br /&gt;
== Port SPDX license expression library to Ruby, JavaScript and Java==&lt;br /&gt;
The [[https://github.com/nexB/license-expression/]|licens_expressionlibrary]] provides comprehensive support license expression using a boolean engine for Python.&lt;br /&gt;
The goal of this project is to port and/or package this library for JavaScript, Ruby and Java, considering either code conversion tools, alternative Python implementations (e.g. Jython) or calling Python from another language to bring the same features to these other languages.&lt;br /&gt;
====Skills Needed====&lt;br /&gt;
* Development skills in Python, Java, Ruby, JavaScript.&lt;br /&gt;
&lt;br /&gt;
====Background Information====&lt;br /&gt;
See https://github.com/spdx/tools-python/issues/10 and https://github.com/nexB/license-expression/&lt;br /&gt;
====Available Mentors====&lt;br /&gt;
[mailto:pombredanne@nexb.com Philippe Ombredanne]&lt;br /&gt;
&lt;br /&gt;
=SPDX Specification Projects=&lt;br /&gt;
The following projects contribute directly to the creation or validation of the SPDX 2.1 specification.&lt;br /&gt;
&lt;br /&gt;
== SPDX Specification in MarkDown ==&lt;br /&gt;
Migrate the specification from Google docs to GitHub+MarkDown based toolchain capable of generating HTML, PDF and EPUB&lt;br /&gt;
====Skills Needed====&lt;br /&gt;
* Understanding of documentation tooling&lt;br /&gt;
* Web-development skills to style HTML version&lt;br /&gt;
====Background Information====&lt;br /&gt;
The [https://spdx.org/specifications 2.1 SPDX specification] PDF and HTML version have several issues.&lt;br /&gt;
1. Navigation through both document is difficult as a index is missing&lt;br /&gt;
2. Switching to GitHub+MarkDown will remove friction for contributors to comment/amend the specification. Common workflow within the OSS community&lt;br /&gt;
====Available Mentors====&lt;br /&gt;
[mailto:kstewart@linuxfoundation.org Kate Stewart]&lt;br /&gt;
[mailto:thomas.steenbergen@here.com Thomas Steenbergen]&lt;br /&gt;
[mailto:bkuhn@sfconservancy.org Bradley M. Kuhn]&lt;br /&gt;
&lt;br /&gt;
== SPDX Specification Wiki Examples of Package Managers ==&lt;br /&gt;
SPDX specification describes on a high level how to describe package, files and snippets but lack examples how to capture the use of package managers&lt;br /&gt;
====Skills Needed====&lt;br /&gt;
* Understanding of package managers &lt;br /&gt;
====Background Information====&lt;br /&gt;
To encourage adoption of SPDX it should be clear how to encode the use of common programming language package managers within SPDX. The aim of this project is to create example per build tool/package manager so that not only as example to the community but also form the input for SPDX tech team discussions and future tooling development&lt;br /&gt;
&lt;br /&gt;
Initial package managers:&lt;br /&gt;
* Bower&lt;br /&gt;
* CocoaPods&lt;br /&gt;
* Gradle&lt;br /&gt;
* gem&lt;br /&gt;
* gitmodules&lt;br /&gt;
* Maven&lt;br /&gt;
* npm&lt;br /&gt;
* PyPi&lt;br /&gt;
* sbt&lt;br /&gt;
* NuGet&lt;br /&gt;
&lt;br /&gt;
====Available Mentors====&lt;br /&gt;
[mailto:thomas.steenbergen@here.com Thomas Steenbergen]&lt;br /&gt;
[mailto:stewart@linux.com Kate Stewart]&lt;br /&gt;
&lt;br /&gt;
== SPDX Specification Views for legal counsels and developers ==&lt;br /&gt;
The proposal is to see if it possible to deduct large SPDX documents into a small subset SPDX document providing a specific reduced &amp;quot;views&amp;quot; on larger data.&lt;br /&gt;
====Skills Needed====&lt;br /&gt;
* Understanding of compliance needs of legal counsels and developers so we can remove friction to adopt SPDX&lt;br /&gt;
====Background Information====&lt;br /&gt;
SPDX documents commonly contain 100s, if not 1000s of entries making it hard for a human to make manual corrections or draw conclusions. No scanner can provide 100% complete data human corrections are usual needed. The aim from this proposal is twofold:&lt;br /&gt;
1. Enable developers with a &amp;quot;code view&amp;quot; of tool-generated SPDX document close to the code they work on to enable them to make corrections to the SPDX data. For instance amend SPDX package tag values or model package dependencies not detected by used scanner.&lt;br /&gt;
2. Provide legal counsels with a &amp;quot;package and limited file view&amp;quot; to enable legal conclusions&lt;br /&gt;
====Available Mentors====&lt;br /&gt;
[mailto:thomas.steenbergen@here.com Thomas Steenbergen]&lt;br /&gt;
[mailto:ybronshteyn@blackducksoftware.com Yev Bronshteyn]&lt;/div&gt;</summary>
		<author><name>Bkuhn</name></author>	</entry>

	<entry>
		<id>https://wiki.spdx.org/view/Legal_Team/only-operator-proposal</id>
		<title>Legal Team/only-operator-proposal</title>
		<link rel="alternate" type="text/html" href="https://wiki.spdx.org/view/Legal_Team/only-operator-proposal"/>
				<updated>2017-09-07T22:39:44Z</updated>
		
		<summary type="html">&lt;p&gt;Bkuhn: /* Proposed Solution: add only operator */  FSF was not on most of the calls; Conservancy was not represented: I appeared in my own capacity and made that clear&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;==Introduction to Issue ==&lt;br /&gt;
===Historical Background ===&lt;br /&gt;
Originally, the SPDX License List listed variations of licenses as separate &amp;quot;line items&amp;quot;.  Notably, various versions of L/GPL had two listed items: one for a specific version-only, and one indicating a version-or-later. This was indicated in the list via the inclusion of the words &amp;quot;only&amp;quot; and &amp;quot;or later&amp;quot; in the full name; and via the short identifier: &amp;lt;code&amp;gt;GPL-2.0&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;GPL-2.0+&amp;lt;/code&amp;gt; respectively. (examples throughout this page use GPL-2.0, but this issue applies to the entire family of GNU licenses, i.e., GPL, LGPL, FDL, APGL). &lt;br /&gt;
&lt;br /&gt;
For example, the pre-version-2.0 SPDX License List looked like this:&lt;br /&gt;
&lt;br /&gt;
   GNU General Public License v2.0 only	  GPL-2.0	&lt;br /&gt;
   GNU General Public License v2.0 or later	  GPL-2.0+&lt;br /&gt;
&lt;br /&gt;
When the license expression syntax was introduced in version 2.0 of SPDX, licenses with the &amp;quot;or later&amp;quot; indication were removed as separate listed licenses (&amp;quot;deprecated&amp;quot;), as the &amp;quot;or later&amp;quot; option could now be provided for via using the &amp;lt;code&amp;gt;+&amp;lt;/code&amp;gt; operator.  This enabled the use of the &amp;lt;code&amp;gt;+&amp;lt;/code&amp;gt; operator with other licenses, as applicable. &lt;br /&gt;
&lt;br /&gt;
The ability to create license expressions using the &amp;lt;code&amp;gt;+&amp;lt;/code&amp;gt; operator along with the &amp;lt;code&amp;gt;with&amp;lt;/code&amp;gt; operator also solved the issue of under-representation of license-exception combinations.  &lt;br /&gt;
&lt;br /&gt;
However, this also created a new issue whereby the standard header which is usually where the &amp;quot;or later&amp;quot; or &amp;quot;only&amp;quot; option is indicated in practice could no longer be differentiated or captured directly. This also resulted in the full license name having &amp;quot;only&amp;quot; with no real way to modify that to &amp;quot;or later&amp;quot; in the full license name where/when the &amp;lt;code&amp;gt;+&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
The original argument for the &amp;lt;code&amp;gt;+&amp;lt;/code&amp;gt; operator was that it could be used with other licenses (not just GNU family).  However, to anyone's memory we did, not at that time, conduct a full analysis of the other licenses with &amp;quot;or later&amp;quot; language or how they work in practice.&lt;br /&gt;
&lt;br /&gt;
===Other License with &amp;quot;or later&amp;quot; Clauses===&lt;br /&gt;
&lt;br /&gt;
Not all licenses that provide for later versions treat their application in the same way or as explicitly as the GNU family of licenses does.&lt;br /&gt;
A list of the licenses with text related to later versions, relevant text, and an analysis of the licenses that have &amp;quot;or later version&amp;quot; type language are listed on this page:  https://wiki.spdx.org/view/Legal_Team/later-version-clauses&lt;br /&gt;
&lt;br /&gt;
Notably, most licenses that reference the possibility of later versions can be read to say you can take and redistribute the work under the license you found it with or any other later version with no explicit option of 'this version only.'&lt;br /&gt;
&lt;br /&gt;
The CDDL family is slightly different in that the CDDL is “or later” by default and “only” with [https://github.com/spdx/license-list-XML/blob/7ecb7363bc82aedd0e293ca8825e348181619e6a/src/CDDL-1.1.xml#L279-L289 an explicit notice prohibiting later versions].  There's currently no &amp;lt;code&amp;gt;only&amp;lt;/code&amp;gt; operator for the CDDL, although some code (e.g. [https://github.com/freebsd/freebsd/blob/2c31a4b74c2e41b0c7407c9830e22bfd07150af0/uts/common/fs/zfs/abd.c#L2-L5 parts of FreeBSD's ZFS implementation]) does declare that prohibition while other code (e.g. [https://github.com/illumos/illumos-gate/blob/a9bfd41d542f15c474711abb8b0ca66a4cef9918/usr/src/common/acl/acl_common.h#L2-L19 some illumos userspace tools]) does not (and is therefore presumably CDDL-1.0+).&lt;br /&gt;
&lt;br /&gt;
===Issue===&lt;br /&gt;
In practice, practitioners are not always explicit about whether a license is a version only or or later option.  Also, because the &amp;quot;only&amp;quot; or &amp;quot;or later&amp;quot; distinction often is found outside the actual license text (e.g., in a license notice or header in the source files), machines (and humans) need a way to identify the license file itself without determining (yet) if the package is &amp;quot;only&amp;quot; or &amp;quot;or later&amp;quot;.  In other words, there is currently no way to express 'I just found this license text and am not sure what the package license is' using only license expressions.&lt;br /&gt;
&lt;br /&gt;
The SPDX specification provides a way to distinguish between what is [https://spdx.org/spdx-specification-21-web-version#h.111kx3o detected license files] and the [https://spdx.org/spdx-specification-21-web-version#h.2lwamvv concluded file license] as well as similar fields at the package level when creating an SPDX document.  But before getting to that point, tools must have ways to correctly identify what is precisely found in the files without having to draw a conclusion.  Also, as discussed in the 2017-08-08 meeting, some ecosystems restrict themselves to license expressions (e.g. [https://docs.npmjs.com/files/package.json#license npm allows SPDX 2.0 license expressions]), and some tools attempt to detect package licenses by looking only at the license files and not at license-grant blurbs (e.g. [https://github.com/benbalter/licensee/blob/v9.2.0/docs/what-we-look-at.md Licensee], which is [https://developer.github.com/v3/licenses/ used by the GitHub license API]).&lt;br /&gt;
&lt;br /&gt;
===Examples / Challenges===&lt;br /&gt;
The scenarios below map out various examples and how one would identify the [https://spdx.org/spdx-specification-21-web-version#h.111kx3o License Information in File] using SPDX short identifiers and bearing in mind machine reading for this task.  Some of these scenarios have been discussed on the various calls on this topic as to how one would identify the license short identifier for each file currently (and under the proposal, see below).  In any case, these scenarios need to have clear indication as to appropriate interpretation:&lt;br /&gt;
&lt;br /&gt;
# '''you find: 1 text file with the license text of GPL-2.0; and 4 source files with the standard header for GPL-2.0, which include the language &amp;quot;any later version&amp;quot; '''&lt;br /&gt;
##  1 text file with license text of GPL-2.0 = &amp;lt;code&amp;gt;GPL-2.0&amp;lt;/code&amp;gt;&lt;br /&gt;
##  4 source files with standard header for GPL-2.0, which include the language &amp;quot;any later version&amp;quot; = &amp;lt;code&amp;gt;GPL-2.0+&amp;lt;/code&amp;gt;&lt;br /&gt;
## Concluded package license = &amp;lt;code&amp;gt;GPL-2.0+&amp;lt;/code&amp;gt;&lt;br /&gt;
## Note: in the current reality, &amp;lt;code&amp;gt;GPL-2.0&amp;lt;/code&amp;gt; for the license text file would mean &amp;quot;only&amp;quot;, yet one cannot determine from that file alone if the copyright holder intends to use the version only or the or later option.  Also note, that a machine can positively identify the &amp;quot;or later&amp;quot; option via the use of recommended standard license header. &lt;br /&gt;
# '''you find: 1 file with the license text of GPL-2.0; and 4 source files with the standard header for GPL-2.0, which omits the language &amp;quot;any later version&amp;quot; '''&lt;br /&gt;
## 1 text file with license text of GPL-2.0 = &amp;lt;code&amp;gt;GPL-2.0&amp;lt;/code&amp;gt;&lt;br /&gt;
## 4 source files with standard header for GPL-2.0, which omits the language &amp;quot;any later version&amp;quot; = &amp;lt;code&amp;gt;GPL-2.0&amp;lt;/code&amp;gt;&lt;br /&gt;
## Concluded package license = &amp;lt;code&amp;gt;GPL-2.0&amp;lt;/code&amp;gt;&lt;br /&gt;
## Note: Same comment as #1 re: license text file.  Also note, that a machine can positively identify the &amp;quot;only&amp;quot; option via the use of recommended standard license header which omits the &amp;quot;any later version&amp;quot; text.&lt;br /&gt;
# '''you find: no license file; 4 source files with the statement, “this is licensed under GPL&amp;quot; '''&lt;br /&gt;
## 4 source files = &amp;lt;code&amp;gt;GPL-1.0+&amp;lt;/code&amp;gt;&lt;br /&gt;
## Concluded package = &amp;lt;code&amp;gt;GPL-1.0+&amp;lt;/code&amp;gt;&lt;br /&gt;
## Note: The determination of &amp;lt;code&amp;gt;GPL-1.0+&amp;lt;/code&amp;gt; would most likely need to be made by a human. But given the language of the GPL stating, &amp;quot;If the Program does not specify a version number of the license, you may choose any version ever published by the Free Software Foundation.&amp;quot; and no version indicated in any manner whatsoever, we can feel reasonably confidant that any version can be applied and the short identifier &amp;lt;code&amp;gt;GPL-1.0+&amp;lt;/code&amp;gt; covers any version. &lt;br /&gt;
# '''you find: 1 license file with GPL-2.0 license text; 4 source files with no license information whatsoever'''&lt;br /&gt;
## 1 text file with license text of GPL-2.0 = &amp;lt;code&amp;gt;GPL-2.0&amp;lt;/code&amp;gt;&lt;br /&gt;
## 4 source files with no license information whatsoever = NONE (as per SPDX specification)&lt;br /&gt;
## Concluded license = ??&lt;br /&gt;
## Question: Is including a copy of a particular version of the license &amp;quot;the Program specif[ying] a version number of the license which applies to it&amp;quot; and thus we can confidantly conclude the package is GPL-2.0+?&lt;br /&gt;
## Answer: John Sullivan was [[Legal_Team/or-later-vs-unclear-disambiguation#Alternative_Solution_-_Do_Not_Deprecated_GPL-2.0|going to check for a FSF position on this]].  I'm not clear on what his reported findings were, but I expect they decided not to take a formal position on it.&lt;br /&gt;
&lt;br /&gt;
==Goals==&lt;br /&gt;
* Provide way to get to &amp;quot;GPL-2.0-only&amp;quot; (or the like) identifier to enable better clarity for that option/scenario&lt;br /&gt;
* Ensure we accommodate the reality of other licenses with language re: later versions such that all options can be represented appropriately &lt;br /&gt;
* Ensure that there is some amount of consistency with what the short identifiers mean / Don't completely break the meaning for current users&lt;br /&gt;
&lt;br /&gt;
==Proposed Solution: add &amp;lt;code&amp;gt;only&amp;lt;/code&amp;gt; operator==&lt;br /&gt;
Based on the various legal and tech calls and including representatives from the LF (some notes in [[Legal Team/or-later-vs-unclear-disambiguation]]), we coalesced around the following proposal:&lt;br /&gt;
&lt;br /&gt;
'''Create an &amp;quot;only&amp;quot; operator defined as to be used to indicate 'only the version of the license is intended for use' '''&lt;br /&gt;
&lt;br /&gt;
For licenses that may include “only” or “or later” (or both) clauses in the license text, having explicit &amp;lt;code&amp;gt;+&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;only&amp;lt;/code&amp;gt; operators to use in SPDX identifiers reduces the chance that an unfamiliar user mis-uses or misinterprets the identifier and provides a way to be explicit and accurate that was arguably not available before.  This solution allows the license text to speak for itself (via the &amp;quot;plain&amp;quot; license identifier) and uses the &amp;lt;code&amp;gt;only&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;+&amp;lt;/code&amp;gt; operators to be explicit in intent. &lt;br /&gt;
&lt;br /&gt;
This leaves the ability to use the &amp;quot;plain&amp;quot; license identifier (without an operator) to indicate the existence of the license text itself or other scenarios where it is not clear whether the &amp;quot;or later&amp;quot; or &amp;quot;only&amp;quot; options are articulated by the copyright holder. This avoids SPDX having to make an interpretation as to what the licenses mean or intend. This would also bring into consistency the use of &amp;quot;plain&amp;quot; identifiers for all other licenses that have &amp;quot;or later&amp;quot; clauses. &lt;br /&gt;
&lt;br /&gt;
The + operator would remain with the same definition.  &lt;br /&gt;
&lt;br /&gt;
Necessary/associated changes:&lt;br /&gt;
*  add new &amp;quot;only&amp;quot; operator to Appendix IV: SPDX License Expressions of spec and explanatory language as to how/when to use it. &lt;br /&gt;
* Remove &amp;quot;only&amp;quot; from full name of GNU family licenses on SPDX License List&lt;br /&gt;
* clarify that the license ID used by itself would indicate that the license text itself should be used to determine if later versions of the license could be used (in Appendix IV or V?)&lt;br /&gt;
&lt;br /&gt;
Potential issues:&lt;br /&gt;
* Backwards compatibility for GPL-2.0 meaning 'only' to now meaning 'whatever the license says' creates some inconsistency as the default position of the license text with no other info is &amp;quot;or later&amp;quot; or &amp;quot;any version&amp;quot;, not &amp;quot;only&amp;quot;.  However, it was pointed out on the call that those people conscientious enough to be using GPL-2.0 correctly, will be more likely to be conscientious enough to add the &amp;lt;code&amp;gt;only&amp;lt;/code&amp;gt; operator as needed once it's available. All seemed to agree that use of GPL-2.0 is probably not thought through as to &amp;quot;or later&amp;quot; or &amp;quot;only&amp;quot;, and thus in these situations, there is no different meaning. &lt;br /&gt;
* Does not make clear indication of &amp;quot;ambiguous&amp;quot; situation to push people towards using 'only' and '+' operators to be explicit (preferred).  However, we don't have a clear indication of ambiguity now either (is ambiguity ever clear?).  You can clearly detect the ambiguous situations in tooling if you add metadata to license definitions recording whether they are compatible with the various version-related operators (as discussed [[Legal Team/or-later-vs-unclear-disambiguation#Alternative_Solution_-_create_-only_and_PROXY_.7BTEXT.7D_operators_for_licenses_that_explicitly_declare_their_compatibility|here]] and [https://lists.spdx.org/pipermail/spdx-legal/2017-August/002126.html here]).&lt;br /&gt;
* GPL language is clear that it is one or the other, so this could create more confusion and not reflect the intention of the license. However, all agreed that when you have a machine scanning code with no other license info other than a file with the license text of GPL-2.0, this is not entirely clear situation.&lt;/div&gt;</summary>
		<author><name>Bkuhn</name></author>	</entry>

	</feed>