Closed onox closed 3 years ago
The intention is that the XMP extension allows use of any XMP namespace, and doesn't attempt to redefine all of the metadata structures provided by XMP. We'd prefer not to create a new extension or glTF version to add a single SPDX field.
@emilian0 @weegeekps to enable something like gltf:spdx
as an XMP field, did we need to define that explicitly somewhere in a Khronos spec, or was the intention to roll it into a new XMP namespace specifically for 3D assets?
3D Commerce is planning on publishing a model3d
schema for use with the XMP extension that includes a spdxLicense
field. We will be publishing that once we get the KHR_xmp_json_ld
extension ratified.
The field
asset.copyright
defines the copyright owner of the content, but it does not say anything about licenses. Some content is licensed under CC or even GPL. If there's no clear indication what the license of the content is, it must be considered to be proprietary. Alicense
field would avoid any possible confusion.Would it be an idea to specify a list of popular licenses that people can choose from when exporting? The spec should make it clear that the version of the license should be included. For example:
CC-BY-SA-4.0
equals Creative Commons Attribution-ShareAlike 4.0 International LicenseGPLv2+
equals GNU General Public License version 2 or any later versionGPLv3
equals GNU General Public License version 3The list should be extended with the other Creative Commons licenses and probably a bunch of other licenses as well. Note that in the case of the GPL, the notice (in source files) sometimes contains "or (at your option) any later version", but sometimes it does not. I've used the
+
here to make that distinction.Having a predefined list would make it easy for 3D editing programs to allow the user to choose one of those when exporting the model to glTF.
The field should be optional (in which case the model is proprietary). Perhaps it is a good idea to allow the field to contain a custom / arbitrary license as well (not just one from the predefined list above).