Paragraphen in 18 W (pat) 66/14
Sortiert nach der Häufigkeit
Häufigkeit | Paragraph |
---|
Sortiert nach dem Alphabet
Häufigkeit | Paragraph |
---|
BUNDESPATENTGERICHT W (pat) 66/14 Verkündet am 2. September 2015
…
BESCHLUSS In der Beschwerdesache betreffend die Patentanmeldung 10 2005 026 256.2-53 …
hat der 18. Senat (Technischer Beschwerdesenat) des Bundespatentgerichts auf die mündliche Verhandlung vom 2. September 2015 durch die Vorsitzende Richterin Dipl.-Ing. Wickborn sowie den Richter Kruppa, die Richterin Dipl.-Phys. Dr. Otten-Dünnweber und den Richter Dipl.-Ing. Altvater BPatG 154 05.11 beschlossen:
-2Die Beschwerde wird zurückgewiesen.
Gründe I.
Die von der Anmelderin am 8. Juni 2005 beim Deutschen Patent- und Markenamt eingereichte Patentanmeldung 10 2005 026 256.2 mit der Bezeichnung
„Verfahren zum Durchführen des Datentransfers zwischen Programmelementen eines Prozesses, Puffer Objekt zum Durchführen des Datentransfers, sowie Drucksystem“
wurde durch die Prüfungsstelle für Klasse G 06 F des Deutschen Patent- und Markenamts mit Beschluss vom 14. Januar 2010 zurückgewiesen, weil die Gegenstände der (damals geltenden) Ansprüche 1 nach Haupt- und nach 1. bis 3. Hilfsantrag im Hinblick auf die im Prüfungsverfahren ermittelte Druckschrift D3: ROBBINS, K. A. u. a.: Unix Systems Programming. Prentice Hall, 2003, Seiten 549 - 551 nicht auf einer erfinderischen Tätigkeit auf technischem Gebiet beruhten.
Gegen diesen Beschluss richtet sich die Beschwerde der Anmelderin.
Mit Schriftsatz vom 16. Juli 2015 hat der Senat u. a. auf die folgenden Druckschriften hingewiesen:
D5: WO 01/40931 A2 und D6: US 2004/0263905 A1.
Die Beschwerdeführerin beantragt,
den Beschluss der Prüfungsstelle für Klasse G 06 F des Deutschen Patent- und Markenamts vom 14. Januar 2010 aufzuheben und das Patent auf der Grundlage der folgenden Unterlagen zu erteilen:
- Patentansprüche 1 - 16, eingereicht in der mündlichen Verhandlung, hilfsweise gemäß Hilfsantrag 1 (1. Hilfsantrag) Patentansprüche 1 - 14, eingereicht in der mündlichen Verhandlung, hilfsweise gemäß Hilfsantrag 2 (2. Hilfsantrag) Patentansprüche 1 und 2, eingereicht in der mündlichen Verhandlung,
- Beschreibung Seiten 1 - 4, 6 - 27, eingegangen am 8. Juni 2005, Seiten 5, 5a und 5b zu Hauptantrag und 1. Hilfsantrag, eingereicht in der mündlichen Verhandlung,
- Figuren 1 - 10, eingegangen am 23. August 2005.
Der seitens des Senats mit einer Gliederung versehene Patentanspruch 1 nach Hauptantrag lautet:
M0 „Verfahren zum Durchführen des Datentransfers zwischen Programmelementen eines Prozesses,
M1 wobei jeweils zwischen zwei Programmelementen ein Puffer-Objekt (5) vorgesehen wird, das einen Puffer und Steuermethoden aufweist,
M2 wobei eine Steuermethode des Puffer-Objektes eines der zugehörigen Programmelemente informiert, wenn der Puffer voll bzw. leer ist,
M3 wodurch dieses Programmelement mit dem Lesen der Daten aus dem Puffer bzw. mit dem Schreiben der Daten in den Puffer beginnt.“
Wegen des Wortlauts der nach Hauptantrag geltenden nebengeordneten Ansprüche 11, 12, 13 und 15 sowie der abhängigen Ansprüche 2 bis 10, 14 und 16 wird auf den Akteninhalt verwiesen.
Der geltende Patentanspruch 1 nach 1. Hilfsantrag entspricht dem Anspruch 1 nach Hauptantrag unter Hinzufügung der folgenden Merkmale:
M4 „wobei die Programmelemente Daten verarbeitende Objekte (4) sind, die im folgenden als DV-Objekte bezeichnet werden, und M5 die einzelnen DV-Objekte (4) Standardmethoden zum Lesen bzw. Schreiben von Daten aufweisen, die in den unterschiedlichen DVObjekten (4) jeweils den gleichen Namen bzw. die gleiche Kennzeichnung zum Aufruf derselben besitzen, und M6 das Informieren der DV-Objekte (4) durch die Puffer-Objekte (5) dadurch erfolgt, dass die Standardmethode zum Lesen bzw. die Standardmethode zum Schreiben von Daten in den DV-Objekten (4) aufgerufen wird.“
Wegen des Wortlauts der nach 1. Hilfsantrag geltenden nebengeordneten Ansprüche 9, 10, 11 und 13 sowie der abhängigen Ansprüche 2 bis 8, 12 und 14 wird auf den Akteninhalt verwiesen.
Der seitens des Senats mit einer Gliederung versehene geltende Anspruch 1 nach 2. Hilfsantrag lautet:
P0 „Verwendung eines Puffer-Objektes, das in einem Computer abgearbeitet wird und dabei den Datentransfer zwischen Programmelementen eines Prozesses durchführt, wobei das Puffer-Objekt P1 einen Speicherbereich, der als Puffer bezeichnet wird, in dem ein oder mehrere Puffer-Abschnitte speicherbar sind,
P2 einen weiteren Speicherbereich, der als Kontrollfeld bezeichnet wird, in dem Verwaltungsdaten für den Puffer speicherbar sind und P3 Steuermethoden aufweist, P4 wobei eine Steuermethode zum Aufrufen von Methoden zum Aufnehmen bzw. Abgeben von Daten in den Programmelementen des Prozesses aufruft, zwischen welchen der Datentransfer mittels des Puffers durchgeführt wird, M1* wobei jeweils zwischen zwei Programmelementen das Puffer-Objekt (5) vorgesehen wird und M2* eine der Steuermethoden des Puffer-Objektes eines der zugehörigen Programmelemente informiert, wenn der Puffer voll bzw. leer ist, M3 wodurch dieses Programmelement mit dem Lesen der Daten aus dem Puffer bzw. mit dem Schreiben der Daten in den Puffer beginnt, P5 um zwei Prozessteile zu einem einzigen Prozess zu verbinden, wobei die Ein- und Ausgabebefehle der Prozessteile auf das PufferObjekt umgeleitet werden, so dass der Datentransfer zwischen den einzelnen Prozessteilen vollständig über das Puffer-Objekt verläuft.“
Wegen des Wortlauts des nach 2. Hilfsantrag geltenden abhängigen Anspruchs 2 wird auf den Akteninhalt verwiesen.
Die Beschwerdeführerin macht hierzu geltend, dass die geltenden Ansprüche jeweils zulässig, die Gegenstände der geltenden Ansprüche dem Patentschutz zugänglich und im Lichte des im Verfahren befindlichen Stands der Technik neu und erfinderisch seien.
Wegen der weiteren Einzelheiten wird auf den Akteninhalt verwiesen.
II.
Die zulässige Beschwerde hat in der Sache keinen Erfolg. Denn die Gegenstände der jeweiligen Ansprüche 1 nach Hauptantrag sowie nach 1. und 2. Hilfsantrag beruhen nicht auf einer erfinderischen Tätigkeit. Die Fragen der Zulässigkeit der geltenden Ansprüche nach Hauptantrag und nach den Hilfsanträgen sowie der Neuheit der Anspruchsgegenstände können somit dahinstehen (vgl. BGH, Urteil vom 18. September 1990 – X ZR 29/89, GRUR 1991, 120, 121 li. Sp. Abs. 3 Elastische Bandage). Ebenso kann dahinstehen, ob die Gegenstände der geltenden unabhängigen Ansprüche dem Ausschlusstatbestand gemäß § 1 Abs. 3 Nr. 3 i. V. m. Abs. 4 PatG unterliegen.
1. Die Patentanmeldung betrifft u. a. ein Verfahren zum Durchführen des Datentransfers zwischen Programmelementen eines Prozesses, sowie ein PufferObjekt, das zum Ausführen des Verfahrens ausgebildet ist (vgl. Offenlegungsschrift, Abs. [0001]). Ein Computerprogramm bestehe normalerweise aus einem einzigen Prozess und jedem Prozess sei ein virtueller Speicherbereich zur Kommunikation innerhalb dieses Prozesses zugeordnet. Ein Prozess könne aus einem oder mehreren Programmabschnitten bzw. Threads bestehen, welche ein oder mehrere Objekte aufwiesen. Diese Objekte umfassten wiederum eine oder mehrere Methoden sowie entsprechende Felder oder Variablen. Es sei bekannt, mehrere Prozesse zu einer Prozesskette zu verknüpfen, wobei spezielle Kommunikationsprogramme verwendet würden, die die Kommunikation zwischen den einzelnen Prozessen steuerten. Diese Kommunikationsprogramme könnten zum Datentransfer innerhalb eines Computers oder eines Netzwerks ausgebildet sein (vgl. Offenlegungsschrift, Abs. [0002], [0004], [0005], [0007]).
Für einen mehrere Objekte umfassenden Programmabschnitt sei es auch bekannt, innerhalb des Programmabschnittes die Kommunikation zwischen den einzelnen Daten verarbeitenden Objekten (DV-Objekten) mittels Puffer auszuführen (vgl. Offenlegungsschrift, Abs. [0012]). Bekannte Steuerungen des Datentransfers zwischen DV-Objekten arbeiteten durch Aufrufen einer Steuermethode eines DVObjektes durch ein anderes DV-Objekt. Dabei müsse einem Objekt, das eine Methode eines weiteren Objektes aufruft, das weitere Objekt bekannt sein, was hieße, dass bei der Programmierung eines solchen Objektes bzw. dessen Klasse die entsprechenden Eigenschaften des weiteren Objektes zu berücksichtigen seien. Die Steuerung des Datentransfers über mehrere Objekte könne sehr komplex sein (vgl. Offenlegungsschrift, Absatz [0015] - [0017]).
Der Anmeldung liege dementsprechend die Aufgabe zugrunde, ein Verfahren zum Durchführen des Datentransfers zwischen Programmelementen eines Prozesses zu schaffen, was einfach ausgebildet ist, einen sicheren Datentransfer gewährleistet und eine flexible Veränderung von Prozessen, bzw. der darin enthaltenen Programmelemente bzw. Objekte zulässt, insbesondere soll ein sicheres Einfügen und Lösen von Objekten aus Prozessen erlaubt sein (vgl. Offenlegungsschrift, Abs. [0019] sowie geltende Beschreibung S. 5b, zw. Abs.).
Als Fachmann sieht der Senat vorliegend einen Ingenieur der Fachrichtung Informationstechnik an, der auf dem Gebiet der objektorientierten Programmierung über mehrere Jahre Berufserfahrung verfügt.
Die objektive Aufgabe liegt darin, den Ablauf eines Computerprogramms zu beschleunigen und Wartezeiten beim Ablauf eines Programmes zu verringern.
Die Aufgabe soll u. a. durch ein Verfahren mit den Merkmalen des Anspruchs 1 nach Haupt- und 1. Hilfsantrag gelöst werden, das den Datentransfer zwischen Programmelementen eines Prozesses durchführt, sowie nach 2. Hilfsantrag durch die Verwendung eines Puffer-Objekts, das in einem Computer abgearbeitet wird und dabei den Datentransfer zwischen Programmelementen eines Prozesses durchführt.
2. Einige der im jeweiligen Anspruch 1 nach Haupt- und 1. und 2. Hilfsantrag aufgeführten Merkmale bedürfen der Auslegung.
Unter einem Prozess wird in der Anmeldung ein Computerprogramm verstanden, welches ein oder mehrere Programmabschnitte bzw. Threads umfassen kann (vgl. Offenlegungsschrift, Abs. [0004]). Als Programmelement oder Programmabschnitt eines Prozesses (vgl. die Merkmale M0, P0, P4) wird entsprechend ein Teil eines Programms verstanden, wobei jeder Programmabschnitt ein oder mehrere Objekte im Sinne der objektorientierten Programmierung aufweist (vgl. Offenlegungsschrift, Abs. [0005], [0025] u. [0096]). Um zwischen den einzelnen Programmelementen oder Objekten eines Prozesses Daten zu transferieren, ist gemäß Merkmal M1 bzw. M1* jeweils zwischen zwei Programmelementen ein Puffer-Objekt vorgesehen, welches als eine Standard-Schnittstelle zwischen den Programmelementen fungiert und ein Objekt im Sinne der objektorientierten Programmierung oder eine einfache Programmeinheit darstellt, die das Vorliegen einer solchen einheitlichen Schnittstelle in mehreren Prozessen gewährleistet (vgl. Offenlegungsschrift, Abs. [0096]). Das Puffer-Objekt weist einen Puffer und Steuermethoden auf (Merkmale M1, M2, P1, P3). Als Puffer fungiert ein Speicherbereich (Merkmal P1), welcher als virtueller Speicherbereich ausgestaltet sein kann (vgl. Offenlegungsschrift, Abs. [0037] u. [0088]). Eine Steuermethode des Puffer-Objekts informiert das zugehörige lesende Programmelement, wenn der Speicherbereich voll ist, woraufhin das Programmelement mit dem Lesen beginnt; in einer OderVariante informiert die Steuermethode, wenn der Puffer leer ist, so dass mit dem Schreiben begonnen wird (Merkmale M2, M3, P4, M2*). Auf die Weise wird die Tätigkeit der einzelnen Programmabschnitte von dem Puffer-Objekt gesteuert (vgl. Offenlegungsschrift, Abs. [0090]).
In Anspruch 1 nach 1. Hilfsantrag werden die Programmelemente als Daten verarbeitende Objekte präzisiert (vgl. Merkmal M4), worunter sämtliche Programmelemente fallen, welche Daten lesen oder schreiben (vgl. Abs. [0037] der Offenlegungsschrift).
Das Puffer-Objekt soll gemäß 2. Hilfsantrag verwendet werden, um zwei Prozessteile zu einem einzigen Prozess zu verbinden, d. h. um zwei Programmabschnitte zu einem einzigen Programm zu verbinden (vgl. Merkmal P5 i. V. m. P0). Die Beschreibung der Anmeldung erläutert zu diesem Verbinden oder Verknüpfen von Prozessteilen, dass zwischen den Quellcodeeinheiten der einzelnen Prozessteile das Puffer-Objekt angeordnet wird und die Ein- und Ausgabebefehle auf das Puffer-Objekt umgeleitet werden können. Ein derart verknüpfter Quellcode werde dann gemeinsam zu einem einzigen Programm kompiliert, das als ein einziger Prozess ausgeführt werde (vgl. Offenlegungsschrift, Abs. [0042]). Alternativ könnten aber auch vorab fertig kompilierte Teilprozesse mit dem Puffer-Objekt zu einem einzigen Prozess verknüpft werden, was dynamisch erfolgen könne (vgl. Offenlegungsschrift, Abs. [0043] u. [0044]). Merkmal P5 ist daher so zu verstehen, dass sofern die Ein-/ Ausgabebefehle auf das Puffer-Objekt umgeleitet werden, dies bereits das aufgeführte Verbinden von zwei Prozessteilen zu einem einzigen Prozess bedingt. Diese Auslegung ist in Einklang mit dem Wortlaut des Anspruchs 1 nach 2. Hilfsantrag, wonach die Merkmale P0 bis M3 dazu dienen, wie in Merkmal P5 angegeben, „um zwei Prozessteile zu einem einzigen Prozess zu verbinden“. Der Datentransfer verläuft dabei vollständig über das Puffer-Objekt.
3. Das Verfahren des Anspruchs 1 nach Hauptantrag beruht nicht auf einer erfinderischen Tätigkeit gegenüber dem Stand der Technik gemäß Druckschrift D5 i. V. m. Druckschrift D6.
Druckschrift D5 offenbart ein Verfahren zum Durchführen des Datentransfers zwischen Programmelementen (Programmabschnitten) eines Prozesses (vgl. Fig. 1 u. 5, S. 4, Z. 34 - S. 5, Z. 4 / Merkmal M0). Die Steuerung des Datentransfers erfolgt mit einer Synchronisations-Puffer-Klasse, die dem jeweils daraus generierten Laufzeitobjekt entspricht, welches ein Puffer-Objekt im Sinne der vorliegenden Anmeldung darstellt, und welches einen Speicherbereich, d. h. einen Puffer, und Steuermethoden darstellende Puffer-Dienstprogramme aufweist (vgl. S. 9, zw. Abs.); ein solches Puffer-Objekt PU1, PU2 ist jeweils zwischen zwei Programmelementen P1, P2, P3 vorgesehen (vgl. Fig. 1 / Merkmal M1). Ob die Daten aus dem Puffer ausgelesen werden können, wird durch Verwaltungsdaten in Form von Flags festgelegt, welche jedem der ein oder mehreren Pufferabschnitte des Puffers zugeordnet sind (vgl. S. 9, Z. 20 - S. 10, Z. 25). Die Steuermethode informiert dabei, wenn alle Daten in den Speicherbereich geschrieben sind (vgl. S. 11, dr. Abs. / teilweise Merkmal M2, ohne die spezielle Angabe, dass der Puffer voll bzw. leer ist). Die Programmelemente beginnen in Abhängigkeit von dem gesetzten Flag mit dem Lesen bzw. Schreiben (vgl. Fig. 5 sowie zugehörige Beschreibung, S. 10, le. Abs. – S. 13, erster Abs. / Merkmal M3). Das Verfahren gemäß Anspruch 1 unterscheidet sich von dem in Druckschrift D5 beschriebenen Verfahren darin, dass dort ein Warteprogramm durchlaufen wird, das auf vorbestimmte Ereignisse der weiteren Puffer-Dienstprogramme, wie etwa das Freigeben von Puffer-Abschnitten, wartet (vgl. S. 5, dr. Abs.; sowie Warteprogramm, vgl. Fig. 6, 11a), während in der vorliegenden Anmeldung die Steuermethode des Puffer-Objekts die weiteren Programmelemente aktiv über einen gefüllten bzw. geleerten Puffer informiert.
Ausgehend von dem in Druckschrift D5 offenbarten Verfahren zum Durchführen des Datentransfers stellt sich dem Fachmann bei der Programmierung der Programmelemente eines Prozesses das Problem, dass die vorgesehenen Warteprogramme (vgl. Anspruch 11 und 12, Fig. 6, Warteprogramm S30) den Datentransfer ggf. verlangsamen, was insbesondere bei größeren Datenblöcken, die in den Puffer geschrieben werden sollen, auftreten wird. Der Fachmann erkennt ohne Weiteres, dass derartige Wartezustände für den Anwendungsfall einer Implementation des Verfahrens auf einem Computer mit mehreren parallel laufenden Prozessoren von Nutzen sein können, da während des Warte-Zustands eines Prozesses, der auf einem Prozessor abläuft, ein auf einem anderen Prozessor ablaufender Prozess ausgeführt werden kann. Wenn der Fachmann das aus Druckschrift D5 bekannte Verfahren jedoch für den in Druckschrift D5 bereits angespro- chenen Fall eines Computers mit nur einem einzigen Prozessor (vgl. D5, S. 26, Z. 37 - S. 27, Z.2) implementiert, liegt es für ihn auf der Hand, dass durch die vorgesehenen Warteprogramme das Verfahren unnötig verlangsamt wird. Der Fachmann wird daher im Stand der Technik nach Verfahren suchen, bei denen der Datentransfer zu und von einem Puffer effizienter ausgestaltet ist. Dabei stößt er auf Druckschrift D6 (vgl. D6, Abs. [0007], [0008]), die sich zudem wie die vorliegende Anmeldung (vgl. geltender Anspruch 15 nach Hauptantrag, Offenlegungsschrift, Abs. [0094]) mit Druckdaten verarbeitenden Vorrichtungen befasst (vgl. D6, Abstract).
Druckschrift D6 offenbart eine Druckdaten verarbeitende Vorrichtung (vgl. Titel und Abstract) und damit auch ein Verfahren zum Durchführen des Datentransfers zwischen verschiedenen Daten verarbeitenden Elementen (teilweise Merkmal M0, ohne dass speziell auf Programmelemente eines Prozesses abgestellt wird). Zwischen den verschiedenen Elementen (vgl. Fig. 2: receiving section 11, developing means 13) ist ein Puffer-Objekt vorgesehen, das einen Puffer (receiving buffer 20) und Steuermethoden entsprechende Verwaltungsfunktionen (receiving buffer management section 12) aufweist (vgl. Fig. 2, Abs. [0032] / teilweise Merkmal M1, ohne spezielle Angaben zu Programmelementen eines Prozesses). Die Steuermethode des Puffer-Objektes (d. h. dessen Verwaltungsfunktion) informiert verschiedene Daten verarbeitende Einheiten, wenn die Datenmenge in dem Puffer bestimmte Schwellwerte erreicht (vgl. Abs. [0032], le. Satz), d. h. die Steuermethode informiert die zugehörigen Daten verarbeitenden Elemente darüber, wenn der Puffer voll ist (teilweise Merkmal M2, ohne explizite Angabe von Programmelementen). Auf die Benachrichtigung hin beginnt eine HilfsspeicherSchreibe-Einheit 15 damit, die Daten aus dem Puffer auszulesen (vgl. Fig. 2 und Abs. [0034], zw. Satz; Abs. [0040], le. Satz), womit teilweise Merkmal M3 offenbart ist, ohne dass speziell ein Programmelement eines Prozesses genannt ist. Das in Druckschrift D6 offenbarte Verfahren unterscheidet sich somit von dem vorliegend beanspruchten Verfahren darin, dass als Elemente, zwischen denen der Datentransfer erfolgen soll, allgemein Kontrollelemente in einer Druckdaten verarbeitenden Vorrichtung genannt sind und nicht explizit Programmelemente eines Prozesses im Sinne eines Computerprogramms angegeben sind. Druckschrift D6 entnimmt der Fachmann einen Puffer mit einer zugehörigen Verwaltungsfunktion, der als Teil des Puffer-Objekts fungieren kann, welche einer Steuermethode gemäß der vorliegenden Anmeldung entspricht und welche die am Datentransfer beteiligten Prozesselemente (aktiv) informiert, wenn der Puffer voll bzw. leer ist. Ein solcher Puffer lässt sich bei dem aus Druckschrift D5 bekannten Verfahren zur angestrebten Verbesserung des Zeitverhaltens einsetzen.
Die Anmelderin hat ausgeführt, Druckschrift D6 gebe dem Fachmann keine Anregung, wie Daten zwischen virtuellen Speicherbereichen transferiert werden sollten, und das Verfahren betreffe auch nicht den Datentransfer zwischen Programmelementen eines einzigen Prozesses, weswegen eine Zusammenschau mit Druckschrift D5 nicht nahegelegt sei.
Dieser Argumentation kann der Senat nicht beitreten. Zum einen ist für das Verfahren nach Anspruch 1 nicht festgelegt, um welche Art von Speicher es sich bei dem Puffer handelt, so dass der Fachmann bei der Sichtung des Stands der Technik sowohl Verfahren berücksichtigen wird, welche als Hardware-Speicher eine Festplatte nutzen, wie auch Verfahren, bei denen es um die Programmierung von virtuellen Speichern geht. Zum anderen genügt es, dass sich dem Fachmann beim Studium der Druckschrift D6 ohne weiteres die Erkenntnis aufdrängt, dass ein Puffer mit einer Steuermethode, welcher die in den Puffer schreibenden und aus ihm lesenden Elemente aktiv informiert, zur Erhöhung der Effizienz beim Datentransfer zwischen Daten verarbeitenden Elementen von Vorteil ist.
Denn wendet der Fachmann diese Druckschrift D6 entnehmbare aktive Steuermethode für das aus Druckschrift D5 bekannte Verfahren an, das die Merkmale M0, M1 und M3 aufweist, so wird er die Steuermethode gemäß Merkmal M2 als eine aktive Steuermethode ausgestalten, welche die Puffer-Objekte des lesenden oder schreibenden Programmelements aktiv informiert. Der Fachmann gelangt so zu einem Verfahren mit sämtlichen Merkmalen des Anspruchs 1 nach Hauptantrag. Das Verfahren des Anspruchs 1 nach Hauptantrag ist für den Fachmann daher in Kenntnis von Druckschrift D5 i. V. m. Druckschrift D6 nahegelegt, so dass es nicht auf einer erfinderischen Tätigkeit beruht.
Der von der Anmelderin weiter gegenüber dem Stand der Technik vorgebrachte Vorteil, dass erst durch das anspruchsgemäße Pufferelement eine Verknüpfung von Prozessteilen zu einem einzigen Prozess ermöglicht werde, die eine gemeinsame Nutzung von Speicherressourcen ohne zusätzliche Verwendung von Betriebssystemfunktionen erlaube, kann aus dem vorliegenden Anspruch nicht abgeleitet werden. Denn nach Patentanspruch 1 handelt es sich bei den anspruchsgemäßen Programmelementen, zwischen denen jeweils ein Puffer-Objekt vorgesehen wird, bereits um Elemente eines Prozesses (vgl. Merkmale M0, M1). Eine andere Auslegung dieser Merkmale, nach der erst das Puffer-Objekt zur Verknüpfung verschiedener Prozesse zu einem einzigen Prozess führt, steht nicht im Einklang mit der Definition eines Prozesses in der Beschreibungseinleitung, nach der die Anmeldung vielmehr Datentransfers zwischen Programmelementen eines Prozesses betrifft (vgl. Offenlegungsschrift, Abs. [0001]) und wonach die Anmeldung von Computerprogrammen ausgeht, die in der Regel aus einem Prozess bestehen (ebd., Abs. [0004]). Die Frage unterschiedlicher virtueller Speicherbereiche beim Datentransfer zwischen Programmelementen (und der damit einhergehenden Verwendung von Betriebssystemfunktionen) stellt sich innerhalb eines einzigen Prozesses nicht.
Der Patentanspruch 1 nach Hauptantrag ist daher nicht patentfähig.
4. Auch die zusätzlich in Patentanspruch 1 nach 1. Hilfsantrag aufgenommenen Merkmale M4, M5 und M6 können eine erfinderische Tätigkeit nicht begründen.
Der Patentanspruch 1 nach 1. Hilfsantrag unterscheidet sich von Anspruch 1 nach Hauptantrag darin, dass die Programmelemente als Daten verarbeitende Objekte definiert sind (Merkmal M4) und die einzelnen Daten verarbeitenden Objekte Standardmethoden zum Lesen bzw. Schreiben von Daten mit gleichem Namen bzw. gleicher Kennzeichnung beim Aufruf aufweisen (Merkmal M5), wobei die Daten verarbeitenden Objekte durch die Puffer-Objekte informiert werden, indem die jeweilige Standardmethode zum Lesen oder Schreiben von Daten in den Daten verarbeitenden Objekten aufgerufen wird (Merkmal M6).
Auch bei dem aus Druckschrift D5 bekannten Verfahren sind die Programmelemente Daten verarbeitende Objekte im Sinne der Anmeldung (vgl. S. 4, Z. 37 S. 5, Z. 4: Erzeuger-Programmabschnitte, Lese-Programmabschnitte / Merkmal M4). Beispielhaft erläutert wird in Druckschrift D5, das Steuern des Lesens und Schreibens mittels einer Standard-Funktion auszuführen, welche den Zugriff steuert (vgl. S. 5, zw. Abs.). Die Steuerung des Datentransfers erfolgt mit einer einem Puffer-Objekt entsprechenden Synchronisations-Puffer-Klasse (vgl. S. 9, zw. Abs. und den dortigen Anspruch 17) bzw. dem jeweils daraus generierten Laufzeitobjekt. Da die Methoden der Synchronisations-Puffer-Klasse gemäß Druckschrift D5 zum Zugriff auf ein Puffer-Objekt durch verschiedene Programmabschnitte dienen (die bspw. in verschiedenen Prozessen oder auf verschiedenen Rechnern ablaufen können), handelt es sich hierbei zweifellos um „Standardmethoden“ im Sinne der vorliegenden Anmeldung, die einheitliche Schnittstellen bereitstellen, die in den unterschiedlichen Daten verarbeitenden Objekten jeweils den gleichen Namen zum Aufruf aufweisen (Merkmal M5). Für das sich aus einer Zusammenschau aus Druckschrift D5 und Druckschrift D6 ergebende Verfahren zum Durchführen des Datenverkehrs zwischen Daten verarbeitenden Objekten eines Prozesses ist es bei Rückgriff auf objektorientierte Programmierung naheliegend, das Informieren der Daten verarbeitenden Objekte durch Aufrufen von Standardmethoden zum Lesen oder Schreiben auszugestalten, denn der Fachmann greift wo möglich immer auf bereits vorliegende Standardmethoden zurück, da sie ihm die Programmierung erleichtern (Merkmal M6).
Das Argument der Anmelderin, dass die Kopplung über eine Standardmethode einen Unterschied zu dem in Druckschrift D6 offenbarten Verfahren ausmacht, kann nicht überzeugen. Druckschrift D5 offenbart – wie ausgeführt – ein Verfahren, das mit Hilfe von objektorientierter Programmierung realisiert wird und auf Klassen basiert. Der Fachmann hat bei der Implementierung des aus Druckschrift D5 bekannten Verfahrens unter Zuhilfenahme des aus Druckschrift D6 bekannten aktiven Informierens vorliegend keine Veranlassung, von der für eine solche Programmiertechnik üblichen Nutzung von Standardmethoden der jeweiligen Klasse abzuweichen, insbesondere da verschiedene Programmelemente – wie in Druckschrift D5 bereits offenbart – auf ein gemeinsames Puffer-Objekt zugreifen.
Das Verfahren des Anspruchs 1 nach 1. Hilfsantrag ist für den Fachmann daher ebenfalls in Kenntnis von Druckschrift D5 i. V. m. Druckschrift D6 nahegelegt, so dass es nicht auf einer erfinderischen Tätigkeit beruht.
Der Patentanspruch 1 nach 1. Hilfsantrag ist somit nicht patentfähig.
5. Der Gegenstand des Patentanspruchs 1 nach 2. Hilfsantrag beruht ebenfalls nicht auf einer erfinderischen Tätigkeit, da er sich für den Fachmann in naheliegender Weise aus dem Stand der Technik ergibt.
Der Patentanspruch 1 nach 2. Hilfsantrag ist auf die Verwendung eines PufferObjektes, das in einem Computer abgearbeitet wird und dabei den Datentransfer zwischen Programmelementen eines Prozesses durchführt, gerichtet (Merkmal P0). Gegenüber den Angaben in Anspruch 1 nach Hauptantrag ist ergänzt, dass das Puffer-Objekt einen als Puffer bezeichneten Speicherbereich mit einem oder mehreren Puffer-Abschnitten und einen als Kontrollfeld bezeichneten weiteren Speicherbereich, in dem Verwaltungsdaten für den Puffer speicherbar sind, sowie Steuermethoden aufweist (Merkmale P1, P2, P3). Eine Steuermethode dient zum Aufrufen von Methoden zum Aufnehmen bzw. Abgeben von Daten in den Programmelementen des Prozesses, zwischen welchen der Datentransfer durchgeführt wird (Merkmal P4). Als den wesentlichen Unterschied zum Hauptantrag hat die Anmelderin das letzte Merkmal des Anspruchs 1 herausgestellt, wonach das Puffer-Objekt verwendet wird, um zwei Prozessteile zu einem einzigen Prozess zu verbinden, wobei die Ein- und Ausgabebefehle der Prozessteile auf das PufferObjekt umgeleitet werden, so dass der Datentransfer zwischen den Prozessteilen vollständig über das Puffer-Objekt verläuft (Merkmal P5).
Im Patentanspruch 1 des 2. Hilfsantrags sind die Merkmale M1*, M2* und M3 inhaltsgleich mit den Merkmalen M1, M2 und M3 des Patentanspruchs 1 nach Hauptantrag, so dass hinsichtlich dieser Merkmale auf die Ausführungen unter Abschnitt II. 3. verwiesen wird.
Bei der Verwendung des in Druckschrift D5 offenbarten Puffer-Objektes (Synchronisations-Puffer-Klasse) ist die Abarbeitung in einem Computer vorgesehen, wobei der Datentransfer zwischen Programmabschnitten durchgeführt wird, bei denen es sich um Programmelemente eines Prozesses handelt (vgl. Fig. 13, 14; S. 4, Z. 33 - S. 5, Z. 8, i. V. m. S. 26, Z. 34 - S. 27, Z. 2 / Merkmal P0). Druckschrift D5 beschreibt auch einen als Puffer fungierenden Speicherbereich, in dem mehrere Puffer-Abschnitte und ein als Kontrollfeld fungierender weiterer Speicherbereich speicherbar sind, in welchem Verwaltungsdaten speicherbar sind (vgl. Fig. 3: Kontrollfeld, Pufferabschnitte 0 bis 7; vgl. S. 9, zw. Abs., S. 9, Z. 20 - 24 / Merkmale P1, P2). Das Puffer-Objekt weist als Steuermethoden fungierende PufferDienstprogramme (S3: GetToBufPntr, S12: GetFromBufPntr) auf, welche zum Aufrufen von Methoden zum Aufnehmen bzw. Abgeben von Daten in den Programm- abschnitten (d. h. den Programmelementen des Prozesses) dienen, zwischen welchen der Datentransfer erfolgt (vgl. D5, Fig. 1 u. 5: S13: Daten lesen, S4: Daten schreiben, S. 9, Z. 12 - 18, Patentanspruch 1, Schritte d und f, sowie Ansprüche 9 und 11 / Merkmale P3, P4).
Der in Druckschrift D5 beschriebene Datentransfer zwischen den einzelnen Prozessteilen (Programmabschnitte P0, P1, P3; Fig. 1) verläuft ebenfalls vollständig über das Puffer-Objekt PU (vgl. S. 29, dr. Abs., Fig. 1), da die Ein- und Ausgabebefehle der Prozessteile vollständig auf das Puffer-Objekt umgeleitet und durch dessen Methoden ausgeführt werden (vgl. Fig. 5, Blöcke S3, S5, S7, S12, S14 und zugehörige Schreib- bzw. Lesepfeile). Zudem gibt die Druckschrift dem Fachmann den Hinweis, dass dies der Verknüpfung von mehreren Prozessteilen (Programmabschnitten) zu einem einzigen Prozess im Sinne des Merkmals P5 dient (vgl. S. 26, zw. u. dr. Abs., insbesondere dr. Abs., zw. Satz).
Die Anmelderin hat in Bezug auf das vorstehend abgehandelte Merkmal P5 unter Verweis auf den Absatz [0089] der Offenlegungsschrift ausgeführt, das Verbinden von zwei Prozessteilen erfolge im Unterschied zum Stand der Technik ohne Zwischenschaltung weiterer Verwaltungsroutinen des Betriebssystems. Nach ständiger Rechtsprechung hat sich die Auslegung eines Patentanspruchs am Wortlaut des Anspruchs zu orientieren; Beschreibung und Zeichnungen sind zwar bei der Auslegung heranzuziehen, führen jedoch nicht zu einer Einengung oder Erweiterung desjenigen, was der Anspruch bei sinnvollem Verständnis lehrt (vgl. BGH, Urteil vom 7. September 2004, X ZR 255/01, BGHZ 160, 204, Amtlicher Leitsatz 1 und Abschnitt 4.a) – Bodenseitige Vereinzelungsvorrichtung; BGH, Urteil vom 12. Dezember 2006, X ZR 131/02, GRUR 2007, 309, Amtlicher Leitsatz a) – Schussfädentransport). Dem Anspruchswortlaut lässt sich nicht entnehmen, dass keine weiteren Verwaltungsroutinen zwischengeschaltet sind oder sein können. In Merkmal P3 wird ohne weitere Einschränkung beansprucht, dass das Puffer-Objekt „Steuermethoden“ aufweist und in den Merkmalen P4 und M2* werden zwei der Steuermethoden näher spezifiziert, nämlich, dass eine Steuerme- thode zum Aufrufen von Methoden zum Aufnehmen bzw. Abgeben von Daten dient und eine weitere darüber informiert, wenn der Puffer voll bzw. leer ist. Zudem stellt die von der Anmelderin genannte Textstelle (Offenlegungsschrift, Abs. [0089]) keinen Zusammenhang mit einem Betriebssystem her, sondern kann auch weitere „Verwaltungsroutinen“ umfassen wie bspw. das Warteprogamm einer Puffer-Klasse, wie es in Druckschrift D5 offenbart ist. Die Überwindung der bei Anwendung von Verwaltungsroutinen gemäß Druckschrift D5 resultierenden Nachteile im Zeitverhalten ergibt sich naheliegend – wie vorstehend zum Hauptantrag diskutiert – unter Berücksichtigung der Lehre der Druckschrift D6.
Demgemäß erlaubt der Wortlaut des Anspruchs 1 nach 2. Hilfsantrag nach Verständnis des Senats keine Aussage darüber, ob Daten zwischen einzelnen Daten verarbeitenden Objekten mit bzw. ohne Zwischenschaltung von Verwaltungsroutinen des Betriebssystems transferiert werden, da im vorliegenden Anspruch lediglich angegeben ist, dass die Verwendung des Puffer-Objekts erfolgt, um zwei Prozessteile zu einem einzigen Prozess zu verbinden, was bereits durch die weiteren in Merkmal P5 gemachten Angaben des Umleitens über das Puffer-Objekt erfüllt wird (vgl. Abschnitt II. 2.).
Auch die Verwendung eines Puffer-Objekts gemäß Anspruch 1 nach 2. Hilfsantrag ist für den Fachmann daher in Kenntnis von Druckschrift D5 i. V. m. Druckschrift D6 nahegelegt.
Der Patentanspruch 1 nach 2. Hilfsantrag ist daher nicht patentfähig.
6. Mit den jeweils nicht patentfähigen Ansprüchen 1 nach Hauptantrag und nach 1. und 2. Hilfsantrag sind auch die auf diese Ansprüche direkt oder indirekt rückbezogenen nebengeordneten Ansprüche und Unteransprüche nicht schutzfähig, da auf diese Ansprüche kein eigenständiges Patentbegehren gerichtet war
(vgl. BGH, Beschluss vom 27. Juni 2007, X ZB 6/05, GRUR 2007, 862, Abschnitt III. 3. a) aa) – Informationsübermittlungsverfahren II).
7. Nachdem die jeweiligen Anspruchssätze nach Hauptantrag bzw. nach 1. und 2. Hilfsantrag nicht patentfähig sind, war die Beschwerde zurückzuweisen.
III.
Rechtsmittelbelehrung Gegen diesen Beschluss steht den am Beschwerdeverfahren Beteiligten das Rechtsmittel der Rechtsbeschwerde zu. Da der Senat die Rechtsbeschwerde nicht zugelassen hat, ist sie nur statthaft, wenn gerügt wird, dass
1. das beschließende Gericht nicht vorschriftsmäßig besetzt war, 2. bei dem Beschluss ein Richter mitgewirkt hat, der von der Ausübung des Richteramtes kraft Gesetzes ausgeschlossen oder wegen Besorgnis der Befangenheit mit Erfolg abgelehnt war, 3. einem Beteiligten das rechtliche Gehör versagt war, 4. ein Beteiligter im Verfahren nicht nach Vorschrift des Gesetzes vertreten war, sofern er nicht der Führung des Verfahrens ausdrücklich oder stillschweigend zugestimmt hat, 5. der Beschluss aufgrund einer mündlichen Verhandlung ergangen ist, bei der die Vorschriften über die Öffentlichkeit des Verfahrens verletzt worden sind, oder 6. der Beschluss nicht mit Gründen versehen ist.
Die Rechtsbeschwerde ist innerhalb eines Monats nach Zustellung des Beschlusses beim Bundesgerichtshof, Herrenstr. 45 a, 76133 Karlsruhe, durch einen beim Bundesgerichtshof zugelassenen Rechtsanwalt als Bevollmächtigten schriftlich einzulegen.
Wickborn Kruppa Dr. Otten-Dünnweber Altvater Hu
Urheber dieses Dokuments ist das Bundespatentgericht. Nach § 5 UrhG geniessen Entscheidungen und Gesetze keinen urheberrechtlichen Schutz. Auflagen des Gerichts können aber die kommerzielle Verwertung einschränken. In Anlehnung an Creative Commons Lizenzen ist die Nutzung mit einer CC BY-NC-SA 3.0 DE Lizenz vergleichbar. Bitte beachten Sie, dass diese Entscheidung urheberrechtlich geschützte Abbildungen enthalten kann. Vor einer Nutzung - über die reine Wiedergabe der Entscheidung hinaus - sind in solchen Fällen entsprechende Nutzungsrechte bei den jeweiligen Rechteinhabern einzuholen.
Häufigkeit | Paragraph |
---|
Häufigkeit | Paragraph |
---|
Der nachfolgende Link führt Sie zum originalen Dokument. Aufgrund der technischen Natur des Internets ist es möglich, dass der Link zum jetzigen Zeitpunkt nicht mehr gültig ist. Bitte haben Sie dafür Verständnis, dass wir nicht alle Links einer ständigen Prüfung unterziehen können.
Öffnen