【原创】软件专利申请中的技术特征
软件专利申请的权利要求,可以撰写为方法权利要求和产品权利要求,无论采用何种撰写方式,本质上反映的都是程序流程。笔者简单地将一些程序流程的技术特征做一些总结,便于在撰写软件专利申请时组织权利要求。
在代理实践中,笔者发现程序流程的技术特征,主要包括硬件、程序模块、数据、数据处理动作、数据关系和时序。
硬件,比如终端或者服务器,还比如终端中的CPU、内存、显卡以及硬盘等。硬件可以是程序流程的执行主体,也可以是程序流程的作用对象。程序流程的改进可能并不涉及硬件,因此硬件仅仅是可能出现在软件专利申请的权利要求中。
程序模块,一般见于装置权利要求中,比如控制模块或者计算单元等。程序模块一般不出现在方法权利要求中,除非方法权利要求的创造性主要体现在程序模块所反映的软件架构。
数据,是计算机可读、可处理以及可存储的信息,比如文字、图像、音频文件、视频文件或者网页数据等。数据必然会出现在软件专利申请的权利要求中,其可以是程序流程的输入、中间结果或者最终输出。
数据处理动作,是计算机针对数据的处理动作,比如复制、粘贴、删除、修改、求和或者偏移等。数据处理动作也必然会出现在软件专利申请的权利要求中。
数据关系,是多个或多种数据之间的联系,比如数据A与数据B一一对应,数据C大于、等于或小于数据D等。数据关系也并非必然出现在软件专利申请的权利要求中。
时序,是方法权利要求中必然出现的特征。在软件专利申请的权利要求中,数据处理动作的发生具有时序,针对数据的数据处理动作按时序形成步骤,再进一步形成权利要求所保护的方案。
举例说明,假设权利要求如下:
获取数据A;
将数据A拆分为数据B和数据C;
将数据B进行X处理,得到数据D;
将数据C进行Y处理,得到数据E;
将数据D和数据E进行Z处理,输出数据F。
上述权利要求中,不涉及硬件的改进,也没有对程序模块的限定。数据A、B、C、D、E和F都是数据。获取、拆分、X处理、Y处理和Z处理都是数据处理动作。从数据A经过处理最终得到数据F的一系列数据处理动作形成了时序。
而且,上述权利要求可以表示为“数据链”:(获取)数据A(拆分){数据B(X处理)数据D;数据C(Y处理)数据E}(Z处理)数据F。
其中,“()”中的内容表示数据处理动作,数据处理动作之前的数据是该数据处理动作的输入,数据处理动作之后的数据是该数据处理动作的输出,“{}”表示多个元素的组合。
利用上述“数据链”,可以检验出上述权利要求的方案逻辑是正确的。“数据链”是笔者创造的一个词,可以反映出程序流程的各个技术特征,尤其可以反映出时序,在撰写时可以帮助理解方案。上述“数据链”是文字形式,在实际工作中表示为图示形式将更为直观。
投稿邮箱:
customerservice@acip.cn