Historie

Die Bundesdruckerei produziert seit 1880 die amtlichen Publikationen für das Deutsche Patent- und Markenamt.

Mit der Anpassung des Patentgesetzes in 2004  reicht die elektronische Veröffentlichung der Urkunden aus, um die volle Schutzwirkung zu entfalten. Der Großteil der Manuskripte wird jedoch immer noch in Papierform eingereicht. Um daraus jede Woche ~2.000 amtliche und einheitliche Publikationen in den Formaten PDF/A und XML produzieren zu können, ist eine komplexe und stark spezialisierte Software-Lösung notwendig. Diese Software-Lösung PatProd wird seit 2006 durch die Moving Targets Consulting GmbH (mtc) betreut, weiterentwickelt und verbessert. PatProd ermöglicht

  • die hohen Anforderungen an die Qualität der Publikationen (Fehlerquote unter 0,05%) sicher zu stellen,
  • die Verarbeitung von Massendaten (bis zu 60.000 Manuskriptseiten pro Woche),
  • die ergonomische Bedienung durch 80 Mitarbeiter in der Bundesdruckerei (Erfasser, Qualitätssicherung, Produktionsleitung, Administration),
  • die termingerechte Fertigstellung der Publikationen jeder Woche.

Ist-Zustand

Ein Teil von PatProd sind die sogenannten Module für Satz-Vorbereitung und Satz:

  • Das Satz-Vorbereitungs-Modul (Pre-Satz) erzeugt je Publikation ein Master-XML-Dokument nach WIPO ST.36 aus dem später das amtliche PDF generiert wird. Dazu werden die verschiedenen Bestandteile der Publikation, wie Bibliografie, Zusammenfassung, Beschreibung, Ansprüche und Zeichnungen zusammengeführt:
    • Bibliografie aus dem ElSA PU-Lauf des DPMAs (XML)
    • per OCR aus den Manuskripten extrahierter Volltext (XML)
    • per Rahmung und Bildbearbeitung aus den Manuskripten extrahierte Zeichnungen (TIFF)
  • Das Satz-Modul erzeugt aus dem Master-XML-Dokument die finale Publikation im Format PDF/A. Dieses wurde bereits in 2011 komplett erneuert; die alte auf FrameMaker basierende Lösung wurde durch eine effizientere Neuimplementierung auf Basis von XSL-FO abgelöst.

Das Satz-Vorbereitungs-Modul war eines der ältesten Module in PatProd und wurde über die Jahre von verschiedenen Firmen weiterentwickelt. Zum Ende bestand das Satz-Vorbereitungs-Modul aus drei separaten Prozessen, die sequentiell hintereinander ausgeführt wurden und alle verschiedene Technologien verwendeten (C++, Java, XSL-T). Betrieb, Wartung, Fehlerbehebung und Weiterentwicklung waren dadurch zu komplex geworden. Es war an der Zeit, dieses Modul neu zu entwickeln.

Zudem mussten die Prozesse für Satz-Vorbereitung und Satz noch manuell durch Mitarbeiter angestoßen und überwacht werden und folgtem einem wochenorientierten Konzept. Das manuelle Anstoßen der Prozesse ist aus heutiger Sicht nicht mehr notwendig und verlangsamt die Verarbeitung unnötigerweise. Außerdem kam es stets zu Server-seitigen Lastspitzen, wenn Satz-Vorbereitung und Satz für eine gesamte Woche an einem bestimmten Wochentag ausgeführt wurden.

Ansatz

Die Ziele beim Redesign des Satz-Vorbereitungs-Modul waren:

  • Implementierung in einer Technologie
  • weg vom Wochen-orientierten Konzept hin zur Dokumenten-orientierten Verarbeitung
  • Bereitstellung des finalen PDFs wenige Sekunden nach Abschluss der XML-Korrektur zur Sichtkontrolle durch den Erfasser

Umsetzung

Der zentrale Produktions-Server basiert auf einer JEE-Softwarearchitektur für die transaktionsbasierte Ausführung der Web-Applikation PatProd.  Als Java-EE-Server wird der JBoss Application Server eingesetzt. Das neue Satz-Vorbereitungs-Modul wurde komplett in Java implementiert und ist Teil der JEE-Applikation PatProd.

Im Rahmen der Validierung der bibliografischen Eingangsdaten aus ElSA wurde bereits eine umfangreiche Konfiguration angelegt, die beschreibt, welche Datenelemente auf die 139 verschiedenen Typen von Titelseiten-Layouts zu übernehmen sind. Diese Konfiguration wurde per Reflexion jetzt wiederverwendet, um einen Daten-Record je Titelseite zusammen zu setzen, zu formatieren und zu überprüfen. Dieser Daten-Record wird anschließend per XStream in eine XML Datei gemäß WIPO ST.36 exportiert.

Bis zum finalen ST.36 Master-XML-Dokument werden noch weitere Schritte durch die Satz-Vorbereitung durchgeführt:

  • Zusammenführen der ST.36 Bibliografie mit ST.36 Volltext (Zusammenfassung, Beschreibung, Ansprüche) aus der Erfassung
  • Einfügen der zusätzlichen Seite mit der Zusammenstellung der Anmelderzitate enthalten in der Beschreibung ins ST.36 XML
  • Nachbehandlung des ST.36 XML, z.B.: Silbentrennungen entfernen, leere Elemente entfernen, Zeichnungen mit Metadaten anreichern
  • Validierung des ST.36 XML gegen die offizielle DTD des DPMAs

Nach erfolgreicher Validierung steht das ST.36 Master-XML-Dokument zur Verarbeitung durch das Satz-Modul bereit, welches aus dem Master-XML-Dokument die amtliche Publikation im Format PDF/A erzeugt.

Das Anstoßen der Prozesse für Satz-Vorbereitung und Satz erfolgte bisher manuell über die Oberfläche der Web-Applikation PatProd. Das ist jedoch nicht notwendig, da beide Prozesse vollständig automatisch ablaufen. Daher werden die einzelnen Dokumente nach Abschluss der Erfassung an einer Message Oriented Middleware (MOM) angemeldet und von dort durch die Module Satz-Vorbereitung und Satz asynchron abgearbeitet. Als MOM kommt der Java Message Service (JMS) zum Einsatz. JMS stellt die lose gekoppelte, verlässliche und asynchrone Kommunikation zwischen den einzelnen Modulen (Satz-Vorbereitung, Satz, Web-Applikation) der verteilten Anwendung PatProd sicher.

Nach Abarbeitung der Prozesse für Satz-Vorbereitung und Satz steht die amtliche Publikation im Format PDF/A zur Kontrolle bereit. Sollte es während der Verarbeitung zu einem Fehler gekommen sein oder wenn das Layout im PDF nicht optimal umgesetzt werden konnte (z.B. Einpassen der Hauptzeichnung auf der Titelseite), so erhält das Dokument einen Status zur manuellen Nachkontrolle in der Datenbank. Die Fehlerursache wird ebenso in einer Log-Datei für den Erfasser festgehalten, um Hinweise auf Fehlerposition und -ursache zu geben.

Vorteile

Durch das Redesign der Module für Satz-Vorbereitung und Satz konnten diese Vorteile für die Bundesdruckerei erreicht werden:

  • Schnellere Rückmeldung an die Erfassung: Die Trennung der Prozesse Erfassung / Satz-Vorbereitung / Satz ist aus technischer Sicht nicht notwendig. Satz-Vorbereitung und Satz sind vollkommen automatisierte Prozesse, die ohne Initiierung durch eine Person ablaufen können. Ein Dokument, das die Erfassung erfolgreich durchlaufen hat, kann anschließend automatisch von Satz-Vorbereitung und Satz verarbeitet werden. Ein manuelles Anstoßen dieser Prozesse über die Web-Applikation PatProd ist nicht notwendig. Der Erfasser kann das Ergebnis seiner Arbeit bereits nach wenigen Minuten im finalen PDF sehen und eventuell noch Korrekturen im XML vornehmen.
  • Verkürzung der Durchlaufzeit: Sobald alle Dokumente einer Publikationswoche erfasst sind, stehen bereits alle finalen PDF- und XML-Dateien bereit, und die restlichen Output-Formate können erzeugt werden. Für Satz-Vorbereitung und Satz ist keine weitere Zeit einzuplanen.
  • Weniger Support, einfachere Wartbarkeit: Durch den Redesign und die Umsetzung in nur einer Technologie (Java) wurde die Komplexität verringert und bereits existierender Source-Code konnte wiederverwendet werden (Reflexion). Das vereinfacht die Fehlersuche und beschleunigt die Support-Zeiten.