|European Case Law Identifier:||ECLI:EP:BA:2003:T007799.20030724|
|Date of decision:||24 July 2003|
|Case number:||T 0077/99|
|IPC class:||G07F 7/10|
|Language of proceedings:||EN|
|Download and more information:||
|Title of application:||IC card and method for rewriting its program|
|Applicant name:||HITACHI MAXELL, LTD.|
|Opponent name:||Giesecke & Devrient GmbH|
|Relevant legal provisions:||
|Keywords:||Inventive step - (no)|
Summary of Facts and Submissions
I. The appellant (opponent) lodged an appeal, received on 13. January 1999, against the decision of the opposition division, dispatched on 26 November 1998, rejecting the opposition against European patent No. 0 354 793. The fee for appeal was paid on 13 January 1999. The statement setting out the grounds of appeal was received on 25 March 1999.
II. Opposition had been filed against the patent as a whole and was based on Article 100(a) EPC, on the sole ground that the subject-matter of the patent was not patentable within the terms of Articles 52(1) and 56 EPC.
III. In the decision under appeal, the opposition division held that the ground for opposition did not prejudice the maintenance of the patent as granted, having regard inter alia to the following document:
D3: EP-A-0 218 176
IV. In response to a communication of the Board summoning the parties to oral proceedings, the respondent (patent proprietor), by letter dated 11 June 2003, withdrew its request for oral proceedings, announced that it would not attend the oral proceedings and requested a decision on the basis of the written submissions already made.
V. Oral proceedings were held on 24 July 2003 in the absence of the respondent.
VI. The appellant requested that the decision under appeal be set aside and the patent be revoked.
The respondent requested in writing, by letter dated 5. August 1999, that the appeal be dismissed.
VII. Claim 1 as granted reads as follows [itemisation (a) to (g) added]:
"1. A method for storing, rewriting and executing a program in an IC card having an input/output port (2) for inputting a program to be down-loaded and outputting its processing result, a main storage area (5) for storing data and programs, and a processor (3) for sending the program input from the input/output port to said main storage area of the IC card, and a terminal for communicating commands to said IC card through said processor, the steps of the method comprising:
(a) storing the program comprised of a plurality of program parts in a plurality of corresponding sub- areas of a first portion (7) of said main storage area of the IC card,
(b) storing a plurality of management information to identify each of the program parts stored in said sub-areas, each of said plurality of management information including a sub-area number for one of said program parts and a base address in a second portion (6) of said main storage area (5) of the IC card,
(c) sending a sub-area number corresponding to a program part to be rewritten from the terminal to the IC card,
(d) selecting a sub-area to be rewritten by referring to the management information based on said sub- area number,
(e) sending the program part to be rewritten,
(f) rewriting the contents of the selected sub-area with the sent program part, and
(g) executing sequentially said plurality of program parts in an order based on said management information."
Claims 2 to 5 are dependent on claim 1. Independent claim 6 relates to a system for storing, rewriting and executing a program in an IC card.
VIII. The appellant argued essentially as follows:
In the decision under appeal the opposition division correctly held that the method known from D3 disclosed steps (a) and (b) of claim 1 of the contested patent, and strongly suggested steps (c) to (f). However, the opposition division erred in its conclusion about step (g) because it construed its wording too narrowly. The expression "based on said management information" did not necessarily imply that the order of execution of the program parts was determined by the management information. It could merely mean that the management information was used during the sequential execution of the program parts without actually contributing to the order of execution. The latter interpretation was corroborated by the embodiment described in column 6, lines 15 to 17 of the patent specification. Since the method according to D3 used management information during the execution of the function programs for determining their start addresses, it anticipated step (g). Hence, in the light of the teaching of D3, the subject-matter of claim 1 was not inventive.
IX. The respondent's arguments can be summarised as follows:
Steps (a), (b) and (g) of claim 1 should be read together. According to step (a) the program stored in the IC card was divided into a plurality of program parts. However, this did not impair the ability of the IC card to execute the program as a whole because, as specified in steps (b) and (g), the IC card could sequentially execute the plurality of program parts constituting that program in an order determined by management information stored in the IC card itself. The claimed method provided a real and significant advance in that it allowed the program parts to be individually rewritten without having to rewrite the entire program, while retaining the ability for the card to execute the whole program as one sequence.
No prior art document provided this teaching. Document D3 disclosed a method for storing several function programs in the memory of an IC card. A management table stored in the IC card related each function program to its function code and its start address. However, in contrast to the claimed method, the information table did not contain any information as to the order of execution of those function programs. This order was determined solely by an external terminal supplying the IC cards with the function codes of the function programs to be executed. Another difference resided in the fact that the function programs independently performed various functions and that there was no mention of them being the result of the division of a program into a plurality of program parts to be executed sequentially. Each function program should thus be regarded as a "program" within the meaning of granted claim 1, not as a "program part".
Even if the function programs of document D3 were to be regarded as "program parts" within the meaning of granted claim 1, there would still be no disclosure and no teaching of a sequential execution of these program parts based on management information stored in the IC card.
Reasons for the Decision
1. The appeal is admissible.
2. Interpretation of claim 1
2.1. Step (g) of the claimed method reads: "executing sequentially said plurality of program parts in an order based on said management information." The appellant disputed that the expression "based on said management information" had to be construed as meaning that the order of sequential execution was determined by the management information. This expression could simply mean that the management information was used during the sequential execution of the program parts, but only for determining their locations and not for establishing the order of execution.
2.2. The wording of step (g), taken in isolation, appears to imply that the order of execution of the program parts is defined by the management information and that the expression "based on" should be construed as meaning "determined by".
When considering step (g) in the context of the whole claim, however, it is doubtful whether the order of execution is actually provided by the management information. In fact, according to step (b), the management information serves the purpose of identifying each program part and includes a sub-area number and a base address for each program part. Thus, on the basis of the definition given in step (b), the management information referred to in step (g) could be involved in the order of execution of program parts only as far as the determination of their locations in the memory is concerned.
2.3. A broad interpretation of the meaning of step (g) is indeed corroborated by the description of the contested patent. In fact, according to some embodiments (see column 6, lines 10 to 22), the order of execution of the program parts is determined by the management information stored in the attribute information memory section. However, there is also at least one embodiment (see column 6, lines 15 to 17) according to which the order of execution is determined by a jump address at the end of the program part in the data memory section (8) corresponding to the "first portion (7) of said main storage area of the IC card" in step (a) of claim 1, and not by the management information stored "in a second portion (6) of said main storage area (5) of the IC card" as defined in step (b) of claim 1. It therefore appears from the patent specification, as further stated in column 6, lines 20 to 22 of the description, that "the sequence of executing the program parts may be stored in the attribute information memory section 6" (bold added), but could in fact be stored elsewhere.
2.4. Hence, from the wording of claim 1, and in the light of the description and drawings, the Board comes to the conclusion that the expression "based on said management information" in claim 1 does not necessarily imply that the management information determines the order of execution. The only remaining possible meaning of this expression is therefore that the management information is used during the sequential execution of the program parts, eg for determining the locations of the program parts but not necessarily their order of execution.
3. Inventive step
3.1. It is undisputed that document D3 represents the closest state of the art for the subject-matter of claim 1.
3.2. Document D3 discloses a method for storing, rewriting and executing functions programs in an IC card. An external terminal instructs the IC card to add or execute a function program by sending a corresponding command containing the function code of the function program to be added or executed. Upon execution of the function program, the IC card returns a response message to the terminal. In addition to the function programs, the IC card also stores a table (see Figures 13, 14a and 14B) containing management information relating each function program to its function code and its start address.
3.3. As to whether the function programs of D3 can be equated with the "program parts" of claim 1, the Board notes that this document provides several examples of functions performed by different function programs: reading/writing/erasing data, setting/collating PIN, encrypting/decrypting communication data (see Figure 10), arithmetic operations and data input/output (see column 3, lines 44 to 51). From these examples, it is clear that the function programs are essentially sub-routines to be used inside a larger program. Moreover, it can be derived from step 63 in Figure 15 that parallel execution of several function programs is not possible, so that they must be executed sequentially. On the other hand, the contested patent also specifies that the application program, instead of being divided in equal parts, could be "divided by sub-routines as function units" (see column 7, lines 31 to 36). Hence, the Board considers that the function programs of D3 are meant to be used as program parts of a larger program, and that there is no substantial difference between such "function programs" and the "program parts" recited in claim 1.
3.4. As to step (g) of claim 1, the management information shown in Figure 14A of document D3 is used during the sequential execution of the function programs for determining the location of each function program. Thus, under the interpretation explained supra, step (g) is also disclosed by document D3.
3.5. The method according to claim 1 of the patent in suit thus differs from that of D3 only by the presence of steps (c) to (f) which define how a program part can be rewritten without affecting the other parts.
Starting from the method known from D3, the problem solved by the contested patent could be defined as reducing the overhead associated with rewriting a long program stored in the memory of the IC card.
3.6. The updating of function programs in document D3 is only briefly mentioned in column 8, lines 36 to 42. However, since each function program is individually addressable, it is obvious that there is no need to rewrite all function programs only because some require updating. To the person skilled in the art, the simplest, most direct way of rewriting a function program according to D3 would consist in sending the function code of the function program to be updated to the IC card, selecting the function program corresponding to the function code based on the management information, sending the new function program to the IC card and rewriting the new function program over its old version. Such steps correspond effectively to steps (c) to (f) of the claimed method.
3.7. Hence, the Board finds that it would be obvious to a person skilled in the art, starting from the teaching of D3, to arrive at a method falling within the terms of claim 1.
4. Since the subject-matter of claim 1 does not involve an inventive step within the meaning of Article 56 EPC, the contested patent has to be revoked.
For these reasons it is decided that:
1. The decision under appeal is set aside.
2. The patent is revoked.