Add _dictionary.licence attribute#16
Conversation
|
Thank you for the PR! Explicit licensing is always useful. Before merging this PR, may I suggest we first merge PR #7 that enables the automated dictionary checks? As for this PR I think it would be more useful to have two separate attributes instead of one:
The suggested attribute names can definitely be refined (e.g. maybe _dictionary.licence_id_SPDX is preferred). How does this sound? I do not oppose to having this attribute as recommended, however, keep in mind that not specifying a licence does impede the use of a dictionary since, in general, when no explicit licence is given the strictest possible restrictions should be assumed (including use, reuse, etc.). Of course, this does differ from jurisdiction to jurisdiction, but we might want to nudge people to specify the licence from the start. I think that keeping SPDX identifier in the header comment is still useful. There is a slight risk of these two values getting out of sync, but the comment with the Finally, it might be worthwhile to see if IUCr/COMCIFS has a preferred on the spelling of "License/Licence". I do like the British English spelling more, but it would be nice to keep things consistent throughout. |
CON: Two data items instead of one, and the question of how to address inconsistencies/conflicts between the two. PRO: Tying a specific scheme to the single allowed atttribute is not future-proof, if/when the SPDX registry ceases operation. Also the suggested definition has two purposes - contain a rigorous machine-parsable string OR a free-text field that requires human interpretation. Perhaps In any case, I agree that the use of an SPDX comment (also) be recommended. A simple use case is to suggest to generic data harvesters (like AI bots) the licensing status of a file before they attempt to do anything with it. Always assuming that would make any difference, of course... |
|
I think the CON is manageable, in that we already have many data names that can contradict one another, and also these are for use in dictionaries, which we can apply quality control to in a way that we can't for ordinary CIF files. I think we are agreed to have two data names, and I like @nautolycus 's suggestion for them. I will adjust the PR accordingly. |
Use separate spdx identifier and licensing_details attributes to allow both machine readability and for non-registered licences to be handled.
vaitkus
left a comment
There was a problem hiding this comment.
Other than the marked changes, looks good to me.
Co-authored-by: Antanas Vaitkus <antanas.vaitkus90@gmail.com>
Co-authored-by: Antanas Vaitkus <antanas.vaitkus90@gmail.com>
This addresses #3, using @nautolycus suggested definition. I know this update is not on the critical path for the next release but it looked easy to do.
I have chosen to make the licence "recommended" rather than "mandatory" as absence does not make it impossible to use or identify the dictionary. Absence only makes redistribution problematic.
Not sure if keeping the SPDX identifier in the header is still necessary with this change.