14-15 November 2018
|European Case Law Identifier:||ECLI:EP:BA:2017:T112613.20170628|
|Date of decision:||28 June 2017|
|Case number:||T 1126/13|
|IPC class:||G06F 9/54|
|Language of proceedings:||EN|
|Download and more information:||
|Title of application:||Message processing using queues|
|Applicant name:||SAP SE|
|Relevant legal provisions:||
|Keywords:||Inventive step - (no)|
Summary of Facts and Submissions
I. The appeal is against the decision by the examining division, dispatched with reasons on 19 December 2012, to refuse European patent application 07022874.7 for lack of claims on file (Article 78(1)(c) EPC).
II. A notice of appeal was received on 13 February 2013, the appeal fee being paid the next day. A statement of the grounds of appeal was received on 26 February 2013.
III. The appellant requested that the decision under appeal be set aside and a patent granted on the basis of the claims of a main or one of three auxiliary requests, all filed with the grounds of appeal. The appellant made a conditional request for oral proceedings.
IV. The board issued a summons to oral proceedings. In an annex to the summons, the board set out its preliminary opinion that the appeal should be dismissed.
V. On 26 May 2017, the appellant filed claims 1 to 11 for each of a new main and three auxiliary requests.
VI. The appellant requests that the decision under appeal be set aside and that a European patent be granted on the basis of the main request or one of the auxiliary requests 1-3, all filed on 26 May 2017.
VII. The further text on file is:
1 to 29 as originally filed;
1 to 15 as originally filed.
VIII. Independent claim 1 of the main request reads as follows:
"A computer-implemented method comprising:
buffering a message in a queue (204; 304) of incoming messages,
associating the message with properties by buffering the properties with the message in the queue (204; 304);
generating a process instance to process content of the message if based on the properties the message is determined as being a type of message for which a process instance is to be generated;
associating the message with the process instance as a first message in a group of one or more messages to be processed if criteria is met;
determining whether the criteria is met;
processing the first message in response to a determination that the criteria is met; and
dequeueing the message based on the properties,
wherein the properties characterize:
whether a process instance is to process the content of the message;
a number of process instances handling the message, the handling including incrementing the number of process instances handling the first message, determining whether the first message meets criteria of a message filter associated with a first process instance, and incrementing an index value of the first process instance; and
a number of process instances that have processed the content of the message."
IX. Independent claim 1 of auxiliary request 1 differs from that of the main request in that the following wording is added at the end:
"; and wherein the messages are processed in a decentralized fashion by the process instances which access the queue (204; 304), wherein the messages are chained such that a sequence of related messages are processed by one process instance until said one process instance terminates processing messages in the sequence".
X. Independent claim 1 of auxiliary request 2 differs from that of auxiliary request 1 in that the following wording is added before the wording cited under IX.IX. above:
"; wherein the message is dequeued if the properties indicate that no process instances are handling the message and the properties indicate that no process instance is to process content of the message;
wherein, if the content of the message is to be processed by a threshold number of process instances, the message is dequeued only if the properties indicate that the threshold number of process instances have processed the content of the message".
XI. Independent claim 1 of auxiliary request 3 differs from that of auxiliary request 2 in that the following wording is added after "and incrementing an index value of the first process instance":
", the index value being for an index into the queue (204; 304), wherein the first process instance performs operations of the handling if the first message matches the index value of the first process instance".
XII. At the end of the oral proceedings, the chairman announced the board's decision.
Reasons for the Decision
1. The admissibility of the appeal
The appeal is admissible.
2. Main request - inventive step; Article 56 EPC 1973
2.1 According to the board, the somewhat imprecise expression "computer-implemented method" in claim 1 of the main request should be read as "method implemented as a program running on a computer". The board leaves open whether this should be considered to constitute a program as such running on a computer, i.e. whether claim 1 (and, for analogous reasons, claim 5, which sets out a computer program product,) should be excluded from patentability under Article 52(2)(c) EPC 1973, because it would not affect the board's decision regarding the appeal. Instead, it is assumed in what follows that the presence of the word "computer" confers technical character on the claim.
2.2 The board is however of the opinion that, as far as the computer on which the program is running is concerned, the features of claim 1 have no tangible effect compared to the prior art program illustrated in figure 1 of the application.
2.3 As argued by the appellant, the claimed method differs from said prior art essentially in that a central queue is used, which is itself responsible for generating process instances, all of which have access to the messages in the queue, and the messages are not dequeued until it is established that no more process instances need to process the message.
2.4 According to the board, such a scheme should be seen as part of the art of computer programming, as a measure to be used by the programmer to ensure that messages do not remain unprocessed (referred to as "zombie messages" in the description on page 6, line 2).
2.5 This measure however produces no technical effect as far as the computer is concerned. The computer will not notice whether messages are effectively processed. It will continue to run equally well in either case and will, for instance, not consume more or less power. If anything, it could be argued that making certain that all messages are processed will impose a somewhat higher loading on the computer.
2.6 It is also not possible to make a meaningful assessment about some technical effect that might occur outside the computer, given that the claim provides no detail about the nature of the messages or the context in which the processing takes place. As far as the claimed method is concerned, the messages are simply abstract objects to be processed; they are not necessarily connected to physical objects existing outside the computer.
2.7 According to the appellant (middle of page 18 of the reply to the summons), the technical effect of the distinguishing features of claim 1 is, firstly, to achieve reliable execution of processing of messages and, secondly, to improve overall performance of the system.
As regards the first point, the board observes that the distinguishing features do not increase the reliability of the computer. As stated under 2.52.5 above, the computer will, from a technical point of view, remain equally reliable, independently of whether messages remain unprocessed. It is only the program running on the computer which becomes more "reliable", in the sense that it will deal with situations not foreseen in the prior art system illustrated in figure 1 of the application. The board however considers it to be purely a task for the programmer, and hence a non-technical task, to make certain, using sound programming techniques, that all possible situations are dealt with by the program, thereby avoiding an incorrect or unpredictable outcome.
As regards the second point, the appellant has not specified in which way the overall performance of the system would be improved by the distinguishing features of claim 1. On the contrary, it would seem to the board that the prior art system illustrated in figure 1, because of its simplicity, would perform better than the method of claim 1 (albeit at the risk of some messages remaining unprocessed).
2.8 Given that there is no technical effect which could be taken into account for establishing the presence of an inventive step, the board considers that the subject-matter of claim 1 of the main request does not involve an inventive step; Article 56 EPC 1973.
3. Auxiliary requests
The features added to claim 1 of the auxiliary requests merely define the claimed method more precisely without affecting the above reasoning. The board therefore considers that the subject-matter of claim 1 of the auxiliary requests also does not involve an inventive step; Article 56 EPC 1973.
4. The possible need for an additional search
Given that the above reasoning makes no assumptions about what is known in the prior art, beyond what is acknowledged by the appellant himself in figure 1 of the application, and the undeniable fact that computers are notorious, the board judges that an additional search is not required. It is of the opinion that this finding does not contradict the reasoning given in any of the decisions cited by the appellant on pages 16 and 17 of the reply to the summons.
For these reasons it is decided that:
The appeal is dismissed.