European Case Law Identifier: | ECLI:EP:BA:2017:T123212.20170906 | ||||||||
---|---|---|---|---|---|---|---|---|---|
Date of decision: | 06 September 2017 | ||||||||
Case number: | T 1232/12 | ||||||||
Application number: | 03799387.0 | ||||||||
IPC class: | G06F 1/00 | ||||||||
Language of proceedings: | EN | ||||||||
Distribution: | D | ||||||||
Download and more information: |
|
||||||||
Title of application: | METHOD AND APPARATUS FOR A FAIR EXCHANGE | ||||||||
Applicant name: | Trading Technologies International, Inc. | ||||||||
Opponent name: | - | ||||||||
Board: | 3.5.06 | ||||||||
Headnote: | - | ||||||||
Relevant legal provisions: |
|
||||||||
Keywords: | Inventive step - (no) | ||||||||
Catchwords: |
- |
||||||||
Cited decisions: |
|
||||||||
Citing decisions: |
|
Summary of Facts and Submissions
I. The appeal is against the decision by the examining division, dispatched with reasons on 3 January 2012, to refuse European patent application 03799387.0, on the basis that the subject-matter of the independent claims 1, 5 and 9 of both the main and the auxiliary request was not inventive, Article 56 EPC 1973, in view of the following document:
D5 = US 5 953 708 A
II. A notice of appeal was received on 31 January 2012, the appeal fee being paid on the same day. A statement of grounds of appeal was received on 30 April 2012.
III. The appellant requested that the decision under appeal be set aside and a patent granted on the basis of claims for a main or one of two auxiliary requests, all filed with the grounds of appeal. The appellant conditionally requested that the case be remitted for further search and examination and conditionally requested oral proceedings.
IV. The board issued a summons to oral proceedings. In an annex to the summons, the board set out its preliminary opinion on the appeal.
V. On 2 August 2017, the appellant filed claims for additional auxiliary requests 3, 4 and 5.
VI. During the oral proceedings, which took place on 6 September 2017, the appellant filed claims for an additional auxiliary request 6.
VII. The appellant requested that the decision under appeal be set aside and that a European patent be granted on the basis of one of the following requests:
main request, first or second auxiliary request, all filed 30 April 2012,
third, fourth or fifth auxiliary request, all filed 2 August 2017,
sixth auxiliary request, filed 6 September 2017.
VIII. Independent claim 1 of the main request reads as follows:
"A method of prioritizing transaction messages received at a host exchange, comprising the steps of:
receiving by a host exchange (10) a first transaction message at a first receipt time, wherein the first transaction message is received by a first local communication server (38) from a first client device (52) before being received by the host exchange(10);
receiving by the host exchange (10) a second transaction message at a second receipt time, wherein the second transaction message is received at a second local communication server (46) from a second client device (54) before being received by the host exchange (10);
determining by the host exchange (10) a first time based on a first travel time and the first receipt time, wherein the first travel time is a time from the first local communication server (38) to the host exchange (10);
determining by the host exchange (10) a second time based on a second travel time and the second receipt time, wherein the second travel time is a time from the second local communication server (46) to the host exchange (10); and
prioritizing by the host exchange (10) the first transaction message and the second transaction message based on the first time and the second time."
IX. Independent claim 1 of auxiliary request 1 reads as follows:
"A method of prioritizing transaction messages that are sent to a host exchange (10) from a first client device (52) which is one of a first plurality of client devices (52) connected via respective local network links to a first local communication server (38) and from a second client device (54) which is one of a second plurality of client devices connected via respective local network links to a second local communication server (46), the first local communication server (38) being connected to the host exchange (10) via a first server-exchange link (32) and the second local communication server ( 46) being connected to the host exchange (10) via a second server-exchange link (34), each said transaction message being sent via a respective local network link to one of said first and second local communication servers (38, 46) and via a respective server-exchange link from one of said first and second local communication servers (38, 46) to said host exchange (10) in order to reach the host exchange (10), the method comprising the steps of:
determining by the host exchange (10) a first travel time from the first local communication server (38) via the first server-exchange link (32) to the host exchange (10);
determining by the host exchange (10) a second travel time from the second local communication server (46) via the second server-exchange link (34) to the host exchange (10);
receiving a first transaction message sent from the first client device via the first local communication server (38) to the host exchange (10);
upon receiving the first transaction message at the host exchange (10), determining a first time at which the first local communication server (38) sent the first transaction message using the first travel time and a time at which the first transaction message was received at the host exchange (10);
receiving a second transaction message sent from the second client device (54) via the second local communication server (46) to the host exchange (10),
upon receiving the second transaction message at the host exchange (10), determining a second time at which the second local communication server (46) sent the second transaction message using the second travel time and a time at which the second transaction message was received at the host exchange (10); and
using the first and second times to prioritize the first and second transaction messages at the host exchange (10)."
X. Independent claim 1 of auxiliary request 2 reads as follows:
"A method of prioritizing transaction messages that are sent to a host exchange (10) from a first client device (52) which is one of a first plurality of client devices (52) connected via respective local network links to a first local communication server (38) and from a second client device (54) which is one of a second plurality of client devices connected via respective local network links to a second local communication server (46), the first local communication server (38) being connected to the host exchange (10) via a first server-exchange link (32) and the second local communication server (46) being connected to the host exchange (10) via a second server-exchange link (34), each said transaction message being sent via a respective local network link to one of said first and second local communication servers (38, 46) and via a respective server-exchange link from one of said first and second local communication servers (38, 46) to said host exchange (10) in order to reach the host exchange (10) comprising the steps of:
determining (136) a first travel time, wherein the first travel time is a travel time from a first local communication server (38) to the host exchange (10);
storing the first travel time in a look-up table;
determining (136) a second travel time, wherein the second travel time is a travel time from a second local communication server (38) to the host exchange (10);
storing the second travel time in the look-up table;
receiving (138) by a host exchange (10) a first transaction message, wherein the first transaction message is received by the first local communication server (38) from a first client device (52) before being received by the host exchange (10);
time-stamping (140) the received first transaction message to determine a first receipt time;
receiving (138) by the host exchange (10) a second transaction message, wherein the second transaction message is received at the second local communication server (46) from a second client device (54) before being received by the host exchange (10);
time-stamping (140) the received second transaction message to determine a second receipt time;
determining (142) by the host exchange (10) a first time based on subtracting the first travel time accessed from the look-up table from the first receipt time;
determining (142) by the host exchange (10) a second time based on subtracting the second travel time accessed from the look-up table from the second receipt time; and
prioritizing (144) by the host exchange (10) the first transaction message and the second transaction message by ordering in an arrival queue the first and second transaction messages for processing from earliest to latest based on the first time and the second time."
XI. Independent claim 1 of auxiliary request 3 reads as follows:
"A method of prioritizing transaction messages received at an exchange host system (10), the exchange host system (10) comprising one or more computer devices to control electronic trading over a network, the method comprising the steps of:
receiving by an exchange host system (10) a first transaction message at a first receipt time, wherein the first transaction message is received by a first local communication server (38) from a first client device (52) before being received by the exchange host system (10), the first local communication server (38) comprising a network device to route data from a first set of one or more client devices that includes the first client device to the exchange host system (10);
placing by the exchange host system (10) the first transaction message in an arrival queue;
receiving by the exchange host system (10) a second transaction message at a second receipt time, the second receipt time being after the first receipt time, wherein the second transaction message is received at a second local communication server (46) from a second client device (54) before being received by the exchange host system (10), the second local communication server (46) comprising a network device to route data from a second set of one or more client devices that includes the second client device to the exchange host system (10), the second set of client devices being different from the first set of client devices;
placing by the exchange host system (10) the second transaction message in the arrival queue;
determining by the exchange host system (10) a first time based on a first travel time and the first receipt time, wherein the first travel time is a time from the first local communication server (38) to the exchange host system (10), wherein the first time is based on the first travel time subtracted from the first receipt time;
determining by the exchange host system (10) a second time based on a second travel time and the second receipt time, wherein the second travel time is a time from the second local communication server (46) to the exchange host system (10), wherein the second time is based on the second travel time subtracted from the second receipt time; and
ordering by the exchange host system (10) the first transaction message and the second transaction message in the arrival queue based on the first time and the second time,
wherein the transactions messages are ordered from the earliest to the latest, and
wherein, responsive to the second time being earlier than the first time, the second transaction message is ordered before the first transaction message in the arrival queue."
XII. Independent claim 1 of auxiliary request 4 reads as follows:
"A method of prioritizing transaction messages received at an exchange host system (10), the exchange host system (10) comprising one or more computer devices to control electronic trading over a network, the method comprising the steps of:
receiving by an exchange host system (10) a first transaction message at a first receipt time, wherein the first transaction message is received by a first local communication server (38) from a first client device (52) before being received by the exchange host system (10), the first local communication server (38) comprising a network device to route data from a first plurality of client devices that includes the first client device to the exchange host system (10);
placing by the exchange host system (10) the first transaction message in an arrival queue;
receiving by the exchange host system (10) a second transaction message at a second receipt time, wherein the second transaction message is received at a second local communication server (46) from a second client device (54) before being received by the exchange host system (10), the second local communication server (46) comprising a network device to route data from a second plurality of client devices that includes the second client device to the exchange host system (10), the second plurality of client devices being different from the first plurality of client devices;
placing by the exchange host system (10) the second transaction message in the arrival queue;
determining by the exchange host system (10) a first time based on a first travel time and the first receipt time, wherein the first travel time is a time from the first local communication server (38) to the exchange host system (10), wherein the first time is the first travel time subtracted from the first receipt time;
determining by the exchange host system (10) a second time based on a second travel time and the second receipt time, wherein the second travel time is a time from the second local communication server (46) to the exchange host system (10), wherein the second time is the second travel time subtracted from the second receipt time; and
ordering by the exchange host system (10) the first transaction message and the second transaction message in the arrival queue based on the first time and the second time,
wherein the transactions messages are ordered from the earliest to the latest, and
wherein, responsive to the second time being earlier than the first time, the second transaction message is ordered before the first transaction message in the arrival queue,
wherein placing the first and second transaction messages in the arrival queue comprises:
delaying the first and second transaction messages by a time period computed using the longest of the first and second travel times."
XIII. Independent claim 1 of auxiliary request 5 reads as follows:
"A method of ordering transaction messages received at an exchange host system, the exchange host system comprising one or more computer devices to control electronic trading over a network, the method comprising the steps of:
determining (136), at the exchange host system, travel times from a plurality of network devices, each network device being communicatively coupled to at least one respective client device;
receiving (138), at the exchange host system, data from the client devices, said data comprising transaction messages and being received as packets that are sent via respective network devices;
time-stamping (140), at the exchange host system, the data from the client devices;
calculating (142), at the exchange host system, times for data received from each client device by subtracting, from a time-stamp of the data, a determined travel time for a respective network device;
delaying, at the exchange host system, the data from the client devices for a predetermined time period, the predetermined time period being calculated based at least on the longest determined travel time for the plurality of network devices; and
ordering (144), at the exchange host system, the data from the client devices in an arrival queue based on the calculated times,
wherein the arrival queue is ordered from the earliest calculated time to the latest calculated time, and
wherein data from a first client device that is received at the exchange host system before data from a second client device is ordered after the data from the second client device in the arrival queue responsive to a calculated time for the data from the second client device being before a calculated time for the data from the first client device."
XIV. Independent claim 1 of auxiliary request 6 differs from that of auxiliary request 5 in that the first method step ends as follows: "...each network device being communicatively coupled to at least one respective client device via a wide area network connection;" (emphasis of additional wording added by the board).
XV. 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. Interpretation of terminology used in the claims
2.1 host exchange
The term "host exchange" is non-standard. It is broadly interpreted as some kind of central apparatus or combination of apparatuses that is connected to a network. Within the context of the application, the host exchange would typically be a computer or other apparatus or combination of apparatuses which controls a system for electronic trading over a network such as the Internet. The claims are however not so limited.
The appellant has not disputed this interpretation.
2.2 local communication server
The term "local communication server" is non-standard. Within the context of the application it is interpreted as some kind of network device (e.g. a router or a server computer with router functionality) that provides some communication services to "client devices" in some kind of network which is "local" at least compared to the network which connects the local communication server and the host exchange.
The board agrees with the appellant (reply to the summons, page 2, paragraphs 1 to 4) that said network should not necessarily be a "LAN". This however does not affect the inventive step analysis given below.
2.3 server-exchange link
In the light of the description, page 9, lines 8 to 21, this is interpreted as any kind of connection, e.g. a direct connection or a connection through a network, between the local communication server and the host exchange.
The appellant has not disputed this interpretation.
2.4 wide area network
From a technical point of view, the term "wide area network" (or "WAN") imposes no precise restrictions on a network as regards its size or the type of infrastructure which is used. The board interprets the term very broadly as a network used to transmit data between "local" networks such as LANs. On one end of the scale, even a network which connects several LANs within an area so small as a single building would be considered to be a "WAN" by the LANs' routers.
3. Main request
3.1 The board holds that a good starting point for an inventive step analysis is the general prior art acknowledged in the description of the application on page 1, line 8 to page 3, line 13, which documents D1 to D6 also at least implicitly recognise as general prior art. The board accordingly holds that the closest prior art is an electronic trading method using a network (which could consist in a combination of several smaller networks), an electronic exchange, and the traders' client devices.
The appellant has agreed (appellant's reply, page 2, seventh paragraph) that said general prior art is a suitable starting point for the assessment of inventive step.
3.2 To be more specific, the board considers that the closest prior art is given by an electronic trading system comprising a host exchange which communicates with the client devices over the Internet (description, page 2, lines 8 and 9).
3.3 The board further considers it well known that in an Internet-based system each of the client devices would as a rule be part of a local network, e.g. a company network, comprising a plurality of client devices and a local communication server in the form of a router, this router being the device through which the client devices connect to the host exchange via the Internet.
3.4 This general prior art contains no provisions for prioritising messages received at a host exchange, which is the key difference with the subject-matter of claim 1.
3.5 Such prioritisation serves the purpose of avoiding to provide an advantage to traders with a faster connection. To this end, a "fair" trading environment should deal with transaction messages following the order in which they have actually been sent by the client computer.
The appellant submitted in his reply to the summons (page 2, penultimate paragraph) that specifying how a fair trading environment may be achieved using technical means is a technical problem. During the oral proceedings, he stated more precisely that the problem is how to deal with unpredictable latencies when the trading system uses heterogeneous different communication channels. The obvious solution would then be to use direct links instead of an Internet connection.
The board however holds that said technical problem follows directly from the requirement stated in the description, page 3, line 14 to page 5 line 11, i.e. to provide a fair trading environment in an Internet-based system, where traders who can send their transaction messages faster to the host have no advantage over traders with a slower connection. The decision to provide a fair trading environment in an Internet-based system is a business decision, which is considered non-technical. Instead, it is considered to be a given, i.e. it is part of the requirement specification for the skilled person who has the task of implementing the electronic trading method.
3.6 The skilled person will see that D5 discloses a way to deal with disadvantages between traders due to differences in connection speeds, viz. by taking into account the measured transmission time between the host exchange (center computer) and the client computers (terminal devices) (see D5, abstract). He or she will therefore consider applying this idea to the prior art method.
3.7 Internet transmission times are most commonly measured using the "ping" networking utility, which measures the round-trip time for messages sent from a source to a destination device that are echoed back to the source. For all practical purposes, the use of the "ping" utility in the setting mentioned under 3.2 above would only provide the transmission time from the host exchange to the local communication server (i.e. the router).
3.8 As a rule, the times of sending (which correspond to the "first time" and the "second time" in claim 1) would be calculated by subtracting the travel time from the receipt time, i.e. they would be "based on" the travel time and the receipt time. Dealing first with a transaction message that was sent earlier means that this transaction message is prioritised.
The appellant submitted during the oral proceedings that such way of proceeding is not necessary. One alternative would for instance consist in the use of synchronised clocks. The board admits that this would indeed also be a possibility, but it would be less obvious in view of the notorious difficulty to maintain a collection of synchronised clocks.
3.9 Hence, the skilled person would arrive at the subject-matter of claim 1 of the main request without demonstrating any inventive activity. The board therefore considers that the subject-matter of claim 1 of the main request is not inventive; Article 56 EPC 1973.
4. Auxiliary request 1
4.1 The board considers that the features which distinguish claim 1 of auxiliary request 1 from that of the main request do not render the claimed subject-matter inventive, for the following reasons:
4.1.1 The fact that the first/second client device would be one of a plurality of client devices connected via respective local network links to a first/second local communication server was already stated under 3.3 above.
4.1.2 The fact that the first/second local communication server would be connected to the host exchange via a first/second server-exchange link follows from the argument given under 3.3 above in combination with the interpretation of the term "server-exchange link" given under 2.3 above.
4.1.3 Regarding the step of "determining by the host exchange (10) a first[/second] travel time from the first[/second] local communication server (38[/46]) via the first[/second] server-exchange link (32[/34]) to the host exchange", the board observes that it corresponds to the use of the "ping" utility mentioned under 3.7 above.
4.2 The board therefore holds that the subject-matter of claim 1 of auxiliary request 1 is also not inventive; Article 56 EPC 1973.
5. Auxiliary request 2
5.1 The board considers that the features which distinguish claim 1 of auxiliary request 2 from that of the main request do not render the claimed subject-matter inventive, for the following reasons:
5.1.1 The use of look-up tables to store data for later retrieval is considered a standard measure.
5.1.2 Regarding the feature of "time-stamping" the received transaction messages, the board observes that the reception time necessarily somehow needs to be stored, even if only temporarily, in order for it to be used in the calculation of the "first[/second] time" referred to later in the claim.
5.1.3 Processing the first and second transaction messages from earliest to latest is obvious, following the reasoning given under 3.8 above.
5.2 The board therefore holds that the subject-matter of claim 1 of auxiliary request 2 is also not inventive; Article 56 EPC 1973.
6. Auxiliary request 3
6.1 The board considers that the additional features of claim 1 of auxiliary request 3 do not render the claimed subject-matter inventive, for the following reasons:
6.1.1 The feature according to which the first/second time is based on the first/second travel time subtracted from the first/second receipt time was already mentioned under 3.8 above.
6.1.2 In order to satisfy the fairness requirement, a message which is received can in general not be processed immediately by the host exchange. Instead, it will be necessary to wait until all messages that were potentially sent earlier have arrived. After that, the messages should be processed in the order of their calculated sending time. An obvious way to achieve this would be by holding them in some kind of arrival queue, ordered from the earliest to the latest, before they can be processed.
6.2 The board therefore considers that the subject-matter of claim 1 of auxiliary request 3 is also not inventive; Article 56 EPC 1973.
7. Auxiliary request 4
The reasoning given for the higher ranking requests also applies to auxiliary request 4. The board therefore considers that the subject-matter of claim 1 of auxiliary request 4 is also not inventive; Article 56 EPC 1973.
8. Auxiliary request 5
The reasoning given for the higher ranking requests also applies to auxiliary request 5. The board therefore considers that the subject-matter of claim 1 of auxiliary request 5 is also not inventive; Article 56 EPC 1973.
9. Auxiliary request 6
Given the interpretation given under 2.4 above to the expression "wide area network", the board considers that the reasoning which was given above in relation to a local area network also applies to a "wide area network", provided its scale is sufficiently small. Also in such a case, the "ping" utility would essentially measure the travel time between the host exchange and a network device which is coupled to one or more client devices via a WAN, said client devices being e.g. individual computers or LAN routers and being connected to the Internet through said network device. The board therefore considers that the subject-matter of claim 1 of auxiliary request 6 is also not inventive; Article 56 EPC 1973.
Order
For these reasons it is decided that:
The appeal is dismissed.