The Board of Appeal ruled that the definition and provision of a programming language per se does not contribute to the solution of a technical problem even if the choice of how it is expressed serves to reduce the mental effort of a programmer.
Pursuant to established case law of the EPO Boards of Appeal, not every computer program is patentable. The distinction between patentable computer programs and computer programs “as such” required by Article 52 EPC has been tied by jurisprudence to the existence of a “further” technical effect. Having regard to the activity of a programmer, the Enlarged Board of Appeal found in its opinion G 3/08 (“Programs for computers”) that “(…) would appear that the fact that fundamentally the formulation of every computer program requires technical considerations in the sense that the programmer has to construct a procedure that a machine can carry out, is not enough to guarantee that the program has a technical character (or that it constitutes ‘technical means’ as that expression is used in e.g. T 258/03, Hitachi). By analogy one would say that this is only guaranteed if writing the program requires ‘further technical considerations’”. The question of whether or not the provision of an intuitive programming scheme involved such “further technical considerations” had to be answered by Board 3.5.06 in a more recent case.
The underlying European application 04014708.4 (in German) was refused by the Examining Division for lack of inventive step. It related to a graphical programming language and environment that should enable a user to produce program code without requiring major learning effort or special expertise. According to the invention, different program modules were available which could be linked pursuant to pre-determined rules. The modules were represented by graphical symbols that a user could arrange and connect by lines on a visualization surface so as to form a structure diagram. Each module of the diagram corresponded to a section of the program code, and the diagram corresponded to a complete program. By manipulating graphical symbols on a computer screen a user could thus define text-based program code without directly having to enter any text. The individual modules could, however, be edited in a window by clicking on them.
In the Board's opinion, the effect of reducing the mental effort a user has to invest in programming is not technical; this is all the more so as it is to be equally achieved for all programs, no matter what purpose the programs are meant to serve. The activity of programming – in the sense of formulating program code – implies that a programmer must choose those formulations from the repertoire of a programming language that will lead to the desired result when the program is executed.
Hence, in the Board’s view, the activity of programming as such is basically a mental process, comparable to the verbalization of a thought or the formulation of a mathematical fact in a calculus, and thus lacking any “further technical considerations”. This finding should at least apply if (and in so far as) the activity of programming does not serve to causally produce a technical effect within the framework of a concrete application or environment, which is the case here.
For this reason, the Board holds that the definition and provision of a programming language or such means per se does not contribute to the solution of a technical problem.
The independent claims related to a computer-implemented method and to a computer system, respectively, and involved visualization surfaces visualizing symbols and their connections by lines in order to depict the program structure and its flow. The claimed subject matter was thus considered by the Board to be an invention within the meaning of Article 52 EPC. However, since visualization surfaces for displaying symbols of the program modules are elementary in any programming environment, and since automatic linking of those modules by lines in accordance with established program rules falls within the general approach of relieving the user from having to enter text manually, the claimed subject matter was not seen to involve an inventive step.
The decision supplements the findings of the Enlarged Board of Appeal in G 3/08 regarding the activities of a programmer. These findings apply with equal force to the definition and provision of a programming language and/or a programming environment excluding patentability “(…) if the activity of programming does not serve to causally produce a technical effect within the framework of a concrete application or environment” (translated from German by the author). Hence, similarly to specific programming code in any language, in order to make a technical contribution the programming language or environment must involve “further technical considerations”, either in respect of a concrete technical application or in respect of its specific computer implementation. A mere general provision of innovative programming schemes and their use for reducing the mental burden of a programmer in a conventional computer environment will not suffice to allow for patentability.