Некоторые решения:
1. Файл лицензии репозитория
Статья рекомендует просто добавить информацию о лицензии в содержащийся репозиторий. Это легко применить, но не соответствует руководящим указаниям. (Это неправильное место для обсуждения правовых аспектов.)
2. Уведомление о лицензии в виде содержимого
Можно добавить ячейку уценки в блокнот с информацией о лицензии. Это также легко применить, но не поддерживает автоматическую обработку, например, поисковыми системами.
3. Лицензия как поле пользовательских метаданных
Текущее определение формата тетради (v4.4) определяет только ключи authors
, title
, language_info
, kernelspec
и orig_nbformat
в metadata
, но также позволяет дополнительные ключи. Так что можно просто добавить, например, ключ license
. В (отклоненном) запросе функции было предложено использование JSON -LD и schema.org для объявления лицензии и других метаданных. Адаптированное решение:
{
"cells": [...],
"metadata": {
"@context": {
"CreativeWork": "http://schema.org/CreativeWork",
"Organization": "http://schema.org/Organization",
"Person": "http://schema.org/Person",
"author": "http://schema.org/author",
"copyrightHolder": "http://schema.org/copyrightHolder",
"copyrightYear": "http://schema.org/copyrightYear",
"license": "http://schema.org/license",
"name": "http://schema.org/name",
"title": "http://schema.org/name",
"url": "http://schema.org/url"
},
"@type": "CreativeWork",
"author": [
{
"@type": "Person",
"name": "<full author name>",
"@id": "<some identifier URI, e.g. an ORCID URI>",
"url": "<person website URL>"
}
],
"copyrightHolder": [
{
"@type": "Organization",
"name": "<full organization name>",
"url": "<organization website URL>"
},
{
"@type": "Person",
"name": "<full author name>",
"@id": "<some identifier URI, e.g. an ORCID URI>",
"url": "<person website URL>"
}
],
"copyrightYear": <year as yyyy>,
"kernelspec": {...},
"language_info": {...},
"license": "<license URL>",
"title": "<title of the notebook>"
"nbformat": 4,
"nbformat_minor": 4
}
К сожалению, никакие дополнительные ключи не разрешены в узле root ноутбуков Jupyter, и неизвестные ключи будут удалены JupiterLab. Следовательно, @context
и @type
(CreativeWork
) необходимо добавить в узел метаданных, что не на 100% правильно, поскольку весь документ (то есть узел root) является лицензированным CreativeWork
. Это можно проверить, например, с помощью Googles Инструмент тестирования структурированных данных . Применение этого - немного больше работы, но я думаю, что оно соответствует руководящим принципам и поддерживает автоматическую обработку, например, поисковыми системами.