Судья Алсуп вынес свой вердикт по вопросу о том, охраняются ли пакеты API, участвовавшие в иске Oracle о нарушении авторских прав против Google. Его постановление состоит в том, что в этом конкретном случае элементы, воспроизведенные Google, были «свободны для использования всеми в соответствии с Законом об авторском праве».
Заключение судьи Алсупа:
Заявление Oracle, основанное на копировании Google 37 пакетов API, включая их структуру, последовательность и организацию, ОТКАЗАНО.
находится в конце 41-страничного документа, потребовавшего большого количества исследований и усилий, как с точки зрения юридических прецедентов, так и с точки зрения информатики.
В разделе «Резюме постановления» четко и понятно изложен принцип, на основании которого было вынесено решение:
Пока конкретный код, используемый для реализации метода, отличается, любой может в соответствии с Законом об авторском праве писать свой собственный код для выполнения точно такой же функции или спецификации любых методов, используемых в Java API. Не имеет значения, что строки заголовка объявления или метода идентичны. Согласно правилам Java, они должны быть идентичны, чтобы объявить метод, определяющий одну и ту же функциональность, даже если реализация отличается. Когда есть только один способ выразить идею или функцию, каждый может сделать это и никто не может монополизировать это выражение. И хотя имена методов и классов Android могли отличаться от имен их аналогов в Java и по-прежнему работать, защита авторских прав никогда не распространяется на имена или короткие фразы по закону.
Позже это продолжается:
Но имена — это больше, чем просто имена — это символы в структуре команд, в которой команды принимают форму
java.package.Class.method ()
Каждая команда вызывает действие заранее назначенной функции. Общее дерево имен, конечно, имеет творческие элементы, но это также и точная командная структура — утилитарный и функциональный набор символов, каждый из которых выполняет заранее заданную функцию. Эта командная структура является системой или методом работы в соответствии с разделом 102 (b) Закона об авторском праве и, следовательно, не может быть защищена авторским правом. Дублирование командной структуры необходимо для взаимодействия.
В подробном разделе «Изложение результатов» мы рассматриваем обзор Java и Android, который будет не лишним в учебниках по языкам компьютерного программирования. Следующая аналогия используется для объяснения идеи API:
API похож на библиотеку. Каждая упаковка подобна книжной полке в библиотеке. Каждый урок подобен книге на полке. Каждый метод похож на практическую главу в книге. Перейдите на правую полку, выберите нужную книгу и откройте в ней главу, посвященную нужной вам работе. Что касается 37 пакетов, библиотеки Java и Android организованы одинаково, но все главы в Android написаны с реализациями, отличными от Java, но решающими те же проблемы и предоставляющими те же функции. Каждый метод и класс определены для выполнения точных желаемых функций, и, таким образом, строка «объявления» (или «заголовка») кода, в которой указываются спецификации, должна быть идентична для выполнения данной функции.
В следующем разделе мы рассмотрим синтаксис Java и структуру методов Java, которая представляет собой заголовок, за которым следует блок кода, ответственный за реализацию. Затем вводятся классы, и судья даже представляет некоторый закомментированный код, напоминая нам, что он не новичок в программировании.
Окружной судья США Уильям Алсуп, Северный округ Калифорнии
К счастью, он тоже не новичок в законе, и вторая половина его постановления переходит к рассмотрению разработки закона об авторском праве компьютерных программ и их структуры, последовательности и организации столь же всеобъемлющим и понятным образом.
Приговор не дает карт-бланш за грубое обращение с интеллектуальной собственностью программного обеспечения. Здесь утверждается:
Это распоряжение не означает, что пакеты Java API могут быть бесплатными для всех без лицензии. Он не утверждает, что структура, последовательность и организация всех компьютерных программ могут быть украдены. Скорее, он основан на конкретных фактах этого дела, отдельные элементы, воспроизведенные Google, были свободны для использования всеми в соответствии с Законом об авторском праве.
Несмотря на то, что Oracle потратила около 50 миллионов долларов на судебные издержки, Oracle уже заявила о своем намерении подать апелляцию, но судья Алсуп усложнил возможность легкой отмены своего решения. Один из способов сделать это — указать на то, что, подчеркивая понятие функциональной совместимости, Oracle самопротиворечит.
Хотя решение судьи Алсупа вряд ли останется без возражений, и в какой-то момент в будущем мы увидим, что со стороны Oracle возникнут дальнейшие извращения, на данный момент, по крайней мере, экосистема Android находится в безопасности. Более того, благодаря этому судье, существует прецедент, который должен затруднить оспаривание нарушения авторских прав на базовые вычислительные конструкции в будущем.