Automatyczne generowanie kodu: „praca pochodna”?

18

Na przykład mam oprogramowanie GPL. Jestem autorem tego oprogramowania GPL. To oprogramowanie GPL zawiera między kodami komentarze Doxygen. Te komentarze Doxygen zostały napisane w celu wygenerowania strony HTML CC-BY-SA w celu przesłania tej wygenerowanej dokumentacji na moją stronę internetową projektu na licencji CC-BY-SA.

Ale czy dokumentacja Doxygen jest „pracą pochodną”? W końcu ta dokumentacja oparta jest na moim kodzie źródłowym GPL. W takim przypadku dokumentacja musi być GPL. Ale chcę, aby dokumentacja była CC-BY-SA, ponieważ jest to dokumentacja. GFDL nie pomaga. Kod GPL nie może stać się GFDL (odwrotnie tak).

Jeśli ten wynik jest naprawdę dziełem pochodnym, myślę, że stwarza dziwną sytuację, ponieważ jeśli dystrybuuję moją pracę, użytkownicy odbiorcy nie mogą legalnie rozpowszechniać wygenerowanej dokumentacji: podczas gdy ja mogę to zrobić, chcę, użytkownicy nie chcą t zatem muszą rozpowszechniać wszelkie dzieła pochodne na tej samej licencji, którą im oferuję.

Jakie jest rozwiązanie?

Peregring-Łk
źródło
3
Interesujące pytanie!
wałek klonowy

Odpowiedzi:

13

To naprawdę trudne pytanie (w rodzaju pytania „zapytaj swojego prawnika”).

Ponieważ jesteś autorem oprogramowania, możesz wyjaśnić swoje intencje i uniknąć niejasności, dodając do licencji wyjątek „Komentarze Doxygen są CC-BY-SA”, zgodnie z następującymi zasadami:

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.

użytkownik 281377
źródło
Dziękuję Ci bardzo. Ale w związku z tym rozdziałem 7 nie rozumiem dokładnie, jakie rodzaje dodatkowych uprawnień mogą zostać usunięte przez odbiorców.
Peregring-lk
1
Za pomocą tekstu GPL odbiorcy mogą usunąć wszelkie dodatkowe uprawnienia (takie jak powyższe) ze swojej kopii lub z dowolnej jej części. Ale to IMO prawdopodobnie nie stanowi większego problemu, ponieważ nie mogą one pozbawić cię prawa do udzielenia takiej zgody jakiejkolwiek stronie trzeciej dotyczącej twojego kodu. W rzeczywistości nie potrzebujesz wyjątku do rozpowszechniania wygenerowanej dokumentacji - jako właściciel praw autorskich możesz robić, co chcesz, z własnej pracy. Wyjątek CC-BY-SA ma tylko na celu umożliwienie odbiorcom wygenerowania i dystrybucji dokumentacji z kodu źródłowego.
user281377
Jeśli jednak bezpośredni odbiorca usunie tę klauzulę i przekaże ją innym razem, odbiorca „trzeciego poziomu” będzie miał ten sam problem prawny.
Peregring-lk
2
To prawda, i nic nie możesz na to poradzić. Nakładanie dalszych ograniczeń, takich jak „nie możesz usunąć wyjątku cc-by-sa-wyjątek”, jest zdecydowanie nie do przyjęcia z GPL. Utworzenie własnej licencji najprawdopodobniej czyni twoją pracę niezgodną z GPL, co drastycznie zmniejsza jej wartość dla innych, którzy mogą chcieć stworzyć dzieło pochodne zawierające części twojej pracy i części innych źródeł GPL.
user281377
2
Cały problem polega na tym, że nie ma (darmowej) licencji dotyczącej utworów tworzonych przez elementy o różnym charakterze. Wydaje się, że GPL jest zaprojektowana dla oprogramowania czystego kodu, zapominając o innych elementach kodu innego niż kod źródłowy zintegrowanych z oprogramowaniem.
Peregring-lk
2

Aby być „dziełem pochodnym”, coś musi być najpierw dziełem. Zgodnie z prawem Stanów Zjednoczonych tylko proces twórczy może stworzyć utwór. Zautomatyzowany proces nie może utworzyć dzieła pochodnego, ponieważ nie może utworzyć dzieła, które wcześniej nie istniało. (Oprócz kilku konkretnych wyjątków utworzonych przez ustawę).

Jeśli się nad tym zastanowić, nie może to być praca pochodna. Załóżmy, że uruchamiasz program A na tekście B i tworzysz utwór C. Jeśli jest to nowy utwór pochodny, kto ma do niego prawa autorskie? Nie stworzył go żaden człowiek, a program nie może posiadać praw autorskich.

Nie-kreatywne kombinacje nie mogą tworzyć żadnych nowych dzieł, pochodnych lub nie. To, co mogą tworzyć procesy mechaniczne, to praca zbiorcza. Jest to prawnie takie samo, jak gdybym skleił dwie płyty DVD razem (lub połączyłem dwa pliki na tym samym nośniku pamięci). Nie ma prac pochodnych, ale dwa zszyte DVD są agregacją obu prac.

Patrz 17 USC 103 (b): „Prawa autorskie do kompilacji lub dzieła pochodnego obejmują wyłącznie materiał wniesiony przez autora takiego dzieła, w odróżnieniu od wcześniej istniejących materiałów zastosowanych w tym dziele, i nie implikują żadnych wyłącznych praw do istniejący materiał. ”

Zobacz także okólnik 14 .

Kim byłby autor dzieła pochodnego?

David Schwartz
źródło
Zatem z jakiego powodu Flex / Bison kopiuje w swoich automatycznych wynikach (z plików z opisami gramatycznymi) oświadczenie o licencji? Jeśli te wyniki nie są „dziełami” (a więc i dziełami pochodnymi), nie ma sensu, aby te klauzule prawne. To samo można powiedzieć o plikach .sty generowanych automatycznie z pakietów .dtx i .ins?
Peregring-lk
Ponieważ dane wyjściowe zawierają kreatywne elementy pobrane z Flex, Bison i tak dalej. Jeśli zgrywasz książkę na pół, nie stworzyłeś dzieła pochodnego (nie potrzebujesz pozwolenia od właściciela praw autorskich, aby zgrać książkę na pół i sam nie możesz zarejestrować praw autorskich na pół książki), ale nie możesz wykonać kopii tych połówek i przekazać ich wszystkim znajomym. Dobrze? Zgodnie z prawem połówki książki zachowują się jak oryginalne dzieła. To samo tutaj - wszelkie chronione elementy oryginalnego dzieła obecne w połączonym wydruku są nadal chronione prawem autorskim. To po prostu nie jest praca pochodna.
David Schwartz
Rozumiem pierwszą część (wkład to oryginalny element twórczy), ale nie widzę związku między podzieloną książką a faktycznym problemem.
Peregring-lk
Nie jestem pewien, jak mogę to wyjaśnić jaśniej, niż już mam. Zautomatyzowany proces nie tworzy pracy pochodnej zgodnie z prawem USA (poza kilkoma wyjątkami utworzonymi przez ustawę, które nie mają tutaj zastosowania). Postanowienia licencyjne dotyczące dzieł pochodnych nie mają zastosowania do wyniku zautomatyzowanego procesu. (Mówiąc ściślej, wyniki są pracami, po prostu nie są nowymi pracami, więc nie mogą być nowymi pracami pochodnymi. „Praca pochodna” jest rodzajem nowej pracy, która zawiera twórczą kombinację elementów poprzednich prac. )
David Schwartz
1
@DavidSchwartz Oznacza to, że jeśli automatycznie wygenerujesz plik PDF („wynik”) z mojego kodu źródłowego LaTeX („dzieło”), to dane wyjściowe są moje i masz takie same prawa do tego wyniku, które ci dałem, gdy otrzymałeś moją pracę . Dobrze? Dlatego jeśli chcesz redystrybuować dane wyjściowe, musisz je redystrybuować na takich samych warunkach, jakie określa licencja na pracę. Ale dane wyjściowe mają licencję CC-BY-SA (ponieważ praca daje wynik). A to sprzeczność, czy nie?
Peregring-lk
1

Nic nie stoi na przeszkodzie, aby zastosować różne licencje do tego samego kodu. Jeśli dobrze cię rozumiem, masz kod napisany i kontrolowany przez ciebie, który zawiera komentarze, które chcesz opublikować na licencji CC oraz kod, który chcesz wydać na licencji GPL. Więc po prostu to zrób. Komentarze zostaną opublikowane na licencji GPL i na licencji CC, więc jeśli ludzie używają komentarzy zgodnie z licencją CC, są w porządku.

Często zadawane pytania na temat GNU GPL mówią o automatycznie generowanym kodzie, więc może źle odpowiedzieć na twoje pytanie. (Obejmuje również wiele innych przypadków narożnych.)

Michael Shaw
źródło
moja lektura najczęściej zadawanych pytań wskazuje raczej, że wygenerowany kod jest zablokowany : „gdy program tłumaczy swoje dane wejściowe na inną formę, status praw autorskich danych wyjściowych dziedziczy dane wejściowe, z których zostały wygenerowane ...”
gnat
@gnat: Co masz na myśli „zablokowany”? W jaki sposób przytoczona przez Ciebie część jest sprzeczna z tym, co powiedziałem?
Michael Shaw
To jest w pobliżu udostępnionego linku. Każdy, kto używa pliku gramatyki GPL, bądź ostrożny. Treść jest kopiowana do wygenerowanego kodu, więc wygenerowany kod to także GPL. gnu.org/licenses/gpl-faq.html#WhatCaseIsOutputGPL
RubberDuck
0

Pytanie jest dyskusyjne.

Jeśli jesteś autorem programu, masz wszelkie prawa do rozpowszechniania go na warunkach, które lubisz. Jeśli więc wygenerujesz dokumentację na innej licencji, będziesz mieć ją na innej licencji. Ponieważ tak powiedziałeś.

Program nie został napisany przez ciebie? Następnie tworzona dokumentacja powinna być GPL, ale stanowi to inny problem. GPL nie mówi o dokumentacji. Mówi o oprogramowaniu.

Jeśli więc chcesz przedrukować komercyjnie wyniki doxygenowego programu GPL, którego nie napisałeś, oto co robisz: piszesz do autora i prosisz o wyraźną zgodę. To samo, jeśli chcesz rozpowszechniać te dokumenty na licencji CC-BY-SA. Nie przyklejasz etykiety, prosisz autora, aby ją nakleił.

Prawo nie jest dziwną grą umysłową. Chodzi o ludzi przekonujących jury lub sędziów. Sędziowie nie znoszą gier umysłowych, a jury czasem nawet nie rozumie poprawnie prawa. (§ Apple vs. Samsung)

Więc najgorszy scenariusz.

Autor nie żyje, spadkobiercy są głupi i po prostu lubią pozywać ludzi. Przedrukowałeś komercyjnie wyniki serii doxygen programu GPL. Domyślam się (ale IANAL), że nadal możesz wygrać, ale może to być trudniejsze niż planowano i możesz spotkać się z sędzią bardzo żmudnym w odróżnianiu oprogramowania od słowa pisanego przeznaczonego do spożycia przez ludzi. Nadal postawiłbym na 70% wskaźnik sukcesu.

Dlaczego powiedziałem przedruk w celach komercyjnych? Ponieważ trudno jest pozwać ludzi za szkody, jeśli nie można określić wartości „dzieła sztuki” (dokumentacji), które zostało nielegalnie rozpowszechnione. Jeśli przedmiot sprawy nie podlega wymianie handlowej lub ma wartość niekwalifikowalną, nie możesz dochodzić wystarczającej kwoty odszkodowania, aby zapłacić prawnikowi.

ZJR
źródło