Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
schema/ListedLicense: Add obsoletedBy to licenses and exceptions
From [1]: As a result, a number of licenses formerly included in the SPDX License List have been deprecated as licenses, and correct usage employs the License Expression Syntax as of v2.0. So the sole reason for the deprecations seems to be "there's a better way to say that now". Telling people "use an expression instead" is less useful than saying "use this expression instead: $SOME_EXPRESSION". This commit updates the schema to allow us to recommend replacements. The recommended consumer algorithm is documented in the schema annotation. The maxOccurs="unbounded" value shows up in an XSD 1.1 spec example [2], and both minOccurs and maxOccurs must be set explicitly for obsoletedBy to override the defaults (1 for both attributes [3]). The presence of an obsoletedBy element is sufficient to mark a license/expression obsolete (as is the presence of an deprecatedVersion attribute), so I'm in favor of dropping isDeprecated to stay DRY. However, removing isDeprecated (from this repository, we would still supply it in license-list-data) has proven contentious for reasons I don't understand. This commit punts on the removal for now [4]. [1]: spdx#392 (comment) [2]: https://www.w3.org/TR/xmlschema11-1/#all-mg [3]: https://www.w3.org/TR/xmlschema11-1/#declare-element [4]: spdx#392 (comment)
- Loading branch information