<?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/index.php?action=history&amp;feed=atom&amp;title=Technical_Team%2FProposals%2F2012-02-01%2FUsage_Relationship_Proposal</id>
		<title>Technical Team/Proposals/2012-02-01/Usage Relationship Proposal - Revision history</title>
		<link rel="self" type="application/atom+xml" href="https://wiki.spdx.org/index.php?action=history&amp;feed=atom&amp;title=Technical_Team%2FProposals%2F2012-02-01%2FUsage_Relationship_Proposal"/>
		<link rel="alternate" type="text/html" href="https://wiki.spdx.org/index.php?title=Technical_Team/Proposals/2012-02-01/Usage_Relationship_Proposal&amp;action=history"/>
		<updated>2026-05-07T16:31:21Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.23.13</generator>

	<entry>
		<id>https://wiki.spdx.org/index.php?title=Technical_Team/Proposals/2012-02-01/Usage_Relationship_Proposal&amp;diff=2936&amp;oldid=prev</id>
		<title>Goneall: Created page with &quot;Usage Relationship Proposal The current Merged Model proposal (as of 21 Nov. 2013) includes a Usage property in the SPDX element and separate SPDXElementRelationship object wi...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.spdx.org/index.php?title=Technical_Team/Proposals/2012-02-01/Usage_Relationship_Proposal&amp;diff=2936&amp;oldid=prev"/>
				<updated>2013-11-21T18:46:09Z</updated>
		
		<summary type="html">&lt;p&gt;Created page with &amp;quot;Usage Relationship Proposal The current Merged Model proposal (as of 21 Nov. 2013) includes a Usage property in the SPDX element and separate SPDXElementRelationship object wi...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Usage Relationship Proposal&lt;br /&gt;
The current Merged Model proposal (as of 21 Nov. 2013) includes a Usage property in the SPDX element and separate SPDXElementRelationship object with a relationship type property.&lt;br /&gt;
&lt;br /&gt;
This proposal is to move the Usage property to the SPDXRelationshipObject.&lt;br /&gt;
&lt;br /&gt;
==Background==&lt;br /&gt;
During the usage case reviews against the proposed models at Linux Collab Summit 2012, we decided to add a Usage property to the SPDXElement.  This was a key addition to supporting several use cases (including 9.1 Yocto builds, 9.2.1 Building only license compliant artifacts, 10.4 application ships with documentation + media + software).  At the time, we though of the usage as an attribute of the SPDXElement.&lt;br /&gt;
&lt;br /&gt;
During a follow-up discussion on the model, it was pointed out that usage has more to with a relationship than the element itself.  In other words, an SPDX element all by itself does not have a usage.  The usage is only meaningful in the context of &amp;quot;what is using it&amp;quot;.  &lt;br /&gt;
&lt;br /&gt;
If we change the definition of Usage to be the &amp;quot;Intended Use&amp;quot; by the author of the SPDXEelement, having a property associated with the element itself makes sense.  From a license obligation perspective, however, it is more important to capture how an element is actually used.  This can only be done if the usage is part of the relationship object.&lt;br /&gt;
&lt;br /&gt;
In the current SPDX 1.2 spec, there is an implied relationship between SPDX File and the SPDX Package.  To capture the usage of files within a package, we could make that relationshp explicit in SPDX 2.0 by added relationships between the file and the package.&lt;br /&gt;
&lt;br /&gt;
Once Usage is added to the relationship, the relationship type properties has a lot of overlap with relationship type.&lt;br /&gt;
==Proposal Specifics==&lt;br /&gt;
* Remove Usage from SPDXElement&lt;br /&gt;
* Add Usage to SPDXElementRelationship&lt;br /&gt;
* Remove RelationshipType from SPDXElementRelationship&lt;br /&gt;
* Update the Usage to merge in the relationship types and Usage&lt;br /&gt;
* Make the relationship between the SPDX Package and SPDX files explicit (no update to the model, but would be an implementation requirement)&lt;br /&gt;
==Variations on a Theme==&lt;br /&gt;
Following are some alternatives to the above proposal&lt;br /&gt;
* Retain a Usage property in SPDX element renaming to &amp;quot;IntendedUsage&amp;quot; (also retain a Usage property in SPDXElementRelationship)&lt;br /&gt;
* Retain the RelationshipType in SPDXElement and add a Usage property as well.  Would need to distinguish the definition of these two properties.&lt;/div&gt;</summary>
		<author><name>Goneall</name></author>	</entry>

	</feed>