Недавно Apache переклассифицировал код в соответствии с лицензией Facebook «BSD + Patents» на «Категория X», фактически запретив ему дальнейшее участие в проектах Apache Foundation. Этот шаг вновь вызвал споры по поводу выдачи патента, но, как и многие события в сообществе открытого исходного кода, споры носят скорее пристрастный, чем практический характер. Фактически, маловероятно, что этот шаг повлияет на принятие ReactJS, и критика выдачи патента BSD + в основном не выдерживает критического анализа.

Выдача патента Facebook, официально именуемая Дополнительная версия 2 патентных прав, действует уже много лет. Это применимо к очень популярному коду ReactJS - библиотеке Javascript для рендеринга пользовательских интерфейсов. Список крупных технологических компаний, использующих код, впечатляет, включая таких ориентированных на потребителей гигантов, как Netflix, и, конечно же, самого Facebook.

Новая реакция на старый грант

Реакция на эту новость вызывает удивление, учитывая, что в модели параллельного лицензирования патентов нет ничего нового. Facebook выпустил грант «BSD + Patents» в 2013 году (с пересмотром в 2015 году). Но аналогичная модель была с некоторой помпой использована Google со своим кодеком WebM в 2010 году. Эта модель лицензирования включает в себя два параллельных и одновременных предоставления прав: лицензию BSD на авторское право на программное обеспечение и отдельный грант на патентование, о которых идет речь. программное обеспечение. Их объединение означает, что есть два независимых и параллельных предоставления прав. В этом отношении она очень похожа на лицензию Apache 2.0, которая, как и BSD, является разрешительной лицензией и также содержит положение о защитном прекращении, которое существует наряду с предоставлением лицензии на авторские права.

Большая часть реакции на объявление Apache Foundation только что вызвала путаницу, например, эта статья ошибочно называет ее заминированной. Фактически, многие лицензии с открытым исходным кодом содержат защитные положения о прекращении действия, которые в большинстве случаев считаются разумным механизмом для предотвращения патентных исков, а не минной ловушкой. Они также являются скорее правилом, чем исключением; все основные лицензии с открытым исходным кодом с выдачей патентов также имеют защитные положения о прекращении действия - каждая с немного разными условиями. Разница между грантом Facebook, который Apache отклонил, и лицензией Apache 2.0, которую Apache требует для своих проектов, более тонкая, чем предполагают споры.

Положения о защитном прекращении действия могут быть разными

Положения защитного прекращения действия различаются по двум основным направлениям: триггер для прекращения действия и объем прекращаемых прав. Что касается объема прекращенных прав, существует два лагеря: те, которые прекращают только предоставление патентных прав (включая Apache 2.0, Eclipse Public License и грант Facebook), и те, которые также прекращают действие лицензии на авторские права (Mozilla Public License и GPL 3). Другими словами, для большинства лицензий подача иска о нарушении патентных прав может привести только к прекращению патентных прав; для других подача патентного иска может также привести к прекращению действия лицензии на авторское право - вынудив одного прекратить использование кода. Прекращение действия авторской лицензии - гораздо более сильный антипатентный механизм и более рискованный для частного бизнеса, в результате чего некоторые частные компании отказываются использовать код GPL3 или MPL.

Грант Facebook отличается от большинства других лицензий с открытым исходным кодом своим порогом для инициирования прекращения действия. В Apache 2.0, например, прекращение выдачи патента инициируется заявкой на патент, в которой обвиняется программное обеспечение, предоставленное по лицензии. Идея состоит в том, чтобы создать «общий патент» на программное обеспечение. Большинство других лицензий с открытым исходным кодом примерно следуют этому расчету. Патентная лицензия Facebook также прекращает свое действие, если лицензиат предъявляет иск к Facebook или к любой стороне, обвиняющей продукт Facebook. В этом отношении триггер прекращения действия аналогичен триггеру в Общей общественной лицензии 1.0, написанной много лет назад IBM. («Если Получатель возбуждает патентный судебный процесс против Участника в отношении патента, применимого к программному обеспечению ... тогда любые патентные лицензии, предоставленные этим Участником такому Получателю в соответствии с настоящим Соглашением, прекращают свое действие с даты подачи такого судебного разбирательства»)

Ничего нового под солнцем

Положения о защитном прекращении действия гранта Facebook очень распространены в лицензировании патентов за пределами ландшафта с открытым исходным кодом. Большинство патентных лицензий прекращаются, если лицензиат предъявляет патентные претензии лицензиару. Причина в том, что лицензиар не хочет в одностороннем порядке «разоружаться» в патентной битве. Большинство патентов используются только в целях защиты - заявляются, когда конкурент предъявляет иск владельцу патента. A предъявляет иск B, а затем B предъявляет иск A, что приводит к взаимно гарантированному уничтожению. Если B выпустил свое программное обеспечение по лицензии с открытым исходным кодом без широкого защитного положения о прекращении, B потенциально не имеет права регресса и заплатил высокую цену за выпуск своего открытого исходного кода. A получает право одновременно бесплатно пользоваться разработкой программного обеспечения B и предъявлять иск B за нарушение патентных прав.

Наконец, сам грант Facebook не нов. Грант был выпущен в 2013 году, и с тех пор популярность ReactJS растет. Как и в случае со многими лицензиями с открытым исходным кодом, готовность отрасли принять новую лицензию зависит от вкуса кода, выпущенного под ней. В случае ReactJS код был отличным, а условия патентной лицензии были новыми, но разумными.

Это открытый исходный код?

Некоторые предположили, что пункт о патентах BSD + нарушает Определение открытого исходного кода. OSD не допускает лицензий, дискриминирующих людей или группы, или области деятельности. Но выдача патента не имеет ограничений по объему лицензии; он прекращается, если лицензиат плохо себя ведет - это неправильное поведение имеет более низкий порог для действий против автора кода, чем для других. Таким образом, кажется вероятным, что BSD + Patents не нарушает OSD, и, более того, CPL уже одобрен Open Source Initiative как совместимый. CPL, как и BSD + Patents, устанавливает более низкий порог прекращения действия на основании патентных исков против автора кода.

Что такое апшот?

Практический результат решения Apache Foundation неясен. Лицензионный код категории X не может быть включен в репозиторий Apache Foundation. (В эту категорию также входят лицензии, такие как GPL.) Переклассификация Apache не означает, что кому-либо запрещается использовать ReactJS - это просто невозможно сделать в проекте Apache. Непонятно даже, что проект Apache не может содержать зависимость от лицензионного кода BSD + Patents.

Между тем, в частном бизнесе нет разногласий по поводу использования кода в соответствии с условиями патента BSD +. Большинство компаний изучили предельный юридический риск этой лицензии по сравнению с другими (например, Apache 2.0) и сочли ее невысокой. Если компания не решит подать в суд на Facebook (или обвинить ее продукты), триггер прекращения действия не имеет фактического эффекта. Если вы хотите подать патентные претензии в компанию, которая разработала и выпустила отличный код, удаление кода из вашего бизнеса кажется разумной платой.

Некоторые разногласия, похоже, возникают из-за опасений, что Facebook имеет преимущество перед другими в условиях лицензии. Но это не то же самое, что наносить вред сообществу открытого исходного кода. Выдача патентов BSD + устанавливает те же «общие патентные права», что и Apache 2.0, в качестве основы, но обеспечивает большую защиту участника (Facebook) от претензий лицензиатов на патенты на программное обеспечение. Странно, что сообщество, столь противное патентам на программы, сочло это нежелательным, особенно в свете множества положений о защитном прекращении, которые использовались в прошлом.

Хизер Микер - партнер в Кремниевой долине компании O’Melveny & Myers, LLP. Она является экспертом по лицензированию программного обеспечения, а также часто пишет и докладывает о лицензировании программного обеспечения с открытым исходным кодом.

ОБРАТИТЕ ВНИМАНИЕ: эта запись в блоге посвящена патентной лицензии BSD +, а не Facebook. Этот пост представляет только мои личные взгляды, а не взгляды Facebook. Я действительно представляю Facebook по вопросам открытого исходного кода, но я не составлял проект лицензии на патенты BSD +.