- This examination appeal relates to a software patent application directed to a method for 'updating values' in a database, in particular, a database with a "complex structured type column". The question is which features are technical for inventive step. Preliminary, the Board overrules the Examining Division's rejection based on Art. 52(2)(a) EPC.
- For patentability: "Claim 1 therefore defines a method performed in a relational database system. In principle, the terms used in a claim should be given the common meaning they have in the relevant technical field. In computer science, the term "relational database system" relates to a software system implemented in one or more computers for storing, controlling and processing data. Carrying out a method performed in a relational database system involves the use of a computer system." In line with G3/08, the computer-implemented method is not excluded.
- On to inventive step and the identification of the technical features. "in practice it may be difficult to distinguish between features making a technical contribution and those not contributing, especially in cases in which the non-technical aspects are tightly intermingled with the technical features"
- "From none of the above cited decisions can it be concluded that execution time, processing speed, latency, amount of memory required or other such program performance measurements are per se non-technical measurements which cannot play a role in establishing a technical effect and determining whether a technical contribution is present. The above cited decisions merely teach that an improvement with regard to one of those performance measurements alone ("the sole", "not sufficient", "in itself"), is insufficient to establish technical character. In order to decide whether such an improvement is a technical effect it has to be further determined how the improvement is achieved, for instance whether it is the result of technical considerations"
- " In other words, features make a technical contribution if they result from technical considerations on how to for instance improve processing speed, reduce the amount of memory required, improve availability or scalability, or reduce network traffic, when compared with the prior art or once added to the other features of the invention, and contribute in combination with technical features to achieve such an effect" (question for the readers with more experience in this field: does the word 'and' indicates two cumulative or alternative requirements here?)
- " On the other hand, such effects and the respective features are non-technical if the effects are achieved by non-technical modifications to the underlying non-technical method or scheme (for example, a change of the business model, or a "pure algorithmic scheme", i.e. an algorithmic scheme not based on technical considerations)."
- " A possible test for determining whether non-technical features are based on technical considerations is to consider whether the non-technical features would have been formulated by a technical or by a non-technical expert (T 817/16, reasons 3.12 [see recent post, link to be added]). Since computer programming involves technical and non-technical aspects (G 3/08, reasons 13.5.1; T 1463/11 of 29 November 2016, reasons 21), it is difficult to apply that test to distinguish abstract algorithmic aspects from "technical programming" aspects. In that case, the test would have to be whether the features were determined by a "programmer as such" or by a "technical programmer". It may therefore be preferable to directly determine whether the decision to adopt the non-technical features is a technical one (T 1463/11, reasons 21) or whether it required "technical considerations beyond 'merely' finding a computer algorithm to carry out some procedure" (G 3/08, reasons 13.5)."
EPO T 0697/17 - link
VII. Claim 1 of the main request reads as follows:
"A method of updating values in a complex structured type column having a hierarchical structure in a relational database system, wherein the complex structured type consists of a set of fields, properties and methods and wherein each field or property is one of a scalar type, a complex structured type itself or a multiset in which each element is a complex structured type, the method comprising the steps of:
parsing by a parser a database modification statement and producing a description of changes to the database proposed by the database modification statement;
producing by a query optimizer an execution algorithm that will implement the database modification;
computing by a query execution engine that uses the execution algorithm a data structure of the database modification statement to determine which values within a complex structured type column are to be updated, wherein the data structure represents values in the complex structured type column as an aggregation of changes to the values at any level of the hierarchical structure of the complex structured type column; and
applying by the query execution engine the changes to the values in the complex structured type column that are to be updated."
Reasons for the Decision
1. The appeal complies with the provisions referred to in Rule 101 EPC and is therefore admissible.
Invention
2. The invention concerns a relational database system and a corresponding method for updating values in a complex-structured-type column. According to the description, the purpose of the invention is to achieve complex and partial updates efficiently (see paragraph [0001] of the international publication).