В подкрепление общего правила был составлен список «пограничных» непатентуемых сущностей, который постепенно пополнялся. Согласно статье 52 Европейской Патентной Конвенции, не должны выдаваться патенты на научные открытия, научные теории, математические методы; эстетические (художественные) творения; схемы, правила и методы интеллектуальной деятельности, игр и бизнеса; программы для компьютеров; представление информации; методы лечения и диагностики человека и животных; растения и животные; биологические процессы воспроизводства растений и животных (кроме микробиологии).
С распространением программируемых компьютеров применение многого из вышеперечисленного стало возможным почти без участия человека. И вопрос о границах патентования снова приобрел актуальность. Незаконность патента на какой-нибудь новый метод параллельных вычислений достаточно очевидна, если это инструкция для бригады расчетчиков с арифмометрами. И гораздо менее очевидна, если речь идет об управляющей программе для железного ящика с микросхемами, возможно даже - зашитой в ПЗУ. В то же время, по мере перевода большей части материального производства в страны третьего мира, жителям метрополий разница между словами «промышленность» и «бизнес» становится все менее понятной. И патентные ведомства разных стран все более и более свободно стали выдавать «софтверные патенты», предоставляющие заявителю исключительное право на применение тех или иных алгоритмов, способов программирования, представления данных в программе, ведения бизнеса с использованием компьютеров и компьютерных сетей или организации человеко-машинного интерфейса. Обычно при этом используется маловразумительный «патентный» жаргон и разного рода маскирующие приемы. Самый известный из них - описание изобретения в качестве некоего абстрактного «устройства», при ближайшем рассмотрении оказывающегося обычным компьютером с запущенной на нем программой. Или же - в качестве «процесса» выполнения программы на компьютере. Первый в мире софтверный патент был выдан, как говорят, в 1962 году фирме British Telecom, но систематическая выдача началась в середине 1980-х в США.
В данном случае конфликт завязался вокруг Европейской Патентной Конвенции (EPC), и даже более узко - вокруг ее статьи 52, устанавливающей предмет и границы патентования. В отличие от копирайта, где авторские права граждан одной страны автоматически признаются всеми другими странами, подписавшими всемирную Бернскую Конвенцию, патентное право обычно предполагает, что заявку на патент в каждой стране нужно подавать отдельно. EPC (подписана в 1974-м, первый патент выдан в 1978-м), однако, создает особую организацию - Европейский Патентный Офис (EPO), для выдачи специальных «европейских» патентов, действительных на территории сразу нескольких (или даже всех) государств Евросоюза (и некоторых других). Будучи выданными, европейские патенты применяются наряду с национальными патентами участников Конвенции.
Первые софтверные патенты были выданы EPO в 1986 году, когда в США это было уже привычным делом. Систематическая раздача началась с 1996-97 годов, причем заявителями в большинстве случаев были крупные американские и японские корпорации. Но, в отличие от американского PTO, поддержки национальных судов EPO не получил. До сего момента ни один софтверный патент не был подтвержден в суде какого-либо европейского государства. Однако при этом EPO создал изрядное количество псевдопрецедентов внутри себя самого в виде решений Апелляционной Палаты ЕРО. Была придумана специальная теория, согласно которой EPC запрещает патентование алгоритмов только «как таковых» (as such), как абстрактных платоновских идей. Если же в патентной формуле указан какой-то дополнительный элемент, хотя бы и совершенно тривиальный, или же упомянут «технический эффект», происходящий от использования алгоритма, то ограничения статьи 52 EPC на нее больше не распространяются.
Примерно в это же время в аппарате EPO, среди патентных поверенных и в национальных патентных ведомствах стали появляться проекты реформирования Европейской Патентной Конвенции, которые бы исключали все ограничения на патентоспособность, по американскому образцу. Результатом их стала неудачная (из-за протестов общественности) попытка изменения текста EPC в августе 2000 года. Тогда же возник и эвфемизм «компьютерно-реализованное изобретение» (computer-implemented invention).
В 2002 году Директорат Европейской Комиссии по внутреннему рынку (DG Markt) выпустил Предложение 2002/0047 о Директиве о патентовании компьютерно-реализованных изобретений. Целью директивы были заявлены «гармонизация патентных законов и прояснение судебной практики». Противоречивость законов и судебной практики заключалась в том, что в одних государствах суды уже признавали софтверные патенты от EPO незаконными, а в других - подобные дела еще и не рассматривались, так что теоретически оставалась возможность их признания патентов от ЕРО правомерными. Содержанием директивы была легализация софтверных патентов с одним единственным ограничением - результат работы программы должен иметь некий «технический эффект».
Неожиданно проект легализации софтверных патентов вызвал недовольство публики, ранее считавшейся совершенно аполитичной. Начало протестам положили европейское отделение Free Software Foundation (FSF) и альянс Eurolinux (он объединяет европейские компании, работающие на рынке Linux), запустив полномасштабную политическую акцию, с пикетами и демонстрациями, расклейкой листовок и «письмами в редакцию». Постепенно за ними потянулось множество организаций, уже не связанных со свободным софтом и ОС Linux, а выступающих исключительно против софтверных патентов, вплоть до Партии зеленых. Надо сказать, что чиновников такая активность весьма шокировала. По их понятиям, европейская политика заключается в сложных и тонких дипломатических комбинациях, переговорах и союзах, взаимных уступках и договоренностях. Директива о софтверных патентах была для них разменной монетой. Принципиальное и публичное, в вульгарном американском стиле, выражение своей позиции и своих требований по поводу готовящейся Евродирективы, по их представлениям, не только неуместно, но и прямо-таки неприлично. Представители Еврокомиссии неоднократно жаловались на засилье хамских и некультурных (по их мнению) «лоббистов».
В сентябре 2003 года Европарламент на пленарном заседании принял этот законопроект. Правда, с оговорками. На рассмотрении проекта, продолжавшемся два дня, было внесено 120 поправок, из которых принято 78. Директива была фактически переписана заново - в прямо противоположном духе. Вместо ползучей легализации поправок под успокаивающими формулировками, она теперь решительно подчеркивала их недопустимость. Другие значительные изменения включали в себя: определение «технического характера» изобретения, которое проводило границу между абстрактной обработкой информации, с одной стороны, и управлением физическими процессами - с другой; требование, чтобы никакие патенты не могли препятствовать обеспечению взаимодействия между компьютерными системами.
Следующим шагом было рассмотрение директивы в Европейском Совете. 18 мая 2004 года появился некий «компромиссный вариант», подготовленный теми же самыми чиновниками Еврокомиссии, что писали и первоначальный текст законопроекта. Вопреки названию, сей «вариант» предусматривал еще более радикальное устранение ограничений на выдачу софтверных патентов, нежели прежние документы. Официально это подавалось как «предварительная» и «консультативная» позиция Евросовета. Однако чем дольше длилось обсуждение текста, тем меньше членов Евросовета готовы были подписаться под ним. Против софтверных патентов снова выступили Польша, Венгрия и Латвия. Парламенты Бельгии и Нидерландов потребовали от своих министров - чего с ними раньше никогда не случалось - зарубить этот вариант. Дания и Испания были против него с самого начала. Так что к весне 2005 года за «компромиссным» текстом большинства в Евросоюзе уже не набиралось.