作者:李镇江 资深专利代理人、诉讼代理人
目前,按照中国审查指南第二部分第九章的规定,对于涉及计算机程序的专利申请,只要其不是智力活动的规则和方法,并且其解决方案执行计算机程序的目的是解决技术问题,在计算机上运行计算机程序从而对外部或内部对象进行控制或处理所反映的是遵循自然规律的技术手段,并且由此获得符合自然规律的技术效果,则这种解决方案属于专利法第二条第二款所说的技术方案,属于专利保护的客体。
因此,在这样的规定下,目前大量的计算机软件相关申请都能够获得专利权。然而,与机械领域的申请的“所见即所得”不同,计算机软件相关申请的技术方案具有抽象性和不可见性,很多方案的内容是在不可见的后台运行,对于这样的方案,很容易在行使权利时,或者说在侵权判定时遇到困难。
举一个简单的例子加以说明。
例1:一种便携式终端,当用户在显示屏上挥击时,在终端的界面上显示可用的图形对象,然后如果用户选定了其中一个对象,就执行所述对象。这是一个我们在日常手机操作中常见的场景。下面就以该简单的场景为例进行说明。
在撰写时,权利要求1写成:
“1. 一种用户终端设备,包括:
触摸传感器,用于感测用户的手指挥动和点击,并产生相应的电信号;
数据库,用于存储图形对象;
执行器,用于执行图形对象;
中继单元,被配置为如果所述电信号是感测用户的手指挥动产生的电信号,则将电信号传递到数据库,如果所述电信号是感测用户的手指点击产生的电信号,则将电信号传递到执行器。”
该权利要求的撰写过多涉及终端设备内部的抽象结构。实际上,由于软件程序的不可分性,诸如中继单元、执行器等部件未必在终端设备中作为一个单独的部件存在,可能是写在同一个大的软件代码中的。这样,在侵权检测的时候,就会发生问题,即诸如数据库、执行器、中继单元等部件在侵权检测时拆开被诉侵权样机未必可见,只能借助于复杂的技术鉴定等环节,为侵权的举证造成了很大的障碍。
笔者通过多年的专利诉讼和撰写实践,发现一个易于侵权举证的计算机软件相关的权利要求应该具有以下特点:
1. 用外在容易感知的特征撰写;
2. 针对可能感测到侵权的所有产品撰写,不是针对本申请相应的上市产品的特定结构撰写;
3. 撰写时最好能构想出一个侵权检测的场景,按照该场景去撰写。
按照上述标准1,不难发现,上述例1中的数据库、执行器、中继单元都是看不见、摸不着的。即便当场拆机,数据库、执行器、中继单元也未必是物理上可分的独立的模块。被诉侵权方当然会以其被诉侵权产品并不具有相应模块来进行抗辩。
上述权利要求1也同样不符合上述标准2。在可能侵权的产品中未必具有数据库。虽然本申请可能将图形对象存储在数据库中,但可能侵权的产品可能将图形对象存储在内存的一小块区域中,也有可能之间固化在程序代码中。另外,可能侵权的产品也未必具有中继单元。中继的功能可能直接包含在触摸传感器的功能中。
上述权利要求1也同样不符合上述标准3,即并没有按照相应侵权检测的场景去撰写,导致无法在侵权诉讼中直观地向法官演示侵权检测的整个过程。
如果按照侵权检测的场景撰写,首先构想一个侵权检测的场景:一个用户在手机显示屏上挥击一下,然后若干图形对象出现在显示屏上,然后用户选择其中的一个图形对象,手机运行该图形对象。
改写后的权利要求1如下:
“1. 一种运行图形对象的方法,包括:
响应于在显示屏上的挥击,显示图形对象集;
响应于对所述图形对象集中的图形对象的选择,运行所述图形对象。”
再据此撰写相应的装置权利要求。
上述的权利要求1就完全符合上述的3个标准。首先,按照侵权检测的场景撰写,保证了方便地演示侵权的整个过程。其次,用外在容易感知的特征撰写,法官很容易进行侵权对比。另外,它脱离了本申请相应上市产品的特定结构,而是按照能够涵盖所有竞争对手可能制造出的结构进行普适性地撰写。
对于标准1,什么是“外在容易感知的特征”呢?
笔者通过多年实践,认为在实践中有三个比较容易操作的表现形式,供大家分享:
1) 直观可见的,例如上面的例1;
2) 直接可测量的;
3) 容易拆卸分解的。
除了上述例1外,再给出一个关于表现形式1)的例子。
例2. 一种在浏览器内部防止授权组件外的组件恶意篡改授权组件的内容的系统,目的在于提高浏览器组件访问的安全性。原权利要求1写成:
“1. 一种提高浏览器内部安全性的系统,包括:
安全框架装置,由浏览器创建,
其中,所述安全框架装置进一步包括:
组件创建器,用于创建来自多个源的组件;以及
监督模块,用于监督组件创建之后各个组件之间的相互调用。”
对应的附图如下:
这样的一个权利要求,它的表现形式显然不是直观可见的。诸如组件创建器、监督模块这样的部件是编程于浏览器内部、看不见摸不到的模块,它们的软件代码也未必是截然分开的,很难找到哪一部分就对应于组件创建器,哪一部分就对应于监督模块。因此,这样的权利要求在侵权判定时会遇到比较大的困难。
结合前面提到的按照侵权检测的场景撰写的原则,就容易构造出一个侵权检测时非常直观的权利要求。此案在侵权检测时无非是构造这样的场景:先让浏览器运行,然后用浏览器中的安全框架之外的组件去调用,结果被浏览器拒绝。因此,撰写出如下权利要求:
“1. 一种用于在未修改浏览器上保护web应用的跨域交互的方法,包括:
创建来自多个源的组件;
响应于来自所创建的组件外的组件的调用,拒绝所述调用。”
进而,可根据方法权利要求1,再写成装置权利要求。
这样的权利要求,由于具有直观性,在侵权检测时非常有利。
如上提到的“外在容易感知的特征”的第二个表现形式是“直接可测量的”。例如,一个方案中具有若干连线,在某条连线上截取一点,在该点上出现了信号,就可以认定发生了侵权,这样的撰写方式往往被认为是“直接可测量的”。下面以例3为例进行说明。
例3. 一种定位程序故障的装置,目的在于改进现有技术中程序在内核中执行发生了故障但在何处发生故障无处可查的现状,使得在程序出现故障时能够清晰地定位在程序的什么位置出现了故障。原权利要求1如下:
“1. 一种定位程序的故障的方法,包括:
在程序的进程中创建辅助线程,使该辅助线程与虚拟机JVM相挂接;
在内核中插入探测器;
探测器检测到程序故障时向所述辅助线程发告警信号;
所述辅助线程响应于该告警信号而从虚拟机JVM取回调用栈信息,从而利用该栈信息定位到程序中发生故障的位置。”
对应的附图如下:
在原权利要求1中,将设置辅助线程11和探测器21的准备过程也写了进去。但显然,当检测侵权时这些后台的准备过程是无法看见的,因此导致侵权判定困难。考虑到前面提到的“构造侵权场景”标准,我们可以为此案构造如下侵权场景:在现有技术中,程序进程1和内核2之间的连线上是不出现信号的,程序进程1和虚拟机JVM 3之间的连线上也是不出现信号的。因此,一旦这些连线上出现了信号,就意味着检测到了侵权。
改写后的权利要求1如下:
“ 1. 一种用于定位程序中的故障的方法,包括:
监视程序的运行并在检测到程序故障时向辅助线程发告警信号;
响应于告警信号,从虚拟机JVM取回调用栈信息,从而利用该栈信息定位到程序中发生故障的位置。”
然后,可以根据方法权利要求写成相应的装置权利要求。
改写后的权利要求1中的两个步骤分别对应于程序进程1和内核2之间的连线上检测到信号以及程序进程1和虚拟机JVM 3之间的连线上检测到信号。因此,通过简单的信号检测和分析技术,就能够判定是否发生了侵权。
如上提到的“外在容易感知的特征”的第三个表现形式是“容易拆卸分解的”。
例4. 一种打印机,它与现有技术的区别在于其墨盒里编写了一些软件程序,使得能够监测墨盒中墨水的量,一旦墨水的量低于阈值,向墨盒架发射警报信号,同时墨盒架中也编写了一段软件程序,一旦接到警报信号,利用弹片使墨盒弹出。原权利要求1撰写成:
“1. 一种打印机,包括:
打印头,用于……;
墨盒,用于……,内置有墨水感测装置,该墨水感测装置响应于墨盒中墨水的量低于阈值,发射警报信号;
墨盒架,内置有分析装置,该分析装置响应于接收到警报信号,利用弹片使墨盒弹出。”
上述权利要求中的打印头、墨盒、墨盒架是容易拆卸分解的,而墨水感测装置和分析装置往往是抽象的装置,是不容易拆卸分解的。如果按照下面的方式撰写权利要求1,会大大提高侵权判定成功的概率:
“1. 一种打印机,包括:
打印头,用于……;
墨盒,用于……,响应于墨盒中墨水的量低于阈值,发射警报信号;
具有弹片的墨盒架,响应于接收到警报信号,利用弹片使墨盒弹出。”
上面仅是根据笔者的专利诉讼的实践总结出来的一些容易使计算机软件相关的发明在侵权时易于判定的撰写方式。当然,确实也存在着一些侵权时易于判定的权利要求在实审中由于新颖性、创造性或其它的一些原因不太容易通过的情况。而实审中容易通过的权利要求在侵权判定中往往不好用,甚至是无用的权利要求。笔者从计算机软件相关的发明的诉讼实践中感到,计算机软件相关发明的真正保护在中国还有很长一段路要走,需要中国的专利工作者、法律工作者、企业界和社会公众长期共同努力。我相信,只要认识到申请人、专利权人的真正诉求在哪里,再加上广大专利工作者和法律工作者的不断呼吁和推进,中国的计算机软件相关的发明的保护将会越来越贴近专利权人真正的需求。