Now the Xa. (10th auxiliary) Civil Panel under Chief Judge Peter Maier-Beck has issued the remarkable reasons of the decision Xa ZB 20/08 ("Dynamische Dokumentengenerierung") of April 22, 2010, again in favour of patentability of a software-related invention, this time a client-server system, configured to dynamically generate structured documents, particularly XML or HTML documents, based on German patent application DE 102 32 674 filed by Siemens AG on July 18, 2002.
As summarised on IPJur, it is the context of that patent application that structured documents are dynamically generated on a host computer which communicates with a client and is preferably configured in an "embedded system" architecture. Requirement data from the client is received at the host computer and request parameters are extracted therefrom. The request parameters are mapped by a control module onto a command set of an architecture-specific interface module of the host computer. The structured document is then generated dynamically, using at least one template document which contains service takers. The service takers are executed in a runtime environment of the interface module, with reference to the mapped request parameters, and define contents or structure of the structured document after they have been executed. The dynamically generated structured document is then transferred to the client.
Accordingly, claim 1 relates to
A method for dynamically generating structured documents on at least one microcontroller-based host computer with limited resources which communicates with a client, comprising:The patent application was rejected by the German Pantent Office (DPMA) on June 01, 2004. In the appeal stage, the 17th Panel of the Federal Patent Court (Bundespatentgericht, BPatG) upheld the rejection on January 17, 2008 (17 W (pat) 71/04) by arguing that the claimed subject-matter does not address a technical problem solved by technical means. However, like in several cases before, such as in above-referenced “Steuerungseinrichtung für Untersuchungsmodalitäten” (X ZB 22/07), the Federal Patent Court has given applicants leave to appeal according to § 100 (3) PatG in order to better understand the boundaries of the exclusion of patents for computer programs of § 1 (3) PatG, according to which "programs for computers" shall be excluded from patentability "only to the extent to which protection is sought for the above-mentioned subject matter or activities as such".
- receiving requirement data from the client at the host computer;
- extracting request parameters from the requirement data,
- mapping the request parameters, by a control module, to an instruction set of a software-architecture-specific interface module of the host computer;
- dynamically generating the structured document using at least one template document which contains calls of service takers, instructions of the service takers being extracted by the interface module and mapped to a corresponding instruction set of the interface module limited to a subsection of the service takers, where instructions of the service takers are executed with reference to the mapped request parameters in a runtime environment of the control module and, after being executed, define at least one of contents and structure of the structured document after completion of execution, and
- transferring the dynamically generated structured document to the client.
Siemens AG then filed an appeal to the Federal Court of Justice (Bundesgerichtshof, BGH), which decided on April 22, 2010 that the second-instance decision was legally wrong with respect to the alleged absence of any technical character, since, according to the Federal Court of Justice, the claimed teaching relates to the direct interaction of multiple elements of a computer system, whereas the significantly limited resources of this computer system lead to the object of the invention, namely to generate structured documents on host computers with limited resources. Accordingly the headnote of that decison reads:
(a) A method that involves the direct interaction of the elements of a data processing system (here: a server with a client for dynamically generate structured documents) is always of technical nature, independent on whether the form in which the method has veen filed originally, is characterized by technical instructions.The case was referred back to the Federal Patent Court to only decide novelty and inventive step. That is, the claimed subject-matter has been finally decided to represent statutory subject-matter according to § 1 PatG.
(b) Such a method is not excluded from patent protection as a computer program [as such] if it solves a concrete technical problem by technical means. A solution by technical means is not given only if system components are modified or addressed in an unprecedented way. It rather is sufficient when the run of a data processing program being used for solving the problem is determined by technical factors outside the data processing system, or when the solution lies precisely in the fact that a data processing program is implemented to take the technical circumstances of the data processing system into consideration.
It comes as no surprise that this decision is controversially discussed by interested parties and also much critisised. This criticisim however, is not so much about the legal argumentation as such but more about its de facto outcome, while the contributions of well-known anti-patent campaigners are as fundamental as always: "[...] this is as if cars are patentable only because they have wheels" (Benjamin Stöcker of the Piratenpartei), "Where law turns to unjustice, the legislative bodies are in demand" (Hartmut Pilch of "FFII").
Legally, the Xa. Civil Panel of the Federal Court of Justice relied on its 1991 decision "Seitenpuffer" (X ZB 13/88), where it was argued that a software-implemented invention is technical if it relates to the functioning (i.e. operational capability) of a computer system and enables the direct interworking of its elements. By applying this case law to the present case and under consideration that the present invention's object is to solve the problem of dynamically generating structured documents on a host computer (server) having limited ressources, the Xa. Civil Panel recognised that the claimed solution clearly was of technical nature. By this argumentation, however, the Federal Court of Justice also emphasised that merely using a computer program does not confer patentability, but that a computer program solving a technical problem is required to not fall under the exclusion of § 1 (2) PatG.
Given this result, Mr Axel Horns of IPJur noted that "it might look somewhat surprising in view of the German practice [...] to see claims being granted dealing purely with networked computer systems processing HTML and/or XML documents" and explained that "riding on the solving-a-problem-with-low-resources line of arguing did the trick, apparenty". Much in line with the above-referenced earlier BGH decision „Steuerung für Untersuchungsmodalitäten“ (X ZB 22/07), which clarified that already an embedded computer program involving steps of processing, storing and transmitting data by a technical apparatus represents patentable subject-matter, the present decision emphasises that a computer program involving steps of direct interaction of components of a data processing system always represents patentable subject-matter. This is why the two decisions may be recognised as a turnaround of the BGH’s approach to assess technical character of an invention towards the more liberal appoach of the EPO's Boards of Appeal as recently confimed by the Enlarged Board of Appeal's opinion on referral G 3/08 (see earlier post).
As explained by Mr Stephan Dorn on the ipeg blog, up to now, Germany has been very cautious allowing patent protection for software patents, since computer programs were only patentable, if they had a technical function that induced a technical effect outside the computer on which they are executed, while for the EPO it is sufficient if technical considerations lead to the particular implementation of the invention in a software-hardware system, and that the BGH now tries to overcome this undesireble divegence by its recent decision, in which it is considered sufficient that the solution provided by a computer program "lies precisely in the fact that a data processing program is implemented to take the technical circumstances of the data processing system into consideration" (cf. headnote, item (b), 2nd alternative). Given this situation, Mr Dorn concluded that "the presupposition of technical nature of the computer-implemented invention is actually put away" and that "the decision is really groundbreaking".
Prominent anti-patent campaigner Florian Müller sees things similar on his FOSS blog. He compares the present decision with pending US Supreme Court case In re Bilski (like Peter Zura on his 271 patent blog), both of which he consideres landmark decisions. Even though the latter relates to a pure business method and is not expected to be overly relevant for software-implemented inventions in general, the main difference is that Bilski's claims relate to a method for hedging risks in commodities trading implemented by totally known technologies, while the present decision renders a technical process (i.e. the generation of structured documents) more efficient or even applicable on a resource limited computer system.
Anyway, Mr Müller recognised that the present decision represents a reversal of the traditional German patentability appoach according to which "software patents were previously only considered valid under relatively strict criteria" and comments that it means "all software ideas are now potentially patentable as long as they are innovative from a purely formal point of view". Similar dismissive but far more apoplectic about this decision is Roy Schestowitz of Techrights, who considers the applicant Siemens a "scadalous company [that] decides not only to support Microsoft's 'Linux tax' but also help[s] legalise software patents in Germany".
However, in agreement with Robert Harrison's analysis on his tangible IP blog, I personally think that this decision is legally in line with the BGH's old "Seitenpuffer" doctrine (X ZB 13/88) and is at least de facto in line with the outcome of "Steuerung für Untersuchungsmodalitäten“ (X ZB 22/07), which is why "Dynamische Dokumentengenerierung" (Xa ZB 20/08) is certainly not a "landmark" or "groundbraking" decision. It rather represents a continuance of a much required convergence process in German case law on patentability of computer-implemented inventions, given its confusing twists and turns in recent years.
In fact, the present decison does not necessarily imply that in future we will see far more software patents granted in Germany, but merely that such applications will now be rejected not so much due to lack of technical character but mainly due to lack of inventive step, which is far easier to examine since established and formally intelligent examination schemes exist (e.g. the problem-solution-approach), such that the future German approach more or less represents the established examination scheme of the EPO with a very basic test of technical character and an elaborate examination of novelty and inventive step. This is the reason why I cannot share Thomas Hoeren's concerns about doors now being wide open for software patents, as expressed on the Beck-blog.
Other than assumed by Florian Müller, who tries to make believe that the main obstacle for granting trivial software patents was the technical character requirement and that now software patents will literally flood Germany since they "are innovative from a purely formal point of view", determining whether a technical solution is novel and involves an inventive step requires substantive analysis of the technical elements of the claimed teaching and of the relevant prior art and not only a rather formal application of given rules.
As a bottom line, I don't think that the decision "Steuerung für Untersuchungsmodalitäten“ (X ZB 22/07) will now render it easier to obtain a software patent in Germany, but I do expect that in future it will be much easier to understand why a software-related patent application has been rejected.