Entscheidungsdatum: 14.11.2013
In der Patentnichtigkeitssache
…
betreffend das europäische Patent 1 040 406
(DE 698 14 155)
hat der 2. Senat (Nichtigkeitssenat) des Bundespatentgerichts auf Grund der mündlichen Verhandlung vom 14. November 2013 unter Mitwirkung der Vorsitzenden Richterin Sredl sowie der Richter Merzbach, Dipl.-Ing. Baumgardt, Dipl.-Phys. Dr. Forkel und Dipl.-Ing. Hoffmann
für Recht erkannt:
I. Das europäische Patent 1 040 406 wird mit Wirkung für das Hoheitsgebiet der Bundesrepublik Deutschland für nichtig erklärt.
II. Die Kosten des Rechtsstreits trägt die Beklagte.
III. Das Urteil ist gegen Sicherheitsleistung in Höhe von 120 % des zu vollstreckenden Betrages vorläufig vollstreckbar.
Gegen das europäische Patent EP 1 040 406 B1 (DE 698 14 155), das am 2. Mai 2003 in englischer Sprache veröffentlicht wurde und die Bundesrepublik Deutschland als Bestimmungsland benennt, ist am 2. Februar 2012 Nichtigkeitsklage erhoben worden.
Das Streitpatent geht zurück auf eine PCT-Anmeldung (in englischer Sprache) mit der Veröffentlichungsnummer WO 99 / 31 571 A1 und nimmt die Priorität einer Voranmeldung in den USA vom 16. Dezember 1997 in Anspruch.
Das Streitpatent umfasst 40 Patentansprüche. Der erteilte Anspruch 1 ist auf ein „System zum Empfangen von Benutzerdaten, die in ein Computersystem eingegeben werden“ gerichtet, der (einzige) nebengeordnete Anspruch 23 auf ein „Verfahren zum Eingeben von Benutzerdaten in ein Computersystem“. Die Ansprüche 2 bis 22 und 24 bis 40 sind Unteransprüche.
In der Verfahrenssprache Englisch haben die erteilten unabhängigen Patentansprüche 1 und 23 folgenden Wortlaut:
1. A system for receiving user data input into a computer system (20) having a plurality of application programs (29), comprising:
a plurality of input methods (64), each input method being distinct from the application programs (29) and other input methods (64) and configured to accept the user data input from an input device associated with the computer system (20), each input method (64) further including a defined interface set (61, 63) including at least one interface therein to make the input method (64) pluggable into other executable code that is capable of interfacing with the defined interface set;
a management component (58) that is capable of interfacing with the defined interface set, the management component (58) being distinct from the application programs (29) and configured to:
a) identify one of the input methods (64) as a selected input method,
b) activate the selected input method (64),
c) communicate with the selected input method via the method's defined interface set (61, 63),
d) identify information about user data received by the selected input method, and
e) pass the information about the received user data to an active application program of the plurality of application programs (29).
23. A method of inputting user data into a computer system (20) to be used by at least one active application of a plurality of applications (29) available to the computer system (20), comprising:
selecting one input method (64) from a plurality of input methods (64) installed on the computer system (20), each input method being a method that is interchangeable with respect to each active application and configured to accept the user data input from an input device associated with the computer system (20), and having a defined interface set (61, 63) comprising at least one interface that makes the input method pluggable into other executable software code;
invoking the selected input method (64) within an input panel window (68) displayed by the computer system (20) including plugging the selected input method into other executable code for communication therewith via the defined interface set (61, 63); and
accepting user data entered in the input panel window (68) in accordance with the selected input method (64), wherein information corresponding to the entered user data is supplied to each active application irrespective of the input method selected.
In deutscher Übersetzung lauten diese Patentansprüche gemäß der Streitpatentschrift EP 1 040 406 B1:
1. System zum Empfangen von Benutzerdaten, die in ein Computersystem (20) eingegeben werden, das über mehrere Anwendungsprogramme (29) verfügt, enthaltend:
mehrere Eingabeverfahren (64), wobei sich jedes Eingabeverfahren von den Anwendungsprogrammen (29) und anderen Eingabeverfahren (64) unterscheidet und derart beschaffen ist, daß es die Benutzerdaten akzeptiert, die von einer Eingabevorrichtung eingegeben werden, die dem Computersystem (20) zugeordnet ist, wobei jedes Eingabeverfahren (64) weiterhin eine definierte Schnittstellengruppe (61, 63) enthält, die darin wenigstens eine Schnittstelle enthält, damit das Eingabeverfahren (64) in einen anderen ausführbaren Kode eingefügt werden kann, der mit der definierten Schnittstellengruppe verbunden werden kann;
eine Verwaltungskomponente (58), die mit der definierten Schnittstellengruppe verbunden werden kann, wobei sich die Verwaltungskomponente (58) von den Anwendungsprogrammen (29) unterscheidet und eingerichtet ist für das:
a) Identifizieren eines der Eingabeverfahren (64) als das gewählte Eingabeverfahren,
b) Aktivieren des gewählten Eingabeverfahrens (64),
c) Kommunizieren mit dem gewählten Eingabeverfahren über die definierte Schnittstellengruppe (61, 63) des Verfahrens,
d) Identifizieren von Informationen über Benutzerdaten, die durch das gewählte Eingabeverfahren empfangen werden, und
e) Weiterleiten der Informationen über die empfangenen Benutzerdaten zu einem aktiven Anwendungsprogramm der mehreren Anwendungsprogramme (29).
23. Verfahren zum Eingeben von Benutzerdaten in ein Computersystem (20) für die Verwendung durch wenigstens ein aktives Anwendungsprogramm von mehreren Anwendungsprogrammen (29), die dem Computersystem (20) zur Verfügung stehen, enthaltend:
Auswählen eines Eingabeverfahrens (64) aus mehreren Eingabeverfahren (64), die im Computersystem (20) installiert sind, wobei jedes Eingabeverfahren ein Verfahren ist, das in Bezug auf jedes aktive Anwendungsprogramm austauschbar ist und konfiguriert ist, um die Benutzerdaten zu akzeptieren, die von einer Eingabevorrichtung eingegeben werden, die dem Computersystem (20) zugeordnet ist, und das eine definierte Schnittstellengruppe (61, 63) hat, die wenigstens eine Schnittstelle enthält, die es ermöglicht, daß das Eingabeverfahren in einen anderen ausführbaren Softwarecode eingefügt werden kann;
Aufrufen des gewählten Eingabeverfahrens (64) innerhalb eines Eingabefeldfensters (68), das durch das Computersystem (20) angezeigt wird, einschließlich des Einfügens des gewählten Eingabeverfahrens in einen anderen ausführbaren Code für die Kommunikation mit demselben über die definierte Schnittstellengruppe (61, 63); und
Akzeptieren der Benutzerdaten, die in das Eingabefeldfenster (68) gemäß dem gewählten Eingabeverfahren (64) eingegeben werden, wobei die Informationen, die den eingegebenen Benutzerdaten entsprechen, jedem aktiven Anwendungsprogramm unabhängig vom gewählten Eingabeverfahren zugeführt werden.
Hinsichtlich des Wortlauts der auf den erteilten Patentanspruch 1 direkt oder indirekt rückbezogenen Unteransprüche 2 bis 22 sowie der auf den erteilten Patentanspruch 23 direkt oder indirekt rückbezogenen Unteransprüche 24 bis 40 wird auf die Streitpatentschrift Bezug genommen.
Die Klägerin macht unter Berufung auf die von ihr vorgelegten Druckschriften und Unterlagen
D1 US 5 603 053 A
D2 GB 2 298 112 A
D3 US 5 157 384 A
D4 WO 92 / 9 944 A2
D5 Brockschmidt, Kraig: Inside OLE, 2. Auflage (1995), Seite 1 - 143, Seite 1101 - 1145
D6 PenPoint OS Entwicklerdokumentation, div. Daten 1991 / 1992, Auszüge
D7 US 5 594 642 A
D8 Newton OS nebst Entwicklerdokumentation (1996), Auszüge
D9 Magic Cap OS nebst Entwicklerdokumentation (1995), Auszüge
D10 Programmer’s Guide to Pen Services for Microsoft Windows 95, Microsoft Press (1995), Auszüge
geltend, dass der Gegenstand des Streitpatents gegenüber dem Stand der Technik nicht patentfähig sei. Er sei nicht neu, beruhe aber jedenfalls nicht auf einer erfinderischen Tätigkeit, Art. 52 Abs. 1 EPÜ i. V. m. Art. II, § 6 Abs. 1 Nr. 1 IntPatÜG und Art. 54 Abs. 1, 2 EPÜ und Art. 56 i. V. m. Art. 54 Abs. 2 EPÜ. Er sei zudem auch nach Art. 52 (2) Buchst. c / (3) EPÜ vom Patentschutz ausgeschlossen, da die beanspruchte Lehre keine Anweisungen enthalte, die der Lösung eines konkreten technischen Problems mit technischen Mitteln diene. Ferner gehe der Gegenstand des Streitpatents über den Inhalt der Anmeldung wie ursprünglich eingereicht hinaus, Art. II, § 6 IntPatÜG, Art. 138 Abs. 1 lit. c) EPÜ.
Die Klägerin beantragt,
das europäische Patent EP 1 040 406 mit Wirkung für das Hoheitsgebiet der Bundesrepublik Deutschland für nichtig zu erklären.
Die Beklagte beantragt,
die Klagen abzuweisen.
Hilfsweise beantragt sie, dem Streitpatent eine der Fassungen der Hilfsanträge 1 bis 7, vorgelegt mit Schriftsatz vom 30.08.2013 (Bl.541/670 d. A.) zu geben.
Hilfsantrag 1
Die unabhängigen Patentansprüche 1 und 23 (nunmehr Patentanspruch 22) in der Fassung des Hilfsantrags 1 lauten (mit markierten Änderungen gegenüber den Patentansprüchen 1 und 23 in der erteilten Fassung):
1. System zum Empfangen von Benutzerdaten, die in ein Computersystem (20) eingegeben werden, das über mehrere Anwendungsprogramme (29) verfügt, enthaltend:
mehrere Eingabeverfahren (64), wobei sich jedes Eingabeverfahren von den Anwendungsprogrammen (29) und anderen Eingabeverfahren (64) unterscheidet und derart beschaffen ist, daß es die Benutzerdaten akzeptiert, die von einer Eingabevorrichtung eingegeben werden, die dem Computersystem (20) zugeordnet ist, wobei jedes Eingabeverfahren (64) weiterhin eine definierte Schnittstellengruppe (61, 63) enthält, die darin wenigstens eine Schnittstelle enthält, damit das Eingabeverfahren (64) in einen anderen ausführbaren Kode eingefügt werden kann, der mit der definierten Schnittstellengruppe verbunden werden kann, wobei das Eingabeverfahren (64) dazu geeignet ist, Funktionen in der Verwaltungskomponente (58) über die definierte Schnittstellengruppe aufzurufen, und wobei die Verwaltungskomponente (58) dazu eingerichtet ist, Funktionen im Eingabeverfahren (64) über die definierte Schnittstellengruppe (61, 63) aufzurufen;
eine Verwaltungskomponente (58), die mit der definierten Schnittstellengruppe verbunden werden kann, wobei sich die Verwaltungskomponente (58) von den Anwendungsprogrammen (29) unterscheidet und eingerichtet ist für das:
a) Identifizieren eines der Eingabeverfahren (64) als das gewählte Eingabeverfahren,
b) Aktivieren des gewählten Eingabeverfahrens (64),
c) Kommunizieren mit dem gewählten Eingabeverfahren über die definierte Schnittstellengruppe (61, 63) des Verfahrens,
d) Identifizieren von Informationen über Benutzerdaten, die durch das gewählte Eingabeverfahren empfangen werden, und
e) Weiterleiten der Informationen über die empfangenen Benutzerdaten zu einem aktiven Anwendungsprogramm der mehreren Anwendungsprogramme (29).
22. Verfahren zum Eingeben von Benutzerdaten in ein Computersystem (20) für die Verwendung durch wenigstens ein aktives Anwendungsprogramm von mehreren Anwendungsprogrammen (29), die dem Computersystem (20) zur Verfügung stehen, enthaltend:
Auswählen eines Eingabeverfahrens (64) aus mehreren Eingabeverfahren (64), die im Computersystem (20) installiert sind, wobei jedes Eingabeverfahren ein Verfahren ist, das in Bezug auf jedes aktive Anwendungsprogramm austauschbar ist und konfiguriert ist, um die Benutzerdaten zu akzeptieren, die von einer Eingabevorrichtung eingegeben werden, die dem Computersystem (20) zugeordnet ist, und das eine definierte Schnittstellengruppe (61, 63) hat, die wenigstens eine Schnittstelle enthält, die es ermöglicht, daß das Eingabeverfahren in einen anderen ausführbaren Softwarecode eingefügt werden kann, wobei das Eingabeverfahren (64) dazu geeignet ist, Funktionen in einer Verwaltungskomponente (58) über die definierte Schnittstellengruppe aufzurufen, und wobei von der Verwaltungskomponente (58) Funktionen im Eingabeverfahren (64) über die definierte Schnittstellengruppe (61, 63) aufgerufen werden können;
Aufrufen des gewählten Eingabeverfahrens (64) innerhalb eines Eingabefeldfensters (68), das durch das Computersystem (20) angezeigt wird, einschließlich des Einfügens des gewählten Eingabeverfahrens in einen anderen ausführbaren Code für die Kommunikation mit demselben über die definierte Schnittstellengruppe (61, 63); und Akzeptieren der Benutzerdaten, die in das Eingabefeldfenster (68) gemäß dem gewählten Eingabeverfahren (64) eingegeben werden, wobei die Informationen, die den eingegebenen Benutzerdaten entsprechen, jedem aktiven Anwendungsprogramm unabhängig vom gewählten Eingabeverfahren zugeführt werden.
Die weiteren Patentansprüche gemäß Hilfsantrag 1 entsprechen den erteilten Unteransprüchen 2 bis 7 sowie den neu nummerierten und mit entsprechend geänderten Rückbezügen versehenen erteilten Unteransprüchen 9 bis 22 (nunmehr 8 bis 21) und 24 bis 40 (nunmehr 23 bis 39).
Hilfsantrag 2
Die unabhängigen Patentansprüche 1 und 23 in der Fassung des Hilfsantrags 2 lauten (mit markierten Änderungen gegenüber den Patentansprüchen 1 und 23 in der erteilten Fassung):
1. System zum Empfangen von Benutzerdaten, die in ein Computersystem (20) eingegeben werden, das über mehrere Anwendungsprogramme (29) verfügt, enthaltend:
mehrere Eingabeverfahren (64), wobei sich jedes Eingabeverfahren von den Anwendungsprogrammen (29) und anderen Eingabeverfahren (64) unterscheidet und derart beschaffen ist, daß es die Benutzerdaten akzeptiert, die von einer Eingabevorrichtung eingegeben werden, die dem Computersystem (20) zugeordnet ist, wobei jedes Eingabeverfahren (64) weiterhin eine definierte Schnittstellengruppe (61, 63) enthält, die darin wenigstens eine Schnittstelle enthält, damit das Eingabeverfahren (64) in einen anderen ausführbaren Kode eingefügt werden kann, der mit der definierten Schnittstellengruppe verbunden werden kann;
eine Verwaltungskomponente (58), die mit der definierten Schnittstellengruppe verbunden werden kann, wobei sich die Verwaltungskomponente (58) von den Anwendungsprogrammen (29) unterscheidet und eingerichtet ist für das:
a) Identifizieren eines der Eingabeverfahren (64) als das gewählte Eingabeverfahren,
b) Aktivieren des gewählten Eingabeverfahrens (64),
c) Kommunizieren mit dem gewählten Eingabeverfahren über die definierte Schnittstellengruppe (61, 63) des Verfahrens, wobei das Kommunizieren die Übergabe eines Rückrufschnittstellenzeigers beinhaltet,
d) Identifizieren von Informationen über Benutzerdaten, die durch das gewählte Eingabeverfahren über die Rückrufschnittstelle empfangen werden, und
e) Weiterleiten der Informationen über die empfangenen Benutzerdaten zu einem aktiven Anwendungsprogramm der mehreren Anwendungsprogramme (29).
23. Verfahren zum Eingeben von Benutzerdaten in ein Computersystem (20) für die Verwendung durch wenigstens ein aktives Anwendungsprogramm von mehreren Anwendungsprogrammen (29), die dem Computersystem (20) zur Verfügung stehen, enthaltend:
Auswählen eines Eingabeverfahrens (64) aus mehreren Eingabeverfahren (64), die im Computersystem (20) installiert sind, wobei jedes Eingabeverfahren ein Verfahren ist, das in Bezug auf jedes aktive Anwendungsprogramm austauschbar ist und konfiguriert ist, um die Benutzerdaten zu akzeptieren, die von einer Eingabevorrichtung eingegeben werden, die dem Computersystem (20) zugeordnet ist, und das eine definierte Schnittstellengruppe (61, 63) hat, die wenigstens eine Schnittstelle enthält, die es ermöglicht, daß das Eingabeverfahren in einen anderen ausführbaren Softwarecode eingefügt werden kann;
Aufrufen des gewählten Eingabeverfahrens (64) innerhalb eines Eingabefeldfensters (68), das durch das Computersystem (20) angezeigt wird, einschließlich des Einfügens des gewählten Eingabeverfahrens in einen anderen ausführbaren Code für die Kommunikation mit demselben über die definierte Schnittstellengruppe (61, 63); und
Übergeben eines Rückrufschnittstellenzeigers an das gewählte Eingabeverfahren (64) über die definierte Schnittstellengruppe;
Akzeptieren der Benutzerdaten, die in das Eingabefeldfenster (68) gemäß dem gewählten Eingabeverfahren (64) eingegeben werden, wobei die Informationen, die den eingegebenen Benutzerdaten entsprechen, jedem aktiven Anwendungsprogramm unabhängig vom gewählten Eingabeverfahren zugeführt werden; und Senden der Informationen, die den eingegebenen Benutzerdaten entsprechen, an jedes aktive Anwendungsprogramm unter Verwendung des Rückrufschnittstellenzeigers.
Hinsichtlich des Wortlauts des auf Patentanspruch 1 rückbezogenen Anspruchs 8 gemäß Hilfsantrag 2 wird auf die als Anlage zum Schriftsatz vom 30. August 2013 eingereichte Fassung der Patentansprüche gemäß Hilfsantrag 2 (Bl. 559 ff. d. A.; Anspruch 8 Bl. 561 d. A.) verwiesen. Die weiteren Patentansprüche gemäß Hilfsantrag 2 entsprechen den Unteransprüchen 2 bis 7, 9 bis 22 sowie 24 bis 40 der erteilten Fassung.
Hilfsantrag 3
Die unabhängigen Patentansprüche 1 und 22 gemäß Hilfsantrag 3 enthalten eine Kombination der geänderten Merkmale der Hilfsanträge 1 und 2 .
Die unabhängigen Patentansprüche 1 und 22 in der Fassung des Hilfsantrags 3 haben danach folgenden Wortlaut (mit markierten Änderungen gegenüber den Patentansprüchen 1 und 23 in der erteilten Fassung):
1. System zum Empfangen von Benutzerdaten, die in ein Computersystem (20) eingegeben werden, das über mehrere Anwendungsprogramme (29) verfügt, enthaltend:
mehrere Eingabeverfahren (64), wobei sich jedes Eingabeverfahren von den Anwendungsprogrammen (29) und anderen Eingabeverfahren (64) unterscheidet und derart beschaffen ist, daß es die Benutzerdaten akzeptiert, die von einer Eingabevorrichtung eingegeben werden, die dem Computersystem (20) zugeordnet ist, wobei jedes Eingabeverfahren (64) weiterhin eine definierte Schnittstellengruppe (61, 63) enthält, die darin wenigstens eine Schnittstelle enthält, damit das Eingabeverfahren (64) in einen anderen ausführbaren Kode eingefügt werden kann, der mit der definierten Schnittstellengruppe verbunden werden kann, wobei das Eingabeverfahren (64) dazu geeignet ist, Funktionen in der Verwaltungskomponente (58) über die definierte Schnittstellengruppe aufzurufen, und wobei die Verwaltungskomponente (58) dazu eingerichtet ist, Funktionen im Eingabeverfahren (64) über die definierte Schnittstellengruppe (61, 63) aufzurufen;
eine Verwaltungskomponente (58), die mit der definierten Schnittstellengruppe verbunden werden kann, wobei sich die Verwaltungskomponente (58) von den Anwendungsprogrammen (29) unterscheidet und eingerichtet ist für das:
a) Identifizieren eines der Eingabeverfahren (64) als das gewählte Eingabeverfahren,
b) Aktivieren des gewählten Eingabeverfahrens (64),
c) Kommunizieren mit dem gewählten Eingabeverfahren über die definierte Schnittstellengruppe (61, 63) des Verfahrens, wobei das Kommunizieren die Übergabe eines Rückrufschnittstellenzeigers beinhaltet,
d) Identifizieren von Informationen über Benutzerdaten, die durch das gewählte Eingabeverfahren über die Rückrufschnittstelle empfangen werden, und
e) Weiterleiten der Informationen über die empfangenen Benutzerdaten zu einem aktiven Anwendungsprogramm der mehreren Anwendungsprogramme (29).
22. Verfahren zum Eingeben von Benutzerdaten in ein Computersystem (20) für die Verwendung durch wenigstens ein aktives Anwendungsprogramm von mehreren Anwendungsprogrammen (29), die dem Computersystem (20) zur Verfügung stehen, enthaltend:
Auswählen eines Eingabeverfahrens (64) aus mehreren Eingabeverfahren (64), die im Computersystem (20) installiert sind, wobei jedes Eingabeverfahren ein Verfahren ist, das in Bezug auf jedes aktive Anwendungsprogramm austauschbar ist und konfiguriert ist, um die Benutzerdaten zu akzeptieren, die von einer Eingabevorrichtung eingegeben werden, die dem Computersystem (20) zugeordnet ist, und das eine definierte Schnittstellengruppe (61, 63) hat, die wenigstens eine Schnittstelle enthält, die es ermöglicht, daß das Eingabeverfahren in einen anderen ausführbaren Softwarecode eingefügt werden kann, wobei das Eingabeverfahren (64) dazu geeignet ist, Funktionen in einer Verwaltungskomponente (58) über die definierte Schnittstellengruppe aufzurufen, und wobei von der Verwaltungskomponente (58) Funktionen im Eingabeverfahren (64) über die definierte Schnittstellengruppe (61, 63) aufgerufen werden können;
Aufrufen des gewählten Eingabeverfahrens (64) innerhalb eines Eingabefeldfensters (68), das durch das Computersystem (20) angezeigt wird, einschließlich des Einfügens des gewählten Eingabeverfahrens in einen anderen ausführbaren Code für die Kommunikation mit demselben über die definierte Schnittstellengruppe (61, 63); und
Übergeben eines Rückrufschnittstellenzeigers an das gewählte Eingabeverfahren (64) über die definierte Schnittstellengruppe;
Akzeptieren der Benutzerdaten, die in das Eingabefeldfenster (68) gemäß dem gewählten Eingabeverfahren (64) eingegeben werden, wobei die Informationen, die den eingegebenen Benutzerdaten entsprechen, jedem aktiven Anwendungsprogramm unabhängig vom gewählten Eingabeverfahren zugeführt werden; und Senden der Informationen , die den eingegebenen Benutzerdaten entsprechen, an jedes aktive Anwendungsprogramm unter Verwendung des Rückrufschnittstellenzeigers.
Die weiteren Patentansprüche gemäß Hilfsantrag 3 entsprechen den erteilten Unteransprüchen 2 bis 7 sowie den neu nummerierten und mit entsprechend geänderten Rückbezügen versehenen erteilten Unteransprüchen 9 bis 22 (nunmehr 8 bis 21) und 24 bis 40 (nunmehr 23 bis 39).
Hilfsantrag 4
Die unabhängigen Patentansprüche 1 und 23 in der Fassung des Hilfsantrags 4 lauten (mit markierten Änderungen gegenüber den Patentansprüchen 1 und 23 in der erteilten Fassung):
1. System zum Empfangen von Benutzerdaten, die in ein Computersystem (20) eingegeben werden, das über mehrere Anwendungsprogramme (29) verfügt, enthaltend:
mehrere Eingabeverfahren (64), wobei sich jedes Eingabeverfahren von den Anwendungsprogrammen (29) und anderen Eingabeverfahren (64) unterscheidet und derart beschaffen ist, daß es die Benutzerdaten akzeptiert, die von einer Eingabevorrichtung eingegeben werden, die dem Computersystem (20) zugeordnet ist, wobei jedes Eingabeverfahren (64) weiterhin eine definierte Schnittstellengruppe (61, 63) enthält, die darin wenigstens eine Schnittstelle enthält, damit das Eingabeverfahren (64) in einen anderen ausführbaren Kode eingefügt werden kann, der mit der definierten Schnittstellengruppe verbunden werden kann, wodurch das Eingabeverfahren (64) geladen und aufgerufen wird;
eine Verwaltungskomponente (58), die mit der definierten Schnittstellengruppe verbunden werden kann, wobei sich die Verwaltungskomponente (58) von den Anwendungsprogrammen (29) unterscheidet und eingerichtet ist für das:
a) Identifizieren eines der Eingabeverfahren (64) als das gewählte Eingabeverfahren,
b) Aktivieren des gewählten Eingabeverfahrens (64),
c) Kommunizieren mit dem gewählten Eingabeverfahren über die definierte Schnittstellengruppe (61, 63) des Verfahrens,
d) Identifizieren von Informationen über Benutzerdaten, die durch das gewählte Eingabeverfahren empfangen werden,
und
e) Weiterleiten der Informationen über die empfangenen Benutzerdaten zu einem aktiven Anwendungsprogramm der mehreren Anwendungsprogramme (29).
23. Verfahren zum Eingeben von Benutzerdaten in ein Computersystem (20) für die Verwendung durch wenigstens ein aktives Anwendungsprogramm von mehreren Anwendungsprogrammen (29), die dem Computersystem (20) zur Verfügung stehen, enthaltend:
Auswählen eines Eingabeverfahrens (64) aus mehreren Eingabeverfahren (64), die im Computersystem (20) installiert sind, wobei jedes Eingabeverfahren ein Verfahren ist, das in Bezug auf jedes aktive Anwendungsprogramm austauschbar ist und konfiguriert ist, um die Benutzerdaten zu akzeptieren, die von einer Eingabevorrichtung eingegeben werden, die dem Computersystem (20) zugeordnet ist, und das eine definierte Schnittstellengruppe (61, 63) hat, die wenigstens eine Schnittstelle enthält, die es ermöglicht, daß das Eingabeverfahren in einen anderen ausführbaren Softwarecode eingefügt werden kann, wodurch das Eingabeverfahren (64) geladen und aufgerufen wird;
Aufrufen des gewählten Eingabeverfahrens (64) innerhalb eines Eingabefeldfensters (68), das durch das Computersystem (20) angezeigt wird, einschließlich des Einfügens des gewählten Eingabeverfahrens in einen anderen ausführbaren Code für die Kommunikation mit demselben über die definierte Schnittstellengruppe (61, 63); und
Akzeptieren der Benutzerdaten, die in das Eingabefeldfenster (68) gemäß dem gewählten Eingabeverfahren (64) eingegeben werden, wobei die Informationen, die den eingegebenen Benutzerdaten entsprechen, jedem aktiven Anwendungsprogramm unabhängig vom gewählten Eingabeverfahren zugeführt werden.
Hinsichtlich des Wortlauts des auf Patentanspruch 1 rückbezogenen Anspruchs 8 gemäß Hilfsantrag 4 wird auf die als Anlage zum Schriftsatz vom 30. August 2013 eingereichte Fassung der Patentansprüche gemäß Hilfsantrag 4 (Bl. 597 ff. d. A.; Anspruch 8 Bl. 599 d. A.) verwiesen. Die weiteren Patentansprüche gemäß Hilfsantrag 4 entsprechen den Unteransprüchen 2 bis 7, 9 bis 22 sowie 24 bis 40 der erteilten Fassung.
Hilfsantrag 5
Die unabhängigen Patentansprüche 1 und 22 gemäß Hilfsantrag 5 enthalten eine Kombination der geänderten Merkmale der Hilfsanträge 1 und 4 .
Die unabhängigen Patentansprüche 1 und 22 in der Fassung des Hilfsantrags 5 haben danach folgenden Wortlaut (mit markierten Änderungen gegenüber den Patentansprüchen 1 und 23 in der erteilten Fassung):
1. System zum Empfangen von Benutzerdaten, die in ein Computersystem (20) eingegeben werden, das über mehrere Anwendungsprogramme (29) verfügt, enthaltend:
mehrere Eingabeverfahren (64), wobei sich jedes Eingabeverfahren von den Anwendungsprogrammen (29) und anderen Eingabeverfahren (64) unterscheidet und derart beschaffen ist, daß es die Benutzerdaten akzeptiert, die von einer Eingabevorrichtung eingegeben werden, die dem Computersystem (20) zugeordnet ist, wobei jedes Eingabeverfahren (64) weiterhin eine definierte Schnittstellengruppe (61, 63) enthält, die darin wenigstens eine Schnittstelle enthält, damit das Eingabeverfahren (64) in einen anderen ausführbaren Kode eingefügt werden kann, der mit der definierten Schnittstellengruppe verbunden werden kann, wodurch das Eingabeverfahren (64) geladen und aufgerufen wird , wobei das Eingabeverfahren (64) dazu geeignet ist, Funktionen in der Verwaltungskomponente (58) über die definierte Schnittstellengruppe aufzurufen, und wobei die Verwaltungskomponente (58) dazu eingerichtet ist, Funktionen im Eingabeverfahren (64) über die definierte Schnittstellengruppe (61, 63) aufzurufen;
eine Verwaltungskomponente (58), die mit der definierten Schnittstellengruppe verbunden werden kann, wobei sich die Verwaltungskomponente (58) von den Anwendungsprogrammen (29) unterscheidet und eingerichtet ist für das:
a) Identifizieren eines der Eingabeverfahren (64) als das gewählte Eingabeverfahren,
b) Aktivieren des gewählten Eingabeverfahrens (64),
c) Kommunizieren mit dem gewählten Eingabeverfahren über die definierte Schnittstellengruppe (61, 63) des Verfahrens,
d) Identifizieren von Informationen über Benutzerdaten, die durch das gewählte Eingabeverfahren empfangen werden,
und
e) Weiterleiten der Informationen über die empfangenen Benutzerdaten zu einem aktiven Anwendungsprogramm der mehreren Anwendungsprogramme (29).
22. Verfahren zum Eingeben von Benutzerdaten in ein Computersystem (20) für die Verwendung durch wenigstens ein aktives Anwendungsprogramm von mehreren Anwendungsprogrammen (29), die dem Computersystem (20) zur Verfügung stehen, enthaltend:
Auswählen eines Eingabeverfahrens (64) aus mehreren Eingabeverfahren (64), die im Computersystem (20) installiert sind, wobei jedes Eingabeverfahren ein Verfahren ist, das in Bezug auf jedes aktive Anwendungsprogramm austauschbar ist und konfiguriert ist, um die Benutzerdaten zu akzeptieren, die von einer Eingabevorrichtung eingegeben werden, die dem Computersystem (20) zugeordnet ist, und das eine definierte Schnittstellengruppe (61, 63) hat, die wenigstens eine Schnittstelle enthält, die es ermöglicht, daß das Eingabeverfahren in einen anderen ausführbaren Softwarecode eingefügt werden kann, wodurch das Eingabeverfahren (64) geladen und aufgerufen wird, wobei das Eingabeverfahren (64) dazu geeignet ist, Funktionen in einer Verwaltungskomponente (58) über die definierte Schnittstellengruppe aufzurufen, und wobei von der Verwaltungskomponente (58) Funktionen im Eingabeverfahren (64) über die definierte Schnittstellengruppe (61, 63) aufgerufen werden können;
Aufrufen des gewählten Eingabeverfahrens (64) innerhalb eines Eingabefeldfensters (68), das durch das Computersystem (20) angezeigt wird, einschließlich des Einfügens des gewählten Eingabeverfahrens in einen anderen ausführbaren Code für die Kommunikation mit demselben über die definierte Schnittstellengruppe (61, 63); und
Akzeptieren der Benutzerdaten, die in das Eingabefeldfenster (68) gemäß dem gewählten Eingabeverfahren (64) eingegeben werden, wobei die Informationen, die den eingegebenen Benutzerdaten entsprechen, jedem aktiven Anwendungsprogramm unabhängig vom gewählten Eingabeverfahren zugeführt werden.
Die weiteren Patentansprüche gemäß Hilfsantrag 5 entsprechen den erteilten Unteransprüchen 2 bis 7 sowie den neu nummerierten und mit entsprechend geänderten Rückbezügen versehenen erteilten Unteransprüchen 9 bis 22 (nunmehr 8 bis 21) und 24 bis 40 (nunmehr 23 bis 39).
Hilfsantrag 6
Die unabhängigen Patentansprüche 1 und 23 gemäß Hilfsantrag 6 enthalten eine Kombination der geänderten Merkmale der Hilfsanträge 2 und 4 .
Die unabhängigen Patentansprüche 1 und 23 in der Fassung des Hilfsantrags 6 haben danach folgenden Wortlaut (mit markierten Änderungen gegenüber den Patentansprüchen 1 und 23 in der erteilten Fassung):
1. System zum Empfangen von Benutzerdaten, die in ein Computersystem (20) eingegeben werden, das über mehrere Anwendungsprogramme (29) verfügt, enthaltend:
mehrere Eingabeverfahren (64), wobei sich jedes Eingabeverfahren von den Anwendungsprogrammen (29) und anderen Eingabeverfahren (64) unterscheidet und derart beschaffen ist, daß es die Benutzerdaten akzeptiert, die von einer Eingabevorrichtung eingegeben werden, die dem Computersystem (20) zugeordnet ist, wobei jedes Eingabeverfahren (64) weiterhin eine definierte Schnittstellengruppe (61, 63) enthält, die darin wenigstens eine Schnittstelle enthält, damit das Eingabeverfahren (64) in einen anderen ausführbaren Kode eingefügt werden kann, der mit der definierten Schnittstellengruppe verbunden werden kann, wodurch das Eingabeverfahren (64) geladen und aufgerufen wird;
eine Verwaltungskomponente (58), die mit der definierten Schnittstellengruppe verbunden werden kann, wobei sich die Verwaltungskomponente (58) von den Anwendungsprogrammen (29) unterscheidet und eingerichtet ist für das:
a) Identifizieren eines der Eingabeverfahren (64) als das gewählte Eingabeverfahren,
b) Aktivieren des gewählten Eingabeverfahrens (64),
c) Kommunizieren mit dem gewählten Eingabeverfahren über die definierte Schnittstellengruppe (61, 63) des Verfahrens, wobei das Kommunizieren die Übergabe eines Rückrufschnittstellenzeigers beinhaltet,
d) Identifizieren von Informationen über Benutzerdaten, die durch das gewählte Eingabeverfahren über die Rückrufschnittstelle empfangen werden, und
e) Weiterleiten der Informationen über die empfangenen Benutzerdaten zu einem aktiven Anwendungsprogramm der mehreren Anwendungsprogramme (29).
23. Verfahren zum Eingeben von Benutzerdaten in ein Computersystem (20) für die Verwendung durch wenigstens ein aktives Anwendungsprogramm von mehreren Anwendungsprogrammen (29), die dem Computersystem (20) zur Verfügung stehen, enthaltend:
Auswählen eines Eingabeverfahrens (64) aus mehreren Eingabeverfahren (64), die im Computersystem (20) installiert sind, wobei jedes Eingabeverfahren ein Verfahren ist, das in Bezug auf jedes aktive Anwendungsprogramm austauschbar ist und konfiguriert ist, um die Benutzerdaten zu akzeptieren, die von einer Eingabevorrichtung eingegeben werden, die dem Computersystem (20) zugeordnet ist, und das eine definierte Schnittstellengruppe (61, 63) hat, die wenigstens eine Schnittstelle enthält, die es ermöglicht, daß das Eingabeverfahren in einen anderen ausführbaren Softwarecode eingefügt werden kann, wodurch das Eingabeverfahren (64) geladen und aufgerufen wird;
Aufrufen des gewählten Eingabeverfahrens (64) innerhalb eines Eingabefeldfensters (68), das durch das Computersystem (20) angezeigt wird, einschließlich des Einfügens des gewählten Eingabeverfahrens in einen anderen ausführbaren Code für die Kommunikation mit demselben über die definierte Schnittstellengruppe (61, 63); und
Übergeben eines Rückrufschnittstellenzeigers an das gewählte Eingabeverfahren (64) über die definierte Schnittstellengruppe;
Akzeptieren der Benutzerdaten, die in das Eingabefeldfenster (68) gemäß dem gewählten Eingabeverfahren (64) eingegeben werden, wobei die Informationen, die den eingegebenen Benutzerdaten entsprechen, jedem aktiven Anwendungsprogramm unabhängig vom gewählten Eingabeverfahren zugeführt werden; und
Senden der Informationen , die den eingegebenen Benutzerdaten entsprechen, an jedes aktive Anwendungsprogramm unter Verwendung des Rückrufschnittstellenzeigers.
Hinsichtlich des Wortlauts des auf Patentanspruch 1 rückbezogenen Anspruchs 8 gemäß Hilfsantrag 6 wird auf die als Anlage zum Schriftsatz vom 30. August 2013 eingereichte Fassung der Patentansprüche gemäß Hilfsantrag 6 (Bl. 633 ff. d. A.; Anspruch 8 Bl. 635 d. A.) verwiesen. Die weiteren Patentansprüche gemäß Hilfsantrag 6 entsprechen den Unteransprüchen 2 bis 7, 9 bis 22 sowie 24 bis 40 der erteilten Fassung.
Hilfsantrag 7
Die unabhängigen Patentansprüche 1 und 22 gemäß Hilfsantrag 7 enthalten eine Kombination der geänderten Merkmale der Hilfsanträge 3 und 4 .
Die unabhängigen Patentansprüche 1 und 22 in der Fassung des Hilfsantrags 7 haben danach folgenden Wortlaut (mit markierten Änderungen gegenüber den Patentansprüchen 1 und 23 in der erteilten Fassung):
1. System zum Empfangen von Benutzerdaten, die in ein Computersystem (20) eingegeben werden, das über mehrere Anwendungsprogramme (29) verfügt, enthaltend:
mehrere Eingabeverfahren (64), wobei sich jedes Eingabeverfahren von den Anwendungsprogrammen (29) und anderen Eingabeverfahren (64) unterscheidet und derart beschaffen ist, daß es die Benutzerdaten akzeptiert, die von einer Eingabevorrichtung eingegeben werden, die dem Computersystem (20) zugeordnet ist, wobei jedes Eingabeverfahren (64) weiterhin eine definierte Schnittstellengruppe (61, 63) enthält, die darin wenigstens eine Schnittstelle enthält, damit das Eingabeverfahren (64) in einen anderen ausführbaren Kode eingefügt werden kann, der mit der definierten Schnittstellengruppe verbunden werden kann, wodurch das Eingabeverfahren (64) geladen und aufgerufen wird, wobei das Eingabeverfahren (64) dazu geeignet ist, Funktionen in der Verwaltungskomponente (58) über die definierte Schnittstellengruppe aufzurufen, und wobei die Verwaltungskomponente (58) dazu eingerichtet ist, Funktionen im Eingabeverfahren (64) über die definierte Schnittstellengruppe (61, 63) aufzurufen;
eine Verwaltungskomponente (58), die mit der definierten Schnittstellengruppe verbunden werden kann, wobei sich die Verwaltungskomponente (58) von den Anwendungsprogrammen (29) unterscheidet und eingerichtet ist für das:
a) Identifizieren eines der Eingabeverfahren (64) als das gewählte Eingabeverfahren,
b) Aktivieren des gewählten Eingabeverfahrens (64),
c) Kommunizieren mit dem gewählten Eingabeverfahren über die definierte Schnittstellengruppe (61, 63) des Verfahrens, wobei das Kommunizieren die Übergabe eines Rückrufschnittstellenzeigers beinhaltet,
d) Identifizieren von Informationen über Benutzerdaten, die durch das gewählte Eingabeverfahren über die Rückrufschnittstelle empfangen werden, und
e) Weiterleiten der Informationen über die empfangenen Benutzerdaten zu einem aktiven Anwendungsprogramm der mehreren Anwendungsprogramme (29).
22. Verfahren zum Eingeben von Benutzerdaten in ein Computersystem (20) für die Verwendung durch wenigstens ein aktives Anwendungsprogramm von mehreren Anwendungsprogrammen (29), die dem Computersystem (20) zur Verfügung stehen, enthaltend:
Auswählen eines Eingabeverfahrens (64) aus mehreren Eingabeverfahren (64), die im Computersystem (20) installiert sind, wobei jedes Eingabeverfahren ein Verfahren ist, das in Bezug auf jedes aktive Anwendungsprogramm austauschbar ist und konfiguriert ist, um die Benutzerdaten zu akzeptieren, die von einer Eingabevorrichtung eingegeben werden, die dem Computersystem (20) zugeordnet ist, und das eine definierte Schnittstellengruppe (61, 63) hat, die wenigstens eine Schnittstelle enthält, die es ermöglicht, daß das Eingabeverfahren in einen anderen ausführbaren Softwarecode eingefügt werden kann, wodurch das Eingabeverfahren (64) geladen und aufgerufen wird, wobei das Eingabeverfahren (64) dazu geeignet ist, Funktionen in einer Verwaltungskomponente (58) über die definierte Schnittstellengruppe aufzurufen, und wobei von der Verwaltungskomponente (58) Funktionen im Eingabeverfahren (64) über die definierte Schnittstellengruppe (61, 63) aufgerufen werden können;
Aufrufen des gewählten Eingabeverfahrens (64) innerhalb eines Eingabefeldfensters (68), das durch das Computersystem (20) angezeigt wird, einschließlich des Einfügens des gewählten Eingabeverfahrens in einen anderen ausführbaren Code für die Kommunikation mit demselben über die definierte Schnittstellengruppe (61, 63); und
Übergeben eines Rückrufschnittstellenzeigers an das gewählte Eingabeverfahren (64) über die definierte Schnittstellengruppe;
Akzeptieren der Benutzerdaten, die in das Eingabefeldfenster (68) gemäß dem gewählten Eingabeverfahren (64) eingegeben werden, wobei die Informationen, die den eingegebenen Benutzerdaten entsprechen, jedem aktiven Anwendungsprogramm unabhängig vom gewählten Eingabeverfahren zugeführt werden; und
Senden der Informationen , die den eingegebenen Benutzerdaten entsprechen, an jedes aktive Anwendungsprogramm unter Verwendung des Rückrufschnittstellenzeigers.
Die weiteren Patentansprüche gemäß Hilfsantrag 7 entsprechen den erteilten Unteransprüchen 2 bis 7 sowie den neu nummerierten und mit entsprechend geänderten Rückbezügen versehenen erteilten Unteransprüchen 9 bis 22 (nunmehr 8 bis 21) und 24 bis 40 (nunmehr 23 bis 39).
Die Klägerin sieht mit den sieben Hilfsanträgen weiterhin eine bloße Softwarelösung beansprucht, die dem Patentierungsausschluss nach Art. 52 Abs. 2 lit. c, Abs. 3 EPÜ unterfällt. Ferner hält sie die unabhängigen Patentansprüche der Hilfsanträge gegenüber dem Inhalt der Anmeldung in der ursprünglich eingereichten Fassung für unzulässig erweitert, für nicht ausführbar und nicht neu, jedenfalls aber für nicht erfinderisch.
Die Beklagte tritt den Ausführungen der Klägerin in allen Punkten entgegen. Das Streitpatent unterliege keinem Patentierungsausschluss. Es gehe vorliegend nicht nur um Mittel zur Erfassung, Speicherung und Verarbeitung von Informationen, sondern um die zweckmäßige Steuerung der Dateneingabe im Hinblick auf die vorhandenen oder hinzukommenden Hardware- und Softwarekomponenten des Computersystems. Das Streitpatent sei auch im Übrigen patentfähig, jedenfalls in den Fassungen der Hilfsanträge. Es sei weder unzulässig erweitert, noch mangele es ihm gegenüber dem Stand der Technik an Neuheit bzw. erfinderischer Tätigkeit.
Wegen der weiteren Einzelheiten des Vorbringens der Beteiligten wird auf den Akteninhalt verwiesen.
Die Klage, mit der u. a. der Nichtigkeitsgrund der fehlenden Patentfähigkeit nach Artikel II § 6 Absatz 1 Nr. 1 IntPatÜG, Artikel 138 Abs. 1 lit a EPÜ i. V. m. Artikel 54 Absatz 1, 2 und Artikel 56 EPÜ geltend gemacht wird, ist zulässig und begründet. Das Streitpatent erweist sich sowohl in der erteilten Fassung als auch in der Fassung der Hilfsanträge bereits deshalb als nicht patentfähig, weil es bei Außerachtlassung derjenigen Merkmale, welche zu einer technischen Problemlösung nicht beitragen (vgl. die Rechtsprechung zu Art. 52 (2) Buchst. c / (3) EPÜ), nicht auf einer erfinderischen Tätigkeit beruht (Art. 56 EPÜ). Offen bleiben kann daher, ob es sich beim Gegenstand des Streitpatents - als ganzes gesehen - um ein Programm für Datenverarbeitungsanlagen „als solches“ handelt, welches nicht als technische Erfindung angesehen werden könnte, bzw. ob der Gegenstand des Patents unzulässig erweitert ist.
I.
1. Gegenstand des Streitpatents ist ausweislich der Streitpatentschrift ein Konzept für das Management verschiedener Eingabeverfahren für ein Computersystem, insbesondere für kleine handgehaltene Mobilgeräte. Bei diesen besteht zunächst ein Problem darin, wie auf einem so kleinen Gerät eine (relativ große, aufgrund der Größe eines menschlichen Fingers auch nicht beliebig verkleinerbare) Eingabetastatur angeordnet werden kann.
Eine mögliche Lösung besteht in der Verwendung eines berührungsempfindlichen Bildschirms (Touchscreen) und der Anzeige eines Eingabetastenfeldes. Nach der Beschreibungseinleitung des Streitpatents (siehe insbes. Absatz [0005] / [0006]) ist es bei solchen Geräten üblich, dass das am Bildschirm angezeigte Eingabetastenfeld von dem jeweiligen Anwendungsprogramm erzeugt und interpretiert wird (weil unterschiedliche Anwendungsprogramme unterschiedliche Eingabebedürfnisse haben). Diese Lösung habe aber den Nachteil, dass es Überschneidungen gebe („a substantial amount of duplication takes place“), wenn von mehreren Anwendungsprogrammen das gleiche Eingabetastenfeld genutzt werden sollte; Programme würden dadurch unnötig groß, komplex und ressourcen-belastend. Eine andere Lösung gehe dahin, dass alle unterschiedlichen Eingabemöglichkeiten direkt vom Betriebssystem bereitgestellt würden, so dass jedes Anwendungsprogramm bei Bedarf darauf zurückgreifen könne; das resultiere aber in einer Beschränkung auf die vorgesehenen Eingabemöglichkeiten, neue Funktionalitäten ließen sich nachträglich schlecht einbinden.
2. Davon ausgehend bezeichnet es das Streitpatent als zugrundeliegendes Problem (Aufgabe), ein verbessertes Eingabeverfahren und -System für eine effiziente und flexible Eingabe von Benutzerdaten in ein Computersystem vorzuschlagen, auch in Verbindung mit einem berührungsempfindlichen Eingabemechanismus, wobei jedes Anwendungsprogramm auf eine Auswahl verschiedener Eingabeverfahren zugreifen kann, und auch mehrere Anwendungsprogramme ein gemeinsames Eingabeverfahren benutzen können, so dass die Eingabeschnittstelle insgesamt kostengünstig, zuverlässig, erweiterbar und einfach anzuwenden ist (vgl. Streitpatentschrift Absatz [0008] bis [0012]).
3. Die beanspruchte Lösung besteht i. w. darin, eine Schnittstellendefinition für die Schnittstelle zwischen Eingabeverfahren und Anwendungsprogrammen vorzusehen, welche dann auch von nachträglich hinzukommenden Eingabeverfahren genutzt werden kann, wodurch diese sich ohne Aufwand in das bestehende Software-System einbinden lassen. Ferner kann eine Verwaltungskomponente eingesetzt werden, die über die definierten Schnittstellen mit den verschiedenen Eingabeverfahren kommuniziert und, unabhängig von einem bestimmten Anwendungsprogramm, eingegebene Daten entgegennimmt und an ein aktives Anwendungsprogramm weiterleitet (siehe Streitpatentschrift insbesondere Absatz [0014]).
4. Als Fachmann ist ein Softwareentwickler mit Hochschulabschluss und mit mehreren Jahren Berufserfahrung im Bereich von Benutzerschnittstellen und deren Implementierung in Betriebssysteme anzusehen. Dieser kennt aufgrund seiner Ausbildung die Grundlagen und Anwendung des objektorientierten Programmierens und hat auch Erfahrung in der Benutzung unterschiedlicher Programmiersprachen und Betriebssysteme gesammelt.
5. Für die unabhängigen Patentansprüche 1 und 23 in deutscher Übersetzung wurde im Verfahren die folgende Merkmalsgliederung verwendet:
1. System zum Empfangen von Benutzerdaten, die in ein Computersystem (20) eingegeben werden, das über mehrere Anwendungsprogramme (29) verfügt, enthaltend:
1.1 mehrere Eingabeverfahren (64), wobei
1.1.1 sich jedes Eingabeverfahren von den Anwendungsprogrammen (29) und anderen Eingabeverfahren (64) unterscheidet und
1.1.2 derart beschaffen ist, daß es die Benutzerdaten akzeptiert, die von einer Eingabevorrichtung eingegeben werden, die dem Computersystem (20) zugeordnet ist,
1.1.3 wobei jedes Eingabeverfahren (64) weiterhin eine definierte Schnittstellengruppe (61, 63) enthält, die darin wenigstens eine Schnittstelle enthält, damit das Eingabeverfahren (64) in einen anderen ausführbaren Kode eingefügt werden kann, der mit der definierten Schnittstellengruppe verbunden werden kann;
1.2 eine Verwaltungskomponente (58),
1.2.1 die mit der definierten Schnittstellengruppe verbunden werden kann,
1.2.2 wobei sich die Verwaltungskomponente (58) von den Anwendungsprogrammen (29) unterscheidet und eingerichtet ist für das:
1.2.3 a) Identifizieren eines der Eingabeverfahren (64) als das gewählte Eingabeverfahren,
1.2.4 b) Aktivieren des gewählten Eingabeverfahrens (64),
1.2.5 c) Kommunizieren mit dem gewählten Eingabeverfahren über die definierte Schnittstellengruppe (61, 63) des Verfahrens,
1.2.6 d) Identifizieren von Informationen über Benutzerdaten, die durch das gewählte Eingabeverfahren empfangen werden, und
1.2.7 e) Weiterleiten der Informationen über die empfangenen Benutzerdaten zu einem aktiven Anwendungsprogramm der mehreren Anwendungsprogramme (29).
und
23. Verfahren zum Eingeben von Benutzerdaten in ein Computersystem (20) für die Verwendung durch wenigstens ein aktives Anwendungsprogramm von mehreren Anwendungsprogrammen (29), die dem Computersystem (20) zur Verfügung stehen, enthaltend:
23.1 Auswählen eines Eingabeverfahrens (64) aus mehreren Eingabeverfahren (64), die im Computersystem (20) installiert sind, wobei
23.1.1 jedes Eingabeverfahren ein Verfahren ist, das in Bezug auf jedes aktive Anwendungsprogramm austauschbar ist und
23.1.2 konfiguriert ist, um die Benutzerdaten zu akzeptieren, die von einer Eingabevorrichtung eingegeben werden, die dem Computersystem (20) zugeordnet ist, und
23.1.3 das eine definierte Schnittstellengruppe (61, 63) hat, die wenigstens eine Schnittstelle enthält, die es ermöglicht, daß das Eingabeverfahren in einen anderen ausführbaren Softwarecode eingefügt werden kann;
23.2 Aufrufen des gewählten Eingabeverfahrens (64) innerhalb eines Eingabefeldfensters (68), das durch das Computersystem (20) angezeigt wird,
23.2.1 einschließlich des Einfügens des gewählten Eingabeverfahrens in einen anderen ausführbaren Code für die Kommunikation mit demselben über die definierte Schnittstellengruppe (61, 63); und
23.3 Akzeptieren der Benutzerdaten, die in das Eingabefeldfenster (68) gemäß dem gewählten Eingabeverfahren (64) eingegeben werden, wobei
23.3.1 die Informationen, die den eingegebenen Benutzerdaten entsprechen, jedem aktiven Anwendungsprogramm unabhängig vom gewählten Eingabeverfahren zugeführt werden.
6. Einige Merkmale bedürfen einer Erläuterung.
6.1 Durch die Lehre des Streitpatents soll eine effiziente und ressourcenschonende Software-Weichenfunktion geschaffen werden, mit deren Hilfe ein Anwendungsprogramm mit unterschiedlichen „Eingabeverfahren“ zusammenarbeiten kann, oder mehrere Anwendungsprogramme auf dasselbe „Eingabeverfahren“ zugreifen können.
Der hier wesentliche Begriff „Eingabeverfahren“ ist in Absatz [0024] der Streitpatentschrift erläutert: Eingabeverfahren können unterschiedliche Bildschirmtastaturen, Taschenrechner, Formeleditor, Strichcodeleser, Kurzschrift oder Spracherkennung, Handschrifterkennung u. a. umfassen. Die unmittelbar vom Benutzer vorgenommene Eingabe (Sprache, Handschrift, Tastendruck u. a.) wird gemäß Absatz [0023] in „Informationen“ konvertiert, die für die Anwendungsprogramme verständlich sind (M 1.2.6, M 23.3.1) – dabei handelt es sich im Wesentlichen um übliche Tastatur-Tastencodes oder Maus-Messages, die in die „message queue“ des Anwendungsprogramms übergeben werden. Im Ergebnis kann jedes für Tastatureingaben ausgelegte Anwendungsprogramm mit jedem beliebigen entsprechend ausgelegten „Eingabeverfahren“ im Sinne des Streitpatents zusammenarbeiten (vgl. Streitpatentschrift Absatz [0023], [0026]).
6.2 Von besonderer Bedeutung für das Verständnis der Erfindung ist der Begriff „Schnittstelle“ (Verfahrenssprache: „interface“, kein singuläres Bezugszeichen) bzw. „Schnittstellengruppe“ („interface set“ 61, 63). Anspruchsgemäß soll zu jedem Eingabeverfahren (64) eine Schnittstellengruppe (61, 63) vorgesehen werden, die mindestens eine Schnittstelle enthält, welche das „Einfügen“ in einen anderen ausführbaren Software-Code ermöglicht (M 1.1.3, M 23.1.3, M 23.2.1).
Im Streitpatent ist ab Absatz [0052] ein Beispiel für eine solche Schnittstelle beschrieben (siehe insbesondere die Tabelle „Interface Iinput Method“). Davon ausgehend versteht der Fachmann, dass „Schnittstelle“ im Kontext des Streitpatents eine Zusammenstellung bzw. Auflistung derjenigen Methoden, die vom jeweiligen Eingabeverfahren unterstützt werden oder unterstützt werden müssen, und ihrer Parameter darstellt. „Methode“ ist dabei ein Begriff aus der objektorientierten Programmierung und bezeichnet ein Unterprogramm, welches ein bestimmtes Verhalten des Objektes beschreibt und implementiert, siehe http://de.wikipedia.org/ wiki/Methode_(Programmierung) und die Beispiele in den Absätzen [0054] bis [0066] der Streitpatentschrift.
Der Begriff „Schnittstellengruppe“ („interface set“) kommt lediglich in den Patentansprüchen, nicht aber in der Beschreibung des Streitpatents vor. Die Zuordnung der Bezugszeichen 61 und 63 (Streitpatent Seite 4 Zeile 42 / 43: „COM interface shown as llMCallback 61 and llnputmethod 63“; siehe auch Figur 2) verdeutlicht, dass die „Schnittstellengruppe” außer der Schnittstelle 63 noch eine weitere Schnittstelle 61 für eine Informationsübertragung in Gegenrichtung enthält, der Begriff aber insgesamt letztlich auch nicht anders zu verstehen ist als der oben erläuterte Begriff „Schnittstelle“.
Eine „Schnittstelle“ oder „Schnittstellengruppe” im Sinne des Streitpatents ist somit konkret eine Zusammenstellung von verschiedenen Unterprogrammen („Methoden“) für ein zugeordnetes Eingabeverfahren, welche definitionsgemäße Ergebnisse liefern und von jedem Anwendungsprogramm (ggf. mittels der Verwaltungskomponente) aufgerufen werden können, oder abstrakt eine Definition (Auflistung) der verfügbaren bzw. erforderlichen Unterprogramme mit deren Parametern und Rückgabewerten.
6.3 Die in der deutschen Anspruchsfassung verwendeten Begriffe „eingefügt“ (M 1.1.3, M 23.1.3) und „Einfügen“ (M 23.2.1) dürften im Fachgebiet des Streitpatents eher unüblich sein. Die in der Verfahrenssprache verwendeten Begriffe „pluggable“ und „plugging“ finden sich nur in den Patentansprüchen, nicht aber in der Beschreibung wieder. Jedoch lässt sich aus Seite 4 Zeile 39 bis 41, Zeile 49 / 50, Seite 5 Zeile 46 bis 48 und Seite 8 Zeile 47 / 48, sowie der Bezugnahme auf neue Anwendungsprogramme, „beispielsweise solche, die durch Plug-In Module zugefügt werden“ (Seite 1 Zeile 26 / 27) ableiten, dass mittels einer definierten Schnittstelle der vorhandenen Software auch nachträglich noch andere Eingabeverfahren „eingeklinkt“ werden können. Demnach sind die Begriffe so zu verstehen, dass im Nachhinein eine Software-Verbindung (letztlich: ein Übertragungsweg für Eingabedaten) zwischen jedem (beliebigen) Anwendungsprogramm („anderer ausführbarer (Software-) Code“ des Merkmals M 1.1.3 bzw. M 23.1.3, M 23.2.1) und einem oder mehreren (beliebigen) Eingabeverfahren geschaffen werden kann. Das gelingt durch die Schnittstellen-Definition, welche es jedem Anwendungsprogramm auch ohne Kenntnis eines speziellen Eingabeverfahrens erlaubt, dessen definitionsgemäße Methoden aufzurufen. Dieses Herstellen eines Übertragungswegs für Eingabedaten in Form eines Aufrufs von ggf. auch erst nachträglich implementierten Eingabeverfahren wird im Streitpatent mit „pluggable“ bzw. „plugging“ bezeichnet.
Entscheidend dafür ist zum einen die definierte Schnittstelle, welche beliebige Eingabeverfahren erlaubt, solange diese die verlangten Eingangsdaten im vorgegebenen Format liefern können; und zum anderen die „Weichen-Funktion“ der Software (insbesondere in Form der Verwaltungskomponente), welche die Daten einer ausgewählten Schnittstelle an zuständige aktive Anwendungsprogramme durchschaltet.
6.4 Nach Anspruch 1 ist ausdrücklich eine „Verwaltungskomponente“ vorgesehen (M 1.2), welche sich von den Anwendungsprogrammen unterscheiden soll (M 1.2.2) und im Sinne einer Datenweiche ausgewählte Eingabeverfahren mit zugeordneten aktiven Anwendungsprogrammen verbindet (insbes. M 1.2.3, M 1.2.7). Eine solche Verwaltungskomponente ist beim Verfahren nach Anspruch 23 nicht vorgesehen. Dem Fachmann ist klar, dass es sich bei der Verwaltungskomponente um ein Computerprogramm handelt.
6.5 Nach Anspruch 23 Merkmal M 23.1.1 soll jedes Eingabeverfahren in Bezug auf die aktiven Anwendungsprogramme „austauschbar“ sein; in Übereinstimmung damit sollen gemäß Merkmal M 23.3.1 die der Benutzereingabe entsprechenden Informationen jedem aktiven Anwendungsprogramm „unabhängig vom gewählten Eingabeverfahren“ zugeführt werden können. Dies kann nur so verstanden werden, dass die Eingabeverfahren sich hinsichtlich ihrer jeweiligen Schnittstellendefinition nicht unterscheiden dürfen: wie auch immer die Eingabe erfolgt, ob über eine altbekannte Hardware-Tastatur, über eine Bildschirmtastatur oder als Spracheingabe - das Eingabeverfahren muss in jedem Fall dieselben Informationen an das Anwendungsprogramm liefern. D. h. es ist Aufgabe des jeweiligen Eingabeverfahrens, die primär anfallenden Eingabedaten (im Falle einer Hardware-Tastatur vielleicht der Kennzeichnungs-Code einer gedrückten Taste; bei einer Bildschirm-Tastatur die Koordinaten einer Berührstelle; bei Spracheingabe z. B. ein erkanntes Wort) in dieselben, standardisierten Informationen (z. B. Zeichencodes) umzusetzen und diese unabhängig vom jeweiligen Eingabeverfahren identisch an die Anwendungsprogramme zu liefern. Damit fordern die beiden genannten Merkmale implizit eine einheitliche Schnittstellendefinition für alle Eingabeverfahren.
Ein dem entsprechendes Merkmal ist im Patentanspruch 1 nicht enthalten.
6.6 Zwar soll die definierte Schnittstellengruppe (61, 63) sowohl nach Anspruch 1 wie auch (i. w. genauso) nach Anspruch 23 wenigstens eine Schnittstelle enthalten, mittels derer das Eingabeverfahren in einen anderen ausführbaren Softwarecode eingefügt werden kann (M 1.1.3 / M 23.1.3). Das tatsächliche Einfügen in einen anderen ausführbaren Code ist aber nur im Anspruch 23 als Arbeitsschritt vorgesehen (M 23.2.1). Im Anspruch 1 heißt es lediglich, dass das gewählte Eingabeverfahren „aktiviert“ werden soll (M 1.2.4). Trotz der unterschiedlichen Begriffe („einschließlich des Einfügens des gewählten Eingabeverfahrens“ vs. „Aktivieren des gewählten Eingabeverfahrens“) ist nicht erkennbar, dass die beanspruchte Funktionalität unterschiedlich sein sollte.
6.7 Gemäß Merkmal M 1.2.3 soll die Verwaltungskomponente eines der implementierten Eingabeverfahren „als das gewählte Eingabeverfahren“ identifizieren. Ähnlich ist Merkmal M 23.1 gerichtet auf einen Arbeitsschritt zum „Auswählen eines Eingabeverfahrens aus mehreren Eingabeverfahren, die im Computersystem installiert sind.“ Hierzu lässt sich dem Streitpatent, insbesondere Absatz [0028] / [0024], entnehmen, dass die erforderliche Auswahl getroffen werden kann: durch den Benutzer, indem er beispielsweise aus einer Liste von möglichen Eingabeverfahren auswählt; durch eine feste Zuordnung eines Eingabeverfahrens zu einem Anwendungsprogramm („a default input method may be selected for use with a particular application“); oder indem einfach das von dem bisher aktiven Anwendungsprogramm benutzte Eingabeverfahren beibehalten wird.
II.
Das Streitpatent erweist sich sowohl in der erteilten Fassung als auch im Umfang der Hilfsanträge 1 bis 7 nicht als patentfähig. Denn diejenigen Merkmale, die nicht bereits aus dem Stand der Technik vorbekannt oder durch ihn nahegelegt sind, können die Lösung eines technischen Problems mit technischen Mitteln nicht bestimmen oder zumindest beeinflussen (vgl. BGH GRUR 2011, 125 - Wiedergabe topografischer Informationen), und sind daher bei der Prüfung auf erfinderische Tätigkeit (Art. 56 EPÜ) nicht zu berücksichtigen.
1. Es kann offen bleiben, ob der Gegenstand der Patentansprüche nach Hauptantrag und den Hilfsanträgen 1 bis 7 unzulässig erweitert wurde, und ob die jeweils beanspruchte Lehre in vollem Umfang ausführbar ist. Es kommt auch nicht mehr darauf an, ob bestimmte Patentansprüche vollständig unter den Ausschlusstatbestand nach Art. 52 Abs. 2 lit. c, Abs. 3 EPÜ fallen. Denn den einzelnen Anträgen bleibt bereits aus anderem Grund der Erfolg versagt, wie im Folgenden ausgeführt ist.
2. In der erteilten Fassung (Hauptantrag) hat das Streitpatent keinen Bestand, weil der jeweilige Gegenstand der unabhängigen Patentansprüche 1 und 23 bei Außerachtlassung derjenigen Merkmale, welche zu einer technischen Problemlösung nicht beitragen, nicht auf einer erfinderischen Tätigkeit beruht.
2.1 Als nächstliegenden Stand der Technik sieht der Senat die im Streitpatent in Absatz [0006] beschriebene vorbekannte Lösung an; diese zeigt bereits alle Merkmale der unabhängigen Patentansprüche 1 und 23, mit Ausnahme einer derartigen Definition der Schnittstelle, dass die Eingabeverfahren aus Sicht der Anwendungsprogramme untereinander austauschbar sind und eingegebene Informationen an jedes (beliebige) Anwendungsprogramm unabhängig vom gewählten Eingabeverfahren weitergeleitet werden können, und bezüglich des Patentanspruchs 1 mit Ausnahme einer Verwaltungskomponente, welche die Datenverbindung zwischen Eingabeverfahren und Anwendungsprogrammen herstellt.
2.1.1 Die in Absatz [0006] des Streitpatents beschriebene Implementierung von Eingabeverfahren im Betriebssystem war dem Fachmann vertraut und gehört zum vorveröffentlichten Stand der Technik.
Für die Nutzung verschiedener Eingabeverfahren durch mehrere beliebige Anwendungsprogramme ist in der mündlichen Verhandlung die Lösung gemäß Absatz [0006] der Streitpatentschrift als „Stand der Technik 2“ (StdT2) erörtert worden. Demnach war es bekannt, die Programmroutinen für sämtliche vorgesehenen Eingabeverfahren im Betriebssystem anzuordnen („the operating system can supply all the virtual keyboards and thus eliminate the redundancy …“).
Eine detaillierte schriftliche Dokumentation der Art und Weise, wie solche Eingabeverfahren im Betriebssystem implementiert sind, wurde im Verfahren nicht vorgelegt. Jedoch gehörte die Kenntnis der Zusammenhänge und Abläufe bereits vor dem Prioritätstag des Streitpatents zum Grundwissen des zuständigen Fachmanns. Das ist von der Beklagten nicht bestritten worden.
Zwar wird das allgemeine Fachwissen des Fachmanns allein i. d. R. als Entgegenhaltung nicht anerkannt (vgl. etwa Schulte, PatG, 9. Auflage (2013), § 3 Rn. 11). Der bei der Prüfung eines Anmeldungsgegenstandes auf Patentfähigkeit von der Prüfungsstelle in Betracht gezogene Stand der Technik muss nachprüfbar sein (BPatGE 30, 250). Eine Kenntnis, die zum allgemeinen Fachwissen gehören soll, kann nur berücksichtigt werden, wenn es unbestritten oder belegbar ist (Schulte, PatG, 9. Auflage (2013), § 34 Rn. 348, u. a. mit Verweis auf EPA T 0939/92, Nr. 2.3).
Im vorliegenden Fall ist die in Rede stehende „Betriebssystem-Lösung“ bereits im Streitpatent selbst als Stand der Technik aufgeführt; sie war dem Fachmann spätestens seit der Verfügbarkeit sog. „Personal Computer“ (Apple I / II, Commodore, Atari, später des IBM-PC) vertraut. Die Beklagte hat Details der geschilderten Lösung mit erörtert und deren Vorbekanntheit nicht in Zweifel gezogen. Die Zusammenhänge sind auch gerichtsbekannt (vgl. dazu BPatGE 51, 9 - Scharnierkonstruktion, II. 7., m. w. N.). Dies rechtfertigt es daher, sie hier zum vorbekannten Stand der Technik zu rechnen.
2.1.2 Die Lehre, verschiedene Eingabeverfahren, wie Tastatureingabe und Eingabe durch Cursorsteuerung (Maus), im Betriebssystem anzulegen, ist noch um das einschlägige Fachwissen zu ergänzen.
Insbesondere verbindet der Fachmann mit einer solchen Betriebssystem-Lösung:
– dass jedes dieser Eingabeverfahren eine definierte Schnittstelle hat, über welche ein Anwendungsprogramm darauf zugreifen kann. Dazu ruft das Anwendungsprogramm das ausgewählte Eingabeverfahren, ggf. unter Übergabe von schnittstellenabhängig definierten Parametern, etwa so wie ein Unterprogramm auf. Nach dem Verständnis des Fachmanns wird dadurch ein im Betriebssystem angelegtes Eingabeverfahren in den ausführbaren Code des aufrufenden Anwendungsprogrammes im Sinne des Streitpatents „eingefügt“;
– dass auf diesem Weg prinzipiell jedes Eingabeverfahren für jedes Anwendungsprogramm zur Verfügung steht,
– und dass das ausgewählte Eingabeverfahren dann von einem Anwendungsprogramm aus bei Betriebssystemen mit grafischen Benutzeroberflächen in einem durch das Computersystem angezeigten Eingabefeldfenster nutzbar ist
(vgl. dazu auch den englischsprachigen Wikipedia-Eintrag zu „BIOS“, abgerufen im Januar 2014 unter http://en.wikipedia.org/wiki/BIOS, dort insbes. die Einführung und den Abschnitt „Operating system services“).
2.1.3 Im konkreten Vergleich mit Anspruch 23 des Streitpatents liegt mit der geschilderten „Betriebssystem-Lösung“ gemäß StdT2 ein „Verfahren zum Eingeben von Benutzerdaten …“ gemäß Gattungsbegriff (M 23) vor. Die einzelnen im Betriebssystem angelegten Eingabeverfahren weisen definierte Schnittstellen auf, über welche eine Einbindung in beliebige Anwendungsprogramme erfolgen kann; zweckbedingt muss das Eingabeverfahren dabei konfiguriert sein, die Benutzerdaten zu akzeptieren, die von einer dem Computersystem zugeordneten Eingabevorrichtung eingegeben werden (i. w. M 23.1.1, M 23.1.2). Wie in Abschnitt 2.1.2 dargelegt, weiß der Fachmann, dass die Schnittstellen der Eingabeverfahren es ermöglichen, dass jedes Eingabeverfahren in einen anderen ausführbaren Softwarecode eingefügt werden kann (M 23.1.3) und bei Nutzung des Verfahrens auch eingefügt wird (M 23.2.1). Ferner ist klar, dass eine Auswahl (i. d. R. durch das Anwendungsprogramm) getroffen werden muss, wenn mehrere der installierten Eingabeverfahren für das aktive Anwendungsprogramm in Frage kommen (M 23.1).
Wenn die Auswahl getroffen worden ist - etwa im Falle eines Textverarbeitungsprogramms durch feste Zuordnung zur Tastatureingabe (was der „default input method“ des Streitpatents Absatz [0028] entspricht) -, kann das gewählte Eingabeverfahren in einem Fenster, das durch das Computersystem angezeigt wird, benutzt werden. Dieses Fenster kann, da die Tasteneingaben dort direkt angezeigt werden, als „Eingabefeldfenster“ verstanden werden (M 23.2); ähnlich ist auch der Beschreibung zu StdT2 in Absatz [0006] der Streitpatentschrift ein „Eingabefeldfenster“ zu entnehmen, wenn ein virtuelles Tastenfeld zur Berührungseingabe angezeigt wird.
Während der Nutzung des ausgewählten Eingabeverfahrens werden dann zweckbedingt die Benutzerdaten, die in das Eingabefeldfenster eingegeben werden, akzeptiert und die Informationen, die den eingegebenen Benutzerdaten entsprechen, dem aktiven Anwendungsprogramm zugeführt (M 23.3, i. w. M 23.3.1).
Mit entsprechender Argumentation sind auch die Merkmale M 1, M 1.1, M 1.1.1, M 1.1.2 und M 1.1.3 des Patentanspruchs 1 durch StdT2 vorweggenommen.
2.1.4 Die Lehre des Anspruchs 23 unterscheidet sich von der Lehre gemäß StdT2 noch darin, dass die bekannten im Betriebssystem angelegten Eingabeverfahren (s. o.: z. B. Tastatureingabe, Eingabe durch Cursor-Steuerung) für ein Anwendungsprogramm nicht ohne weiteres „austauschbar“ sind (Teil von M 23.1.1). Im Normalfall besitzen die unterschiedlichen im Betriebssystem angelegten Eingabeverfahren jeweils eigene Schnittstellen mit eigenen Definitionen für Übergabeparameter usw. - es ergibt sich aus den Überlegungen zu StdT2 nicht zwingend, dass eine Hardware-Tastatur genau denselben Zeichenvorrat und Codesatz verwenden müsste wie vielleicht eine im Betriebssystem angelegte Bildschirmtastatur oder gar eine Spracheingabe.
Mit anderen Worten geht eine einheitliche Schnittstellendefinition für die unterschiedlichen im Betriebssystem angelegten Eingabeverfahren über das hinaus, was der Fachmann mit der „Betriebssystem-Lösung“ gemäß StdT2 verbindet.
Dies hat auch zur Folge, dass die Informationen, die den eingegebenen Benutzerdaten entsprechen, einem aktiven Anwendungsprogramm nicht „unabhängig vom gewählten Eingabeverfahren“ zugeführt werden können (Teil von M 23.3.1).
Bezüglich des Patentanspruchs 1 lehrt StdT2 keine „Verwaltungskomponente“ zwischen dem Betriebssystem und den Anwendungsprogrammen (M 1.2, M 1.2.1, M 1.2.2). Die Schritte a) bis e), entsprechend den Merkmalen M 1.2.3 bis M 1.2.7, werden bei der „Betriebssystem-Lösung“ von jedem Anwendungsprogramm für sich selbst durchgeführt.
2.1.5 Darüber hinaus ist als „Stand der Technik 1“ (StdT1) die Vorgehensweise gemäß Absatz [0005] der Streitpatentschrift diskutiert worden, dass jedes Anwendungsprogramm seine eigenen Eingabeverfahren mitbringt. Diese Lösung liegt eher fern von der beanspruchten Lösung, weil ein applikations-übergreifender Austausch von Eingabeverfahren dabei nicht möglich ist und ggf. ein mehrfach benötigtes Eingabeverfahren auch mehrfach programmiert werden muss.
2.2 Mit den Unterschieden der Patentansprüche 1 und 23 gegenüber der Lehre nach StdT2 kann das Vorliegen einer erfinderischen Tätigkeit nicht begründet werden, weil die Unterschiedsmerkmale nicht zu berücksichtigen sind.
2.2.1 Nach der Rechtsprechung des Bundesgerichtshofs sind bei der Prüfung einer Erfindung auf erfinderische Tätigkeit nur diejenigen Anweisungen zu berücksichtigen, die die Lösung eines technischen Problems mit technischen Mitteln bestimmen oder zumindest beeinflussen (BGH GRUR 2011, 125 - Wiedergabe topografischer Informationen; BGH GRUR 2013, 909 - Fahrzeugnavigationssystem).
Ob ein konkretes technisches Problem durch eine Erfindung mit technischen Mitteln gelöst wird, ist objektiv danach zu bestimmen, was die Erfindung tatsächlich leistet. Dies ist durch Auslegung des Patentanspruchs zu entwickeln. Die in der Patentschrift angegebene Aufgabe fungiert lediglich als Hilfsmittel bei der Ermittlung des objektiven technischen Problems (BGH, GRUR 2011, 610 - Webseitenanzeige, Rn. 20, m. w. N.).
2.2.2 Dabei ist es hinreichend, diese Beurteilung auf diejenigen Merkmale zu beschränken, die über den nächstkommenden Stand der Technik hinausgehen. Im vorliegenden Fall braucht die Frage, ob bei Betrachtung aller Merkmale des Patentanspruchs 1 oder 23 zumindest ein Teilaspekt davon ein technisches Problem bewältigt, nicht entschieden zu werden (vgl. die Argumentation in BGH GRUR 2013, 275 - Routenplanung, Rn. 36, Rn. 41 bis 45).
2.2.3 An diesen Kriterien gemessen sind die über die Lehre nach StdT2 hinausgehenden Merkmale der Patentansprüche 1 und 23 bei der Prüfung auf erfinderische Tätigkeit nicht zu berücksichtigen.
(i) Der Gegenstand des Patentanspruchs 23 unterscheidet sich von der Lehre gemäß StdT2 darin, dass jedes Eingabeverfahren in Bezug auf jedes aktive Anwendungsprogramm austauschbar sein soll, und dass die einer Benutzereingabe entsprechenden Informationen jedem aktiven Anwendungsprogramm unabhängig vom gewählten Eingabeverfahren zuführbar sein sollen.
Gegenüber der Lehre nach StdT2 besteht die Leistung dieser beiden Merkmale darin, dass jedes Eingabeverfahren ohne Programmanpassung von jedem Anwendungsprogramm verwendet werden kann, und dass ein bestehendes Anwendungsprogramm nachträglich eingeführte Eingabeverfahren mitbenutzen kann, ohne dass eine tiefergehende Programmanpassung, wie etwa eine Änderung innerhalb des Betriebssystems, erforderlich ist. Dadurch wird die Programmierung der Datenverbindung zwischen Eingabeverfahren und Anwendungsprogrammen vereinfacht.
Demnach lösen die Unterschiedsmerkmale die „objektive Aufgabe“, eine effiziente Software-Architektur für das Zusammenspiel der Software-Komponenten, nämlich für die Verknüpfung von Eingabeverfahren und Anwendungsprogrammen vorzuschlagen, welche die ggf. auch nachträgliche Einbindung unterschiedlicher Eingabeverfahren ohne aufwändige Programmänderungen ermöglicht. (Dass die beanspruchte Lösung gegenüber StdT2 „ressourcenschonend“ wäre, lässt sich hingegen nicht feststellen, da auch bei der Betriebssystem-Lösung gemäß StdT2 eine Mehrfachprogrammierung nicht erforderlich ist.).
Das Vorsehen einer effizienten Software-Architektur stellt aber nicht schon notwendigerweise eine technische Aufgabe dar, und die Lösung erfolgt auch nicht notwendigerweise mit „technischen Mitteln“. Um - wie im vorliegenden Fall - Programme so zu strukturieren, dass die Einbindung unterschiedlicher Routinen einer bestimmten Kategorie (hier: Eingabeverfahren) ohne aufwändige Programmänderungen möglich wird, werden lediglich Kenntnisse über gängige Programmiertechniken und Konzepte zum Aufruf und zur Einbindung („plug-in“) von Unterprogrammen oder Programmbibliotheken benötigt. Diese Kenntnisse sind allein dem Bereich der Informatik und Computer-Programmierung zuzurechnen. Dass irgendwelche „auf technischen Überlegungen beruhenden Erkenntnisse“ (vgl. BGH GRUR 2000, 498 - Logikverifikation) den Unterschiedsmerkmalen zugrundelägen, ist nicht erkennbar. Vielmehr ist die Modellierung einer einheitlichen Software-Schnittstelle mit ihren Methoden und Parametern, an deren Vorgaben sich alle Eingabeverfahren halten müssen, eine reine Software-Maßnahme. Irgendein technisches Fachwissen ist hierfür nicht erforderlich, weil etwa spezielle technische Merkmale der verwendeten Computer oder die Frage des (technischen) Zusammenwirkens der Computerbestandteile in die erforderlichen Überlegungen nicht einfließen.
Daher sind die Unterschiedsmerkmale des Patentanspruchs 23 gegenüber dem nächstkommenden Stand der Technik bei der Beurteilung der erfinderischen Tätigkeit von der Berücksichtigung ausgeschlossen.
(ii) Vergleichbares gilt auch für den Patentanspruch 1. Dieser sieht eine „Verwaltungskomponente“ (M 1.2) vor in Gestalt eines Programmes, welches mit der definierten Schnittstellengruppe verbunden werden kann (M 1.2.1) und sich von den Anwendungsprogrammen unterscheidet (M 1.2.2), und welches die Datenverbindung zwischen Eingabeverfahren und Anwendungsprogrammen betreibt (entsprechend den Merkmalen M 1.2.3 bis M 1.2.7).
Hierdurch wird ebenfalls die o. g. „objektive Aufgabe“ gelöst, eine effiziente Software-Architektur vorzuschlagen, welche die Einbindung unterschiedlicher Eingabeverfahren ohne aufwändige Programmänderungen ermöglicht. Wie zuvor liegt damit aber keine technische Problemlösung vor. Vielmehr erfordert das Vorsehen einer Verwaltungskomponente zwischen Eingabeverfahren und Anwendungsprogrammen lediglich Kenntnisse, welche allein dem Bereich der Computer-Programmierung zuzurechnen sind; technisches Fachwissen wird nicht benötigt, auf technischen Überlegungen beruhende Erkenntnisse liegen nicht zugrunde; auch hier fließen spezielle technische Merkmale der verwendeten Computer oder die Frage des (technischen) Zusammenwirkens der Computerbestandteile in die erforderlichen Überlegungen nicht ein.
Damit sind auch die Unterschiedsmerkmale des Patentanspruchs 1 gegenüber dem nächstkommenden Stand der Technik bei der Beurteilung der erfinderischen Tätigkeit von der Berücksichtigung ausgeschlossen.
2.3 Die dagegen gerichtete Argumentation der Beklagten vermochte nicht zu überzeugen.
2.3.1 In Erwiderung auf den „Hinweis des Senats“ vom 27. Juni 2013 und entsprechende Ausführungen der Klägerin hat die Beklagte in der mündlichen Verhandlung einen Schriftsatz zum Thema „Technizität“ vorgelegt und ergänzend vorgetragen, dass der Ausschlusstatbestand für „Programme für Datenverarbeitungsanlagen - als solche“ gemäß EPÜ Art. 52 Abs. 2 Buchst. c / Abs. 3 für die Ansprüche des Streitpatents nicht vorliege.
Es kann indes dahinstehen, ob für die jeweilige Gesamtheit der Merkmale eines der geltenden Patentansprüche der Ausschlusstatbestand vorliegt, da diese Frage nicht entscheidungserheblich ist (vgl. oben 2.2.2).
2.3.2 Die „Aufgabe der Erfindung“, wie sie von der Beklagten verstanden wird, ist keine technische Aufgabe.
Die Beklagte sieht die der Erfindung zugrundeliegende „technische Aufgabe“ darin, ein a) flexibleres, und b) effizienteres Dateneingabeverfahren und -system bereitzustellen (siehe den o. g. Schriftsatz zum Thema „Technizität“, eingegangen in der mündlichen Verhandlung, Seite 2 Absatz 2). Dabei versteht sie den Begriff „flexibel“ als „an neue Anwendungen anpassbar“ in dem Sinne, dass neue Eingabeverfahren von allen Anwendungsprogrammen mit genutzt werden können, und „effizient“ als „ressourcenschonend“ im Sinne einer Vermeidung von Doppelprogrammierung (s. o. I.1: Überschneidungen), wenn das gleiche Eingabeverfahren von mehreren Anwendungsprogrammen genutzt werden sollte, aber jedes Anwendungsprogramm dafür eigene Eingaberoutinen mitbringen müsste.
(i) Im vorliegenden Fall war das Problem der Vermeidung einer Mehrfachprogrammierung im Falle der Betriebssystem-Lösung gemäß StdT2 schon erfolgreich gelöst. Es kann daher hier nicht Teil der „Aufgabe der Erfindung“ sein. Davon abgesehen, wendet sich das Problem der Vermeidung einer Mehrfachprogrammierung an den Programmierer und setzt Fachwissen über unterschiedliche Programmiermöglichkeiten voraus, jedoch kein technisches Fachwissen. Schon deshalb kann es sich nicht um eine „technische Aufgabe“ handeln.
(ii) Es verbleibt für die aus Sicht der Beklagten zugrundeliegende „Aufgabe der Erfindung“, dass ein flexibleres Dateneingabeverfahren bereitgestellt werden soll, so dass neue Eingabeverfahren von allen Anwendungsprogrammen mit genutzt werden können. Gegenüber StdT2 besteht die Leistung der Erfindung darin, dass hinzukommende Anwendungsprogramme bzw. neue Eingabeverfahren sich leichter miteinander verknüpfen oder einbinden lassen, weil der Programmierer nicht in das Betriebssystem eingreifen muss, sondern nur die von diesem bereits bereitgestellten Dienste für eine Applikationsentwicklung in Anspruch nimmt. Dem liegen aber keine technischen Überlegungen zugrunde, sondern das Konzept der Trennung von Betriebssystem und Anwendungsprogrammen und die Erkenntnis der mit dieser Software-Architektur verbundenen Vor- und Nachteile. Daher kann auch die hier genannte Aufgabe keine „technische Aufgabe“ sein.
(iii) In diesem Zusammenhang ist zu berücksichtigen, dass die Informatik nicht zu den „herkömmlichen Gebieten der Technik, also der Ingenieurwissenschaften, der Physik, der Chemie oder der Biologie“ (BGH GRUR 2002, 143 - Suche fehlerhafter Zeichenketten) gehört, und dass somit Lösungen, die aus dem Fachgebiet des Informatikers stammen, nicht allein deshalb bereits als „technische“ Lösungen zu verstehen sein können. Gerade der Vorschlag, dass man eine Software-Schnittstelle definieren solle (losgelöst von allen Überlegungen, die sich mit konkreten, vielleicht technischen Eigenschaften einer bestimmten Schnittstelle befassen), ist den rein geistigen Leistungen zuzurechnen und löst keine technische Aufgabe, sondern ein allgemeines Programmierproblem.
(iv) Als Begründung für das Vorliegen einer technischen Problemlösung reicht es auch nicht aus, wenn der Computer im Ergebnis schneller oder besser läuft (vgl. BGH, a. a. O. - Routenplanung -: „… Anweisungen dieses Inhalts können nach der bereits zitierten Rechtsprechung des Senats jedenfalls bei der Beurteilung der erfinderischen Tätigkeit nicht berücksichtigt werden … Dies gilt auch dann, wenn sie zu einer Verringerung der erforderlichen Rechenschritte führen“) oder BGH, a. a. O. - Webseitenanzeige -: „… Der Gehalt dieses Schritts erschöpft sich jedenfalls darin, bestimmte Operationen der Datenverarbeitung vom Client-Rechner auf den Server zu verlagern. Das ist nicht mehr als eine äußerlich-organisatorische Umverlagerung der Datenverarbeitung zwischen mehreren Netzwerkkomponenten. Selbst wenn diese mittelbar ermöglichen sollte, einfacher ausgestattete Computer einzusetzen, wäre darin nur eine Maßnahme der Datenverarbeitung zu sehen und nicht die Lösung eines konkreten technischen Problems“). Statt dessen kommt es, wie bereits betont, allein darauf an, ob technische Erkenntnisse der Lösung zugrundeliegen. Wenn dies der Fall ist, kann zweifellos auch ein als Computerprogramm realisiertes Arbeitsverfahren für einen Computer patentierbar sein.
Weil jedoch im vorliegenden Fall für die Lösung, eine einheitliche Schnittstellendefinition vorzusehen (Anspruch 23) oder ein Verwaltungsprogramm für die Verbindung zwischen Eingabeverfahren und Anwendungsprogrammen einzusetzen (Anspruch 1), keinerlei technische Erkenntnisse benötigt werden, sondern allein Überlegungen für eine geschickte Programmierung, kann die von der Beklagten genannte Aufgabe hier nicht als „technische“ Aufgabe anerkannt werden.
2.3.3 Die Beklagte macht ferner geltend, dass Dateneingabeverfahren sich systematisch von anderen Teilbereichen eines Computerbetriebes unterschieden und als Schnittstelle zwischen dem Menschen und der Maschine grundsätzlich technischen Charakter hätten (unter Bezug z. B. auf die Entscheidung der Beschwerdekammer des EPA T 125/04 Seite 9, Abschnitt 4.7: „…tasks involving the format of input data are less likely to lack technical character than those concerning mere data output and display, because the input requires compatibility with the predetermined protocol of a machine whereas the output may be largely dictated by the more or less subjective preferences of a human being“).
Konkret könne durch das beanspruchte System und Verfahren eine Hardwaretastatur durch eine virtuelle Tastatur auf einem berührungsempfindlichen Bildschirm ersetzt werden.
Diese Betrachtung hilft im vorliegenden Fall nicht weiter, da sich das Streitpatent gerade nicht konkret mit einer bestimmten Schnittstelle zwischen Mensch und Maschine und deren (möglicherweise technischen) Eigenschaften befasst; es fordert lediglich allgemein, dass die Schnittstellen verschiedener Eingabeverfahren einheitlich sein sollen, oder dass eine Verwaltungskomponente die Verbindung zwischen Eingabeverfahren und Anwendungsprogrammen herstellt. Insbesondere gibt das Streitpatent keine Lehre, wie eine Hardwaretastatur durch eine virtuelle Tastatur auf einem berührungsempfindlichen Bildschirm ersetzt werden könnte; es verlangt lediglich, dass eine Schnittstellendefinition oder eine Verwaltungskomponente verwendet werden soll, die sicherstellt, dass ohne besonderen Aufwand verschiedene Eingabeverfahren genutzt werden können.
Dass es ich dabei speziell um Eingabeverfahren handelt, ist für die beanspruchte Idee ohne Belang. Dieselbe Lehre der Austauschbarkeit durch eine einheitliche Schnittstellendefinition oder des Einsatzes einer Verwaltungskomponente könnte genauso gut für unterschiedliche Ausgabegeräte (Display, Sprachausgabe) oder unterschiedliche Speichergeräte (Festplatte, Diskette, USB-Stick) beansprucht werden; ein Einfluss irgendwelcher Besonderheiten der in Rede stehenden Eingabeverfahren auf die Idee der einheitlichen Schnittstelle oder der Verwendung einer Verwaltungskomponente lässt sich nicht erkennen, äußert sich insbesondere nicht in konkreten Merkmalen.
2.3.4 Schließlich vertritt die Beklagte die Auffassung, die beanspruchte Lösung betreffe das Betriebssystem des Rechners, also das unmittelbare Zusammenwirken seiner Elemente, und habe auch schon deshalb grundsätzlich technischen Charakter.
Dieser Sichtweise kann nicht beigetreten werden.
(i) Erhebliche Zweifel bestehen bereits gegenüber der Prämisse, einer Lehre solle allein deshalb technischer Charakter zukommen, weil sie das Betriebssystem eines Rechners betreffe. Vielmehr hält es der Senat für entscheidend, ob durch die Lehre ein konkretes technisches Problem mit technischen Mitteln gelöst wird.
(ii) Das gilt auch generell für das „unmittelbare Zusammenwirken“ von Elementen des Rechnersystems. Ein schnellerer Sortieralgorithmus wird nicht allein dadurch patentfähig, dass er beim unmittelbaren Zusammenwirken von Elementen eines Rechnersystems Anwendung findet.
(iii) Im vorliegenden Fall kommt es darauf schon deshalb nicht an, weil die beanspruchte Lösung keineswegs „das Betriebssystem“ betrifft.
Denn die Lehre nach Patentanspruch 1 geht von den beiden bekannten Lösungen gemäß StdT1 und StdT2 aus, mögliche Eingabeverfahren entweder im Anwendungsprogramm oder im Betriebssystem anzuordnen, und schlägt statt dessen einen dritten Lösungsweg in Form einer Verwaltungskomponente (SIP manager 58 – M 1.2) vor. Dass diese Verwaltungskomponente Teil des Betriebssystems sein müsste, lässt sich weder den Anspruchsmerkmalen noch der Beschreibung entnehmen. Im Gegenteil steht sie als Software-Weiche zwischen Betriebssystem und Anwendungsprogrammen.
Die Lehre nach Patentanspruch 23 verlangt nicht einmal diese Verwaltungskomponente, sondern ist i. w. darauf gerichtet, dass unterschiedliche Eingabeverfahren austauschbar sind und auf eine der beschriebenen Weisen für ein Anwendungsprogramm „ausgewählt“ werden. Auch hier stellt kein Merkmal einen zwingenden Zusammenhang zum Betriebssystem her.
Allein dass die Lehre des Streitpatents unterschiedliche Eingabeverfahren betrifft, qualifiziert sie nicht schon als Teil des Betriebssystems oder gar als „technische Problemlösung“.
(iv) Dass hier schließlich konkret das „unmittelbare Zusammenwirken“ der Elemente eines Rechnersystems betroffen sein könnte, tritt hinter der Frage zurück, ob der beanspruchten Lehre technische Erkenntnisse zugrundeliegen.
2.3.5 Im Weiteren hat die Beklagte auf die vom Bundesgerichtshof in seinen Entscheidungen „Webseitenanzeige“ und „Dynamische Dokumentengenerierung“ angegebenen Kriterien für das Vorliegen eines technischen Mittels zur Lösung eines technischen Problems verwiesen und macht geltend, diese lägen beim Streitpatent vor.
Gemäß der Entscheidung „Dynamische Dokumentengenerierung“ liegt „eine Lösung mit technischen Mitteln … nicht nur dann vor, wenn Systemkomponenten modifiziert oder in neuartiger Weise adressiert werden. Es reicht vielmehr aus, wenn der Ablauf eines Datenverarbeitungsprogramms, das zur Lösung des Problems eingesetzt wird, durch technische Gegebenheiten außerhalb der Datenverarbeitungsanlage bestimmt wird oder wenn die Lösung gerade darin besteht, ein Datenverarbeitungsprogramm so auszugestalten, dass es auf die technischen Gegebenheiten der Datenverarbeitungsanlage Rücksicht nimmt.“ Die Entscheidung „Webseitenanzeige“ geht von denselben Kriterien aus, siehe dort die Absätze 21 und 22.
(i) Nach dem Verständnis des Senats bezieht sich die Formulierung „Systemkomponenten modifiziert oder in neuartiger Weise adressiert“ aus Abs. 27 der Entscheidung „Dynamische Dokumentengenerierung“ genauer auf Gerätekomponenten, d. h. auf die Hardware des Computersystems. Das ergibt sich nicht zuletzt aus der Argumentation in den Absätzen 16 bis 18 der Entscheidung mit der Bezugnahme auf die vorangehenden BGH-Entscheidungen „Seitenpuffer“ und „Chinesische Schriftzeichen“. Die Ansprüche des Streitpatents sind jedoch nicht auf Hardware-Systemkomponenten gerichtet.
Davon abgesehen sollen nach der Lehre des Patentanspruchs 23 lediglich die Eingabeverfahren „austauschbar“ sein, so dass die Eingabeinformationen jedem aktiven Anwendungsprogramm „unabhängig vom gewählten Eingabeverfahren“ zugeführt werden können. Selbst wenn man die unterschiedlichen Eingabeverfahren als Systemkomponenten im Sinne der genannten BGH-Entscheidungen verstehen wollte - was der reine Wortlaut hergeben könnte - verlangt der Patentanspruch 23 keine „neuartige Adressierung“ oder prinzipielle „Modifikation“, sondern lediglich die Beachtung einer bestimmten (einheitlichen) Schnittstellendefinition.
Der Beklagten ist zuzugestehen, dass für die Verwirklichung der patentgemäßen Lehre eine Änderung der bestehenden Programme für die verschiedenen Eingabeverfahren erforderlich ist. Dass aber nicht jegliche Programmänderung gleich als die entscheidungsbegründende „Modifikation von Systemkomponenten“ verstanden werden kann, machen die vom Bundesgerichtshof entschiedenen Fälle deutlich, in denen das Vorliegen einer technischen Problemlösung verneint worden ist. So war beispielsweise in der Entscheidung „Webseitenanzeige“, Absatz 21 und Absatz 25, die Verlagerung der Registrierung eines Nutzers auf einen Server-Rechner (was u. U. den Einsatz schlichterer Client-Hardware ermöglichte, s. o. 2.3.2 iv) nicht als eine Modifikation von Gerätekomponenten oder eine grundsätzlich abweichende Adressierung eingeordnet worden, obwohl dafür ersichtlich eine deutliche Änderung der Programm-Module erfolgen muss.
(ii) Dass im vorliegenden Fall der Ablauf des beanspruchten Verfahrens oder der Aufbau des System „durch technische Gegebenheiten außerhalb der Datenverarbeitungsanlage bestimmt“ würde, lässt sich nicht feststellen und wurde auch nicht vorgetragen. Im gesamten Streitpatent findet sich nichts Beachtenswertes, was den Bereich außerhalb des zugrundeliegenden Computersystems beträfe.
(iii) Ebensowenig liegt der Fall vor, dass Streitpatent-gemäß ein Datenverarbeitungsprogramm so ausgestaltet würde, „dass es auf die technischen Gegebenheiten der Datenverarbeitungsanlage Rücksicht nimmt“. Denn gerade die technischen Gegebenheiten des beanspruchten Computersystems sind im Streitpatent nur ganz allgemein beschrieben (vgl. Figur 1 und zugehörige Beschreibung), ohne dass ihnen eine besondere Bedeutung beigemessen würde. Rücksicht genommen wird allenfalls darauf, dass weitere Eingabeverfahren eingebunden werden sollen. Dabei spielen deren individuelle technische Gegebenheiten jedoch keine Rolle.
2.3.6 Der Senat kann der Beklagten auch nicht darin zustimmen, dass eine erhebliche Abweichung von der Rechtsprechung des Europäischen Patentamts vorläge.
Denn auch die von der Beklagten angezogenen Entscheidungen der Beschwerdekammern des Europäischen Patentamts verlangen, dass durch die beanspruchte Lehre ein technisches Problem gelöst wird, und zwar ausdrücklich: gegenüber dem nächstliegenden Stand der Technik (siehe etwa EPA T 1741/08 Seite 7 / 8: „… that the subject-matter of a claim cannot be inventive if there is no technical contribution to the art, i.e. if there is no technical problem solved by the claimed subject-matter vis-à-vis the closest prior art”;. Vgl. auch die „Richtlinien für die Prüfung im Europäischen Patentamt“ (Sept. 2013), Teil G, Kapitel VII, Abschnitt 5.4, iii b).
Entscheidend ist im vorliegenden Fall allein die Frage, ob die beanspruchten Besonderheiten (Anspruch 1: Vorsehen einer Verwaltungskomponente zwischen Eingabeverfahren und Anwendungsprogrammen; Anspruch 23: einheitliche Schnittstellendefinition) tatsächlich die Lösung eines technischen Problems mit technischen Mitteln bestimmen oder zumindest beeinflussen, und insbesondere ob das Problem einer flexibleren Software-Struktur für die Einbindung unterschiedlicher Eingabeverfahren ohne aufwändige Programmänderungen hier als „technische Aufgabe“ zu werten ist.
Der Senat verneint dies aus den genannten Gründen. Dabei handelt es sich um eine tatrichterliche Beurteilung im Einzelfall aufgrund der vorliegenden Umstände, die sich einem Vergleich mit anders gearteten Fällen weitgehend entzieht.
3. Die Hilfsanträge sind nicht anders zu beurteilen.
3.1 Wie die Patentinhaberin erläutert, handelt es sich bei den neu eingereichten sieben Hilfsanträgen um unterschiedliche Zusammenstellungen von drei hinzukommenden Merkmalen (hier bezüglich des Anspruchs 23 zitiert):
Hilfsantrag 1: Ergänzung hinter Merkmal 23.1.3:
23.1.5 „wobei das Eingabeverfahren (64) dazu geeignet ist, Funktionen in einer Verwaltungskomponente (58) über die definierte Schnittstellengruppe aufzurufen, und wobei von der Verwaltungskomponente (58) Funktionen im Eingabeverfahren (64) über die definierte Schnittstellengruppe (61, 63) aufgerufen werden können;“
Dabei wurde - wie auch in allen folgenden Hilfsanträgen - der englische Begriff „calling“ aus Unteranspruch 8 hier mit „aufrufen“ (statt des in der deutschen Fassung der Patentansprüche des Streitpatents in Anspruch 8 verwendeten Begriffs „abrufen“) übersetzt.
Hilfsantrag 2: Ergänzungen vor Merkmal 23.3, sowie nach Merkmal 23.3.1
23.2x „Übergeben eines Rückrufschnittstellenzeigers an das gewählte Eingabeverfahren (64) über die definierte Schnittstellengruppe;“
23.3.2 „Senden der Informationen, die den eingegebenen Benutzerdaten entsprechen, an jedes aktive Anwendungsprogramm unter Verwendung des Rückrufschnittstellenzeigers.“
Hilfsantrag 4: Ergänzung hinter Merkmal 23.1.3
23.1.4 „wodurch das Eingabeverfahren (64) geladen und aufgerufen wird;“
Der jeweilige Patentanspruch 1 ist in vergleichbarer Weise eingeschränkt.
3.2 Die Klägerin sieht zumindest in den zusätzlichen Merkmalen der Hilfsanträge 1 und 2 neue unzulässige Erweiterungen und hält die Lehre für nicht ausführbar (siehe Triplik vom 31. Oktober 2013, Seite 17 ff.). Das kann aber dahingestellt bleiben, weil die Hilfsanträge aus anderem Grund keinen Erfolg haben.
3.3 Die zusätzlichen Merkmale der Hilfsanträge 1, 2 und 4 sind bei der Prüfung auf erfinderische Tätigkeit nicht zu berücksichtigen, weil auch sie nicht die Lösung eines technischen Problems mit technischen Mitteln bestimmen oder beeinflussen.
3.3.1 Gemäß Hilfsantrag 1 wird der Patentanspruch 23 durch das Merkmal M 23.1.5 ergänzt:
wobei das Eingabeverfahren (64) dazu geeignet ist, Funktionen in einer Verwaltungskomponente (58) über die definierte Schnittstellengruppe aufzurufen, und wobei von der Verwaltungskomponente (58) Funktionen im Eingabeverfahren (64) über die definierte Schnittstellengruppe (61, 63) aufgerufen werden können;
Hier ist zunächst festzustellen, dass dieser Ergänzung keine einschränkende Wirkung zukommt. Denn Programme wie ein programmiertes Eingabeverfahren oder eine Verwaltungskomponente sind nach dem Verständnis eines Programmierers immer „dazu geeignet“, Funktionen aufzurufen, oder „können“ dies tun.
Davon abgesehen wird hier für das „Verfahren zum Eingeben …“ gemäß Anspruch 23 die Möglichkeit der Nutzung einer Verwaltungskomponente eingeführt. Diese dient aber, wie bereits zum Patentanspruch 1 dargelegt (s. o. 2.2.3 insbes. Abschnitt (ii)), lediglich der einfacheren Verknüpfung von Eingabeverfahren und Anwendungsprogrammen, um die ggf. auch nachträgliche Einbindung unterschiedlicher Eingabeverfahren ohne aufwändige Programmänderungen, insbesondere ohne Änderung des Betriebssystems zu ermöglichen. Eine Lösung eines konkreten technischen Problems mit technischen Mitteln wird dadurch nicht erreicht.
3.3.2 Mit Hilfsantrag 2 werden in den Patentanspruch 23 an den genannten Stellen die Merkmale M 23.2x und M 23.3.2 eingefügt:
23.2x „Übergeben eines Rückrufschnittstellenzeigers an das gewählte Eingabeverfahren (64) über die definierte Schnittstellengruppe;“
23.3.2 „Senden der Informationen, die den eingegebenen Benutzerdaten entsprechen, an jedes aktive Anwendungsprogramm unter Verwendung des Rückrufschnittstellenzeigers.“
Hier wird als Programmierungslösung für die Daten-Verbindung zwischen Eingabeverfahren und Anwendungsprogrammen das Prinzip des „Rückrufschnittstellenzeigers“ (RegisterCallback Method, siehe insbes. Absätze [0063] und [0067] der Streitpatentschrift) eingeführt: Einem gewählten Eingabeverfahren wird ein Zeiger (Pointer) übergeben, welchen es benutzt, um eingegebene Benutzerdaten an aktive Anwendungsprogramme zu senden. Das ist nicht mehr als eine bestimmte Art der Programmierung, die unter das „Handwerkszeug“ des Programmierers fällt, ohne irgendeinen technischen Aspekt. Sie löst kein technisches Problem, sondern die Frage, wie die Schnittstelle zwischen Eingabeverfahren und Anwendungsprogrammen konkret programmiert werden könnte. Daher sind die beiden Merkmale bei der Prüfung auf erfinderische Tätigkeit nicht zu berücksichtigen.
3.3.3 Hilfsantrag 4 ist auf eine Ergänzung des Patentanspruch 23 durch das Merkmal M 23.1.4 gerichtet:
23.1.4 „wodurch das Eingabeverfahren (64) geladen und aufgerufen wird;“
Dieses bezieht sich auf das Merkmal M 23.1.3, wonach jedes Eingabeverfahren eine definierte Schnittstellengruppe hat, die wenigstens eine Schnittstelle enthält, die es ermöglicht, dass das Eingabeverfahren in einen anderen ausführbaren Softwarecode eingefügt werden kann. D. h. durch das „Einfügen“ in den Softwarecode des Anwendungsprogrammes (s. o. I. 6.3) wird das Eingabeverfahren geladen und aufgerufen.
Auch dieses ist eine Maßnahme aus dem „Handwerkszeug“ des Programmierers. Sie beschreibt allenfalls den Zeitpunkt, zu welchem der Programmcode des Eingabeverfahrens geladen wird. Im Übrigen stellt das Merkmal lediglich eine Klarstellung dar, die sich für den Fachmann bereits aus der erteilten Fassung des Patentanspruchs 23 ergibt (vgl. Merkmal M 23.2.1 „einschließlich des Einfügens“). Eine technische Lösung eines technischen Problems ist damit nicht verbunden.
3.4 Damit ergibt sich für den Patentanspruch 23 wie auch für den entsprechend beschränkten Patentanspruch 1 nach einem der Hilfsanträge 1, 2 und 4 keine andere Betrachtungsweise als nach Hauptantrag. Sie erweisen sich als nicht patentfähig, so dass jeweils der gesamte Hilfsantrag fällt.
3.5 Für die Hilfsanträge 3, 5, 6 und 7 gilt nichts anderes, da es sich bei ihnen lediglich um Zusammenstellungen („Kombinationen“) der genannten Merkmale handelt, die aber auch damit keine Lösung eines technischen Problems geben.
III.
Die Kostenentscheidung beruht auf § 84 Abs. 2 PatG i. V. m. § 91 Abs. 1 Satz 1 ZPO. Die Entscheidung über die vorläufige Vollstreckbarkeit folgt aus § 99 Abs. 1 PatG, § 709 Satz 1 und 2 ZPO.
IV.
Auf die angefügte Rechtsmittelbelehrung wird verwiesen.