|European Case Law Identifier:||ECLI:EP:BA:2020:T257317.20200904|
|Date of decision:||04 September 2020|
|Case number:||T 2573/17|
|Language of proceedings:||EN|
|Download and more information:||
|Title of application:||Linking objects in databases|
|Applicant name:||Aveva Solutions Limited|
|Relevant legal provisions:||
|Keywords:||Inventive step - (yes
Inventive step - over document D1)
Remittal to the department of first instance
Remittal - (yes)
Summary of Facts and Submissions
I. The applicant (appellant) appealed against the decision of the Examining Division refusing European patent application No. 14157283.4 (published as EP 2 913 766).
II. The documents cited in the contested decision were:
D1: US 2005/0246205 A1, published on 3 November 2005;
D2: US 6 003 040, published on 14 December 1999;
D3: US 6 016 498, published on 18 January 2000;
D4: US 2008/0307010 A1, published on 11 December 2008.
III. The Examining Division refused the application for lack of inventive step in the subject-matter of the claims of the main request and of each of the first to third auxiliary requests over the prior art disclosed in document D1.
Moreover, the Examining Division decided that the second auxiliary request violated the requirements of Article 123(2) EPC.
IV. In its statement of grounds of appeal, the appellant requested that the decision be set aside and that a patent be granted on the basis of the main request or one of the three auxiliary requests considered in the contested decision. Moreover, it requested oral proceedings if its main request was not allowed.
V. In a communication under Rule 100(2) EPC, the Board informed the appellant of its intention to set aside the contested decision and remit the case to the Examining Division for further prosecution.
VI. In reply, the appellant, on the understanding that the Board intended to set aside the contested decision and remit the case to the Examining Division, withdrew its request for oral proceedings before the Board.
VII. Claim 1 of the main request reads as follows (itemisation by the Board):
"[A] A computer-implemented method comprising:
[B] linking first and second objects (9(1), 9(2)) stored
in first and second respective databases (4(1), 4(2)) wherein the first object (9(1)) is created by a first user (6(1)) having read-and-write access to the first database and read-only access to the second database and the second object is created by a second, different user (6(2)) having read-only access to the first database and read-and-write access to the second database, the first object comprising a plurality of attributes (10) including a reference (14) identifying the first object (9(1)),
[C] wherein the linking comprises a database engine (7), under the control of the second user (6(2)):
[C1] receiving a selection linking the first and second objects (9(1), 9(2)); and
[C2] creating an entry (21(1)) for the first object (9(1)) in a look up table (17) in the second database (4(2)) using the reference, the entry including, as a first reference (22(1)) identifying the first object (9(1)), the reference, and a second reference (23(1)) identifying the second object (9(2));
[D] so as to indicate that the second object is linked to the first object when the first object is queried, even though the second user cannot update the first object;
[E] wherein the method further comprises:·database querying,
[E1] wherein the querying comprises a database engine (7), under the control of a user (6(1), 6(2)):
[E2] querying the first object (9(1)) stored in the first database;
[E3] obtaining the reference (14) for the first object;
[E4] searching for the entry (21(1)) in the look up table (17) using the reference (14);
[E5] in response to finding the entry in the look up table, retrieving the second reference (23(1)) identifying the second object (9(2));
[E6] retrieving the second object (9(2)) from the second database; and
[E7] displaying the first and second objects (9(1), 9(2)) on a display (20);
[E8] so as to indicate that the second object is linked to the first object."
Claims 2 to 8 are dependent on claim 1.
Claim 9 reads as follows:
"A computer program which when executed by a data processing apparatus causes the data processing apparatus to perform a method according to any preceding claim."
Claim 10 reads as follows:
"A computer readable medium storing a computer program according to claim 9."
Claim 11 reads as follows:
"A computer system for linking first and second objects (9(1), 9(2)) stored in first and second respective databases (4(1), 4(2)) and for database querying, wherein the first object (9(1)) is created by a first user (6(1)) having read-and-write access to the first database and read-only access to the second database and the second object is created by a second, different user (6(2)) having read-only access to the first database and read-and-write access to the second database, the system comprising:
a database engine (7) configured,
when under the control of the second user (6(2)):
in response to receiving a selection linking the first and second objects (9(1), 9(2)), to create an entry (21(1)) in a look up table (17) stored in the second database, the entry including, as a first reference (22(1)) identifying the first object (9(1)) and a second reference (23(1)) identifying the second object (9(2)) so as to indicate that the second object is linked to the first object when the first object is queried, even though the second user cannot update the first object; and
when under the control of a user (6(1), 6(2)):
in response to querying the first object (9(1)) stored in the first database, to obtain the reference (14) for the first object, to search for the entry (21(1)) in the look up table (17) using the reference (14) and, in response to finding the entry in the look up table, to retrieve, the second reference (23(1)) identifying the second object (9(2)), to retrieve the second object (9(2)); and to display the first and second objects (9(1),9(2)) on a display (20) so as to indicate that the second object is linked to the first object"
Claim 12 reads as follows:
"A database system (1) comprising:storage (2) storing the first and second databases (4(1),4(2)); anda computer system (5) according to claim 11."
In view of the outcome of the appeal, the auxiliary requests are not relevant to the present decision.
VIII. The appellant's arguments, where relevant to the decision, are discussed in detail below.
Reasons for the Decision
Admissibility of the appeal
1. The appeal complies with the provisions referred to in Rule 101 EPC and is therefore admissible.
2. The application relates to linking objects in databases. Databases are used to store a design which can be created, modified and viewed by one or more users using a variety of software applications such as engineering software (description, page 1, lines 4 to 13). Designs develop incrementally and involve multiple users sharing data. Data may be stored in multiple databases and users may have different access rights to different databases. This may lead to problems for shared and linked data such as engineering parts (description, page 1, lines 15 to 22; page 3, lines 11 to 17; page 5, lines 1 to 6; page 6, lines 7 to 18; Figure 4).
2.1 The application proposes configuring each database engine to allow a user to link a second object stored in a second database, to which the user has read/write access, to a first protected object stored in a first database, to which the user has no write access, by providing what appears to be a pointer (also referred to as a "back pointer", "pseudo pointer" or "virtual pointer") from the protected element to his or her element without actually adding or modifying attributes in the protected element (description, page 6, lines 20 to 24).
This pseudo pointer is implemented by means of a look-up table in the second database, which identifies the first object and the second object. In particular, the entry includes the references for the first and second objects (description, page 7, lines 32 to 36).
Inventive step - Article 56 EPC
3. The contested decision
The Examining Division considered document D1 as a suitable starting point for assessing inventive step. It was of the opinion that D1 explicitly or implicitly disclosed all features of claim 1 according to the main request, except that the look-up table was created in the second database, whereas in D1 it was created in the first database identified by the Examining Division.
3.1 Based on this distinguishing feature, the Examining Division formulated the objective technical problem as how to obtain information which is available in two databases concerning an object while reducing latency. D1 taught to use a "global pointer set" stored centrally in the so-called "core" for storing pointers between objects in different databases. However, D1 hinted in paragraphs  and  at the possibility of storing the global pointer set in one of the organisations. Hence, it was obvious to place the second look-up table in the second database.
3.2 The Examining Division also argued that in claim 1 there were two sets of features without a synergistic effect: a first set of features (B to D) relating to the problem of how to link objects in two databases, and a second set of features (E to E8) relating to the problem of querying objects in databases. The claimed solutions to these problems were well-known in the art. The use of a look-up table was known from document D1 and its placement and its use for querying were obvious.
4. The appellant's arguments
In its statement of grounds of appeal, the appellant argued that document D1 was not a suitable starting point. Rather, the database for storing a design, which was acknowledged as known in the application (description, page 1, lines 11 to 19), was the closest prior art. D1 was concerned with the aggregation and presentation of personal health data that existed previously in different health care organisations in a segmented fashion. Thus, not only was the type of data different from that used in the invention, but so also was the way the data was used and organised.
4.1 When starting from the acknowledged prior art, the distinguishing features were C2 and E2 to E6. These distinguishing features had the effect of allowing a user who did not have permission to modify the first object nevertheless to link the second object to the first object in such a way that, when the first object was queried, the link between the first and second object was revealed.
Thus, the objective technical problem was how to allow a user who did not have permission to modify a first object to nevertheless link another object to the first object in such a way as to allow the link to be revealed when the first object was queried. The claimed solution was not obvious without using hindsight.
4.2 As to document D1 as a possible starting point, the appellant argued that the Examining Division read too much into D1, and listed differences between the claimed subject-matter and document D1.
4.3 For example, D1 did not disclose that two different users had different access rights to databases, as claimed in the application in suit. Rather, according to the contested decision, a global pointer set could be stored in one of the health organisations disclosed in D1 to reduce latency. This would be a scenario where an organisation would allow external write access to its internal data. Hence, the contested decision was inconsistent with respect to the access rights allegedly disclosed in D1.
4.4 As to the Examining Division's argument that D1 hinted at storing a global pointer set in a database of an organisation, the appellant disagreed, arguing that D1 in fact disclosed, in paragraph , that the data would be copied from the local data pointer set to the "core" and not the other way around.
4.5 The appellant also disagreed with the Examining Division's argument that two subsets of the claim features lacked a synergistic effect. Rather, both these subsets contributed to solving the problem of how to allow identification of a link from a first object in a non-writable database to a second object. The linking steps and the querying steps of the claimed method both contributed to the solution.
Moreover, the Examining Division's objection of a lack of inventive step was based on hindsight: the invention was not just about using a look-up table, and there were other obvious options such as allowing write access to the first database or using a further database with write access.
The inventive method did not use a global pointer set, which was a further distinction. An advantage of the claimed method was that maintaining the back pointers for the second object was easier, as they were stored in the second database together with the second object.
5. The Board's assessment of inventive step
5.1 As to the prior art acknowledged in the application (page 1, lines 11 to 19), the Board considers that it relates neither to linking objects in different databases nor to querying linked objects in different databases. Hence, it is less relevant than document D1. The fact that the prior art acknowledged in the application refers to design parts rather than health information is not relevant, as the claim is silent on the type of data represented by the objects.
5.2 Document D1 discloses a method for linking patient medical data from multiple organisations. When a new patient is entered in the system, a global identification number is generated and distributed to each local organisation's master person index. The same patient is cross-identified in different organisations using his/her demographic data. The demographic data is used to match the existing patient list within each organisation (D1, description, paragraph ).
5.2.1 Figure 3 of D1 and paragraph  of the description disclose, as a sample scenario, how organisation A registers a patient in the medical data sharing network. First, organisation A sends demographic data and medical data pointers for the patient to a so-called "core", a central system for data sharing.
Then the "core" broadcasts the demographic data to organisations B and C. Organisations B and C use the demographic data received to seek a match in existing patient lists. If a match is found and the patient exists in the local system, the medical data pointers and the local patient IDs specific to organisations B and C are forwarded to the "core". Furthermore, if the patient is found in the local data pointer set or the global data pointer set, the existing global ID will be used to further cross-map the patient and his/her data.
If the patient cannot be found in the local or global data pointer set, a new global ID will be created in the global data pointer set and registered in the local data pointer sets in organisations A, B and C. Once global and local data pointer sets are constructed, the patient can be identified across the organisation boundaries, and his/her medical data from different organisations is ready to be aggregated.
5.2.2 In the above-cited passages of D1, when new patients are registered, their data in different systems is linked by matching their demographic data. Consequently, D1 does not disclose a user-controlled selection to link two objects as specified in features C and C1 of claim 1 (see point VII. above for the itemisation of the claim features; see the description of the application, page 7, lines 22 and 23, and Figures 8 to 12, for details on the process of linking).
When a first and a second matching object are found in a first and a second database respectively, a global identifier is created and registered in the first and second databases. Consequently, access to the various databases in different organisations is not read-only for users of different organisations (even though that does not mean that the objects stored by one organisation can be modified by a user of a different organisation). Hence, document D1 does not disclose feature B of claim 1.
However, D1 does disclose features C2 and D of claim 1, as the information contained in the global pointer set is stored in a look-up table in a replicated manner in the various local databases in the embodiment described in Figure 6 and paragraph  of D1. In this embodiment, no global pointer set is stored in the "core".
5.2.3 Regarding the querying according to features E to E8, document D1 discloses how a request for an integrated medical record of an already registered patient is processed, in paragraph  of the description and Figure 4.
A request for medical information for the patient is made through a portal server. The patient's demographic data is subsequently entered into an integration server, which forwards the demographic information to organisations A, B and C. Within each organisation, the received demographic data is matched against its existing patient list. When a match is found, the organisation's local data pointer set is used to retrieve medical data stored in each organisation.
Each organisation then forwards the encrypted and de-identified patient medical data to the "core" system, where the medical data is aggregated and presented through the portal server.
5.2.4 In view of the query process disclosed in document D1, it is apparent that querying of the various networked databases functions in a different way from the method claimed in the application in suit. Whereas steps E2 to E6 of the claimed method query a first database and then use the retrieved reference to query a second database, the method disclosed in document D1 queries all available organisations/databases using the patient's demographic data and does not use the references stored in the look-up table, as claimed in the application in suit.
5.3 In view of the differences identified above with respect to linking and querying, the Board is not convinced that the subject-matter of the method according to claim 1 is obvious when starting from document D1, which is the only prior art discussed in the contested decision. It is not clear what would motivate the skilled person to modify the teaching of document D1 to arrive at the claimed method.
The Board tends to agree with the Examining Division that the use of look-up tables was well-known at the relevant date, but this alone is not enough to conclude that the claimed method lacks inventive step. The claimed method uses a look-up table in a particular way to establish a pseudo pointer and to retrieve the linked objects when querying. This particular way of using a look-up table is not known from or suggested by document D1, however. D1 relies on the possibility of matching demographic data in order to identify relevant data, and this concept is not present in the claimed method. The claimed method links and queries data under very different constraints, which leads to a different solution.
In view of the above, it is also evident that the two groups of features identified by the Examining Division (features B to D and E to E8) are not two groups of features relating to completely independent problems. Rather, features B to D define the structures in the database which features E to E8 rely on for querying.
Consequently, the method of claim 1 is not obvious when starting from document D1 (Article 56 EPC).
5.4 The further independent claims correspond to claim 1 in terms of a computer program, a computer-readable medium, a computer system and a database system. Consequently, their subject-matter is not obvious when starting from document D1 either (Article 56 EPC).
5.5 In view of the above, the contested decision is to be set aside.
6. Remittal of the case and the appellant's request for oral proceedings
6.1 The appellant requested that a patent be granted on the basis of its main request, and that oral proceedings be held should its main request not be allowed.
6.2 In the present case, there are relevant prior art documents on file which have not yet been discussed in the proceedings before the department of first instance, let alone in the decision under appeal. Moreover, the claims were amended considerably during the proceedings at first instance, and the Board has doubts as to whether the search is complete with respect to the subject-matter that is now claimed. For example, it is rather surprising that there is no prior art on file about linking objects in engineering contexts.
6.3 Further prosecution by the Board would be inappropriate in view of Article 12(2) RPBA 2020, which states that the primary object of the appeal proceedings is to review the decision under appeal in a judicial manner. Moreover, the circumstances of the case constitute special reasons for a remittal (Article 11 RPBA 2020; see also T 2496/17 of 6 May 2020, Reasons 6.4). The case is therefore to be remitted to the Examining Division for further prosecution.
6.4 Since the appellant has not requested oral proceedings in the event of a remittal (see point VI. above), it was not necessary to hold oral proceedings before the Board.
For these reasons it is decided that:
1. The decision under appeal is set aside.
2. The case is remitted to the department of first instance for further prosecution.