Автоматически генерировать код: «производная работа»?


18

Например, у меня есть программное обеспечение GPL. Я автор этого программного обеспечения GPL. Это программное обеспечение GPL содержит, между своим кодом, комментарии Doxygen. Эти комментарии Doxygen написаны для создания html-страницы CC-BY-SA, чтобы загрузить эту сгенерированную документацию на мой сайт проекта под лицензией CC-BY-SA.

Но является ли вывод документации Doxygen «производной работой»? В конце концов, эта документация основана на моем исходном коде GPL. В этом случае документация должна быть GPL. Но я хочу, чтобы документация была CC-BY-SA, потому что это документация. GFDL не помогает. Код GPL не может стать GFDL (наоборот).

Если этот вывод действительно является производной работой, я думаю, что это создает странную ситуацию, потому что, если я распространяю свою работу, пользователи-получатели не могут легально распространять сгенерированную документацию: хотя с моей работой я могу делать, я хочу, пользователи не Таким образом, они должны распространять любые производные работы с той же лицензией, которую я им предлагаю.

Каково решение?


3
Интересный вопрос!
maple_shaft

Ответы:


13

Это действительно сложный вопрос (типа «спроси своего адвоката»).

Поскольку вы являетесь автором программного обеспечения, вы можете прояснить свои намерения и избежать любых двусмысленностей, добавив исключение «Doxygen-comments is CC-BY-SA» в свою лицензию, например:

Additional permission under GNU GPL version 3 section 7

In addition, as a special exception, the copyright holders of [name of your program]
give you permission to distribute the Doxygen comments in this source and any work
derived from those comments ("the documentation") under the CC-BY-SA license.


Большое спасибо. Но, что касается этого раздела 7, я не совсем понимаю, какие типы дополнительных разрешений могут быть удалены получателями.
Peregring-lk

1
Согласно тексту GPL, получатели могут удалить любые дополнительные разрешения (например, выше) из своей копии или из любой ее части. Но это IMO, вероятно, не большая проблема, так как они не могут отменить ваше право дать это разрешение любой третьей стороне, касающейся вашего кода. На самом деле, вам не нужно исключение для распространения сгенерированной документации - как владелец авторских прав, вы можете делать то, что вы хотите, с вашей собственной работой. Исключение CC-BY-SA здесь только для того, чтобы ваши получатели могли генерировать и распространять документацию из исходного кода.
user281377

Но если прямой получатель удалит это предложение и распространит его в другой раз, у получателя «третьего уровня» возникнет та же юридическая проблема.
Peregring-lk

2
Правда, и вряд ли ты можешь что-то с этим поделать. Размещение дополнительных ограничений, таких как «вы не можете удалить cc-by-sa-исключение», безусловно, не допускается в GPL. Создание вашей собственной лицензии, скорее всего, делает вашу работу несовместимой с GPL, что резко снижает ее ценность для тех, кто может захотеть создать производную работу, содержащую части вашей работы и части других источников GPL.
user281377

2
Вся проблема в том, что нет лицензии (libre), применимой к произведениям, составленным из элементов различной природы. GPL, похоже, разработан для программного обеспечения с чистым кодом, забывая о других элементах, не являющихся исходным кодом, интегрированных в программное обеспечение.
Peregring-lk

2

Чтобы быть «производной работой», что-то должно сначала быть работой. В соответствии с законодательством Соединенных Штатов, только творческий процесс может создать произведение. Автоматизированный процесс не может создать производную работу, потому что он не может создать работу, которой раньше не было. (За исключением нескольких конкретных исключений, созданных в соответствии с законом.)

Если вы думаете об этом, это не может быть производной работой. Скажем, вы запускаете программу A для текста B и создаете работу C. Если это новая производная работа, кто имеет авторские права на нее? Ни один человек не создал его, и программа не может обладать авторским правом.

Не креативные комбинации не могут создавать новые работы, производные или нет. То, что механические процессы могут создать, является совокупной работой. С юридической точки зрения это то же самое, что если бы я склеил два DVD (или объединил два файла на одном носителе). Там нет производной работы, но два DVD, сшитые вместе, являются совокупностью обеих работ.

См. 17 USC 103 (b): «Авторское право на компиляцию или производное произведение распространяется только на материал, предоставленный автором такого произведения, в отличие от ранее существовавшего материала, использованного в работе, и не подразумевает каких-либо исключительных прав на существующий материал. "

Также см. Циркуляр 14 .

Кем будет автор производной работы?


Тогда по какой причине Flex / Bison копирует в свои автоматические выходы (из файлов с грамматическими описаниями) заявление о лицензии? Если эти выходные данные не являются «работами» (и, следовательно, ни производными работами), эти юридические положения не имеют смысла. То же самое можно сказать о файлах .sty, автоматически генерируемых из пакетов .dtx и .ins?
Peregring-lk

Потому что выходные данные содержат креативные элементы, взятые из Flex, Bison и так далее. Если вы разорвали книгу пополам, вы не создали производное произведение (вам не нужно разрешение от правообладателя, чтобы разорвать книгу пополам, и вы не можете самостоятельно зарегистрировать авторское право на книгу наполовину), но Вы не можете сделать копии этих половинок и передать их всем своим друзьям. Правильно? Юридически половинки книги действуют почти так же, как оригинальная работа. То же самое здесь - любые защищенные элементы из оригинальной работы, присутствующие в комбинированном выводе, все еще защищены авторским правом. Это просто не производная работа.
Дэвид Шварц

Я понимаю первую часть (вход является оригинальным творческим элементом), но я не вижу связи между вашей разделенной книгой и реальной проблемой.
Peregring-lk

Я не уверен, как я могу объяснить это более ясно, чем у меня уже есть. Автоматизированный процесс не создает производную работу в соответствии с законодательством США (за исключением нескольких исключений, созданных в соответствии с законом, которые здесь не применяются). Лицензионные положения о производных работах не распространяются на результаты автоматизированного процесса. (Если быть точным, результаты - это работы, они просто не являются новыми работами, поэтому они не могут быть новыми производными работами. «Производная работа» - это тип новой работы, которая содержит творческую комбинацию элементов предыдущих работ. )
Дэвид Шварц

1
@DavidSchwartz Это означает, что если вы автоматически генерируете PDF («вывод») из моего исходного кода LaTeX («работа»), этот вывод мой, и вы имеете те же права на этот вывод, который я дал вам при получении моей работы , Правильно? Таким образом, если вы хотите распространять выходные данные, вы должны распространять их с теми же условиями, что и рабочая лицензия. Но у выхода есть лицензия CC-BY-SA (потому что работа производит результат так). А это противоречие или нет?
Peregring-lk

1

Ничто не мешает вам применять разные лицензии к одному и тому же коду. Если я вас правильно понимаю, у вас есть код, написанный и контролируемый вами, с комментариями, которые вы хотите выпустить под лицензией CC, и код, который вы хотите выпустить под лицензией GPL. Так что просто сделай это. Комментарии будут выпущены под лицензией GPL и лицензией CC, поэтому, если люди используют комментарии в соответствии с лицензией CC, они в порядке.

В FAQ по GNU GPL конкретно говорится об автоматически сгенерированном коде, поэтому он может ответить на ваш вопрос, если я неправильно понял. (Это также покрывает много других угловых случаев.)


мое прочтение часто задаваемых вопросов, на которые вы ссылаетесь, скорее указывает на то, что сгенерированный код заблокирован : «когда программа переводит свои входные данные в какую-либо другую форму, состояние авторского права на выходные данные наследует то, на которое они были сгенерированы…»
gnat

@gnat: Что вы имеете в виду «заблокирован»? Как часть, которую вы цитировали, противоречит тому, что я сказал?
Майкл Шоу

Это рядом с ссылкой, которой вы поделились. Любой, кто использует файл грамматики GPL, будьте осторожны. Его содержимое копируется в сгенерированный код, поэтому сгенерированный код также является GPL. gnu.org/licenses/gpl-faq.html#WhatCaseIsOutputGPL
RubberDuck

0

Вопрос спорный.

Если вы являетесь автором программы, у вас есть все права на ее распространение на условиях, которые вам нравятся. Таким образом, если вы создаете документацию под другой лицензией, вы будете иметь ее под другой лицензией. Потому что ты так сказал.

Программа не была написана вами? Тогда документация, которую вы создаете, должна быть GPL, но это представляет другую проблему. GPL не говорит о документации. Это говорит о программном обеспечении.

Так что, если вы хотите коммерчески перепечатывать выходные данные прогона doxygen программы GPL, которую вы не написали, вот что вы делаете: вы пишете автору и просите явного разрешения. То же самое, если вы хотите распространять эти документы под CC-BY-SA. Вы не наклеиваете этикетку, вы просите автора наклеить ее.

Закон не странная игра ума. Это люди, которые убеждают присяжных или судей. Судьи ненавидят интеллектуальные игры, а присяжные иногда даже не понимают закон правильно. (§ Apple против Samsung)

Итак, худший вариант развития событий.

Автор умер, наследники глупы и им просто нравится судиться с людьми. Вы коммерчески перепечатали результаты пробного запуска программы GPL. Я предполагаю (но IANAL), что вы все равно можете выиграть, но это может оказаться сложнее, чем планировалось, и вы можете столкнуться с судьбой, очень утомительно отличающим программное обеспечение от написанного слова, предназначенного для потребления человеком. Я бы все еще сделал ставку на 70% успеха.

Почему я сказал коммерческое перепечатывание? Потому что трудно предъявить иск людям за ущерб, если вы не можете определить ценность «произведения искусства» (документации), которое было незаконно распространено. Если предмет иска не подлежит продаже или не поддается количественной оценке, вы не можете требовать достаточно убытков, чтобы заплатить адвокату.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.