Automatisierte Dokumentenproduktion mit Apache FOP

Ähnliche Dokumente
Dokumentenproduktion mit <XML/> & Co. Jeremias Märki <info@jeremias-maerki.ch>

Erstellen von PDF-Dokumenten für Business-Anwendungen mit XSL-FO

APEX und Apache FOP Freie PDF-Erstellung mit APEX 3.0.1

XSL-FO. Dienstag, 16. Mai Manuel Montero Pineda data2type GmbH

Vergleich automatisierbarer XML-Satzsysteme

TEI! Und dann? Texttechnologische Standards in den Geisteswissenschaften - Encoding in TEI <

Duale Zustellung. Standardprofile. Version 1.0.0, DI Arne Tauber

<XML/> Eine Technologie durchdringt die gesamte IT. Jeremias Märki

C O C O O N. Wo ist Cocoon in die Apache Projekte einzureihen?

Dirk Nachbar

XSL und XSLT. Inhalt. Mathias Heilig XSL Übersicht. Formatierungsprozess. Sprachbeschreibung. Vorführung Resümee

Transformation von RailML timetable Daten zu SVG mittels XSLT zur Darstellung von Zeit-Weg-Liniendiagrammen

Und was wird aus meinem Berichtswesen? <Speaker> Oracle Deutschland B.V. & Co. KG

DocBook für Anfänger

DOXNET Tag 24. November Datenströme und ihre Zukunft

Zukunft der Oracle Applikationsentwicklung: ADF & XDB

Dynamische Inhalte und Formate

X-Technologien. Ein Überblick. Ulrike Henny. IDE Summer School 2013, Chemnitz

<Insert Picture Here> Schnelle Anwendungen mit Oracle Application Express

XML mit Java OpenSource. (c) Mark Egloff 2004 FOP. << Apache s FOP >>

bitflux CMS ein crossmedia-fähiges opensource System ein Vortrag von Marcel Linnenfelser

Business Communication Architecture Blueprint

SVG für mobile Anwendungen und Dienste. 42. Sitzung der Arbeitsgruppe Automation in der Kartographie (AgA) am 12. und 13. September 2005 in Wien

Single Source Publishing mit XML

DocBook Textverarbeitung mit XML

Die Technologie der Mumie

BI Publisher Workshop

Konzept und Realisierung Extensible Stylesheet Language

Oracle XML Publisher - Überblick - Jürgen Vester Manager Sales Consulting Stuttgart Oracle Deutschland GmbH. Page 1

Dokumentautomation mit XML am Beispiel einer Banddiskografie

Druckvorlage mit XSL FO

XML Grundlagen Sommersemester 2013

doit Software-Forschungstag 2006 Standardisierte Auszeichnungssprachen der Computergraphik für interaktive Systeme Martin Rotard

Oracle XML Publisher

Anhang B. B.1 Webseiten für Entwickler. Anwendungen

APEX und Drucken Die Schöne und das Biest! Seite 1 von 61

Einführung in DocBook

Johannes Hentrich DITA. Der neue Standard für Technische Dokumentation VERLAG

Reporting Lösungen für APEX wähle Deine Waffen weise

XML Extensible Markup Language

Web-basierte Anwendungen: 08: Ergänzungen zum Projekt

XML basiertes Publizieren und Visualisieren

Content Management mit Teamcenter

Magglinger Rechtsinformatikseminar CHDecML. Eine Datenstruktur für Entscheide. Hubert Münst, Data Factory AG, 8057 Zürich

APEX und Drucken! - Die Schöne und das Biest!

Programmieren mit Edipse 3

ERWEITERUNG CONTAO INDEXIERUNG - SUCHE AUF OFFICE- UND PDF-DATEIEN

Transformieren und Formatieren

Dokumentation von Software

Architekturen. Von der DB basierten zur Multi-Tier Anwendung. DB/CRM (C) J.M.Joller

IntelliJ IDEA. Gliederung. Was ist IntelliJ IDEA? Lizenzmodell Warum IntelliJ einsetzen? IntelliJ und Eclipse Demo. Blick über den Eclipse-Tellerrand

BI Publisher Workshop

Releasenotes pv-clan Rel

Generierung von PDF-Dokumenten mittels XSL-FO

Willkommen. Projektidee. Informationsablage Docs Softwarelizenzen Meetingprotokolle

XML Werkzeug XML Spy. Frank Heininger Axel Labuschke

Jakarta Turbine Ein Open Source Framework fÿr Webanwendungen. KNF Kongre 2001 Henning P. Schmiedehausen

Ablösung von Control-M durch JobScheduler

Einführung in XSL-FO

mach,, Benjamin Kurtz, Bastian Bonnermann

Internet-basierendes Autorensystem zur Erschließung historischen Kulturguts. Thorsten Ludewig. Juni 2004

Mit XML-basierten Web-Standards zur Lernplattform im Projekt ITO

elml Flexibilität und Nachhaltigkeit dank XML

Rechtsverbindliches Publizieren in Österreich

XML und SOAP Einführung und Grundlagen

Google Gears Offline Web?

Onlinehilfe aus FrameMaker- Dokumenten was kommt nach WebWorks Publisher?

XML-basierte Multichannel- Produktion mit. beim Bundesanzeiger Verlag

Web Content Management Systeme

Content-Management- Systeme (CMS) Inhaltsverwaltungssystem, Redaktionssystem

CARL HANSER VERLAG. Dirk Ammelburger XML. Grundlagen der Sprache und Anwendungen in der Praxis

Einführung in XML Extensible Markup Language

Technische Dokumentation mit DocBook eine Einführung

ÖSTERREICH RECHNET MIT UNS. ER>B aus technischer Sicht Philip Helger, BRZ

XSL-FO PDF Marco Skulschus Marcus Wiederstein

V by WBR1/BFH-TI 2011 by MOU2/BFH-TI

XML - Extensible Markup Language. Agenda - Oracle XML DB

Konzept eines Datenbankprototypen Folie 1 Daniel Gander / Gerhard Schrotter

XPS - XML Paper Specification

Web (Site) Engineering (WebSE)

BI Publisher Beleggestaltung ganz einfach. Matthias Bergmann Senior Development Berater

Web Modeler W3L AG Ein webbasiertes Modellierungswerkzeugs mit integrierter Plugin-Architektur

Inhaltsverzeichnis. Teil 1 - XM L Einleitung Motivation...15

DCS für SAP R/ P r o d u k t i n f o r m a t i o n. Der professionelle Weg zur dynamischen Dokumentaufbereitung aus SAP-Anwendungen.

Übersicht über 1. Vorlesungsabschnitt Form und Darstellung von Informationen

tekom Frühjahrstagung 2014 in Augsburg Bestehende XML Dokumentation in modernen Browsern anzeigen Michael Brand, 10. April 2014

HTML5 Die neue Silver Bullet für die Verteilung technischer Information?

Web-basierte Anwendungen: 08: Ergänzungen zum Projekt

Content Management mit Open Source Beispiel: OpenCms

Prof. Dr. Gabriele Taentzer, Dr. Thorsten Arendt

Softwareentwicklung mit Enterprise JAVA Beans

X-Technologien. XML and Friends. Jörn Clausen 9. Juli 2001

Herzlich Willkommen! eine praxisnahe Übersicht. Mit Java ins Web - mb@bebox.franken.de (c) Michael Behrendt -

XML Extensible Markup Language

Kooperation & Nachnutzung der kopal- Lösung. Frank Klaproth

XSL Transformation. Eine praxisorientierte Einführung Philip Heck

XML-Verarbeitung. XPath XSL die extensible Stylesheet Language. Torsten Schaßan SCRIPTO Modul 4: EDV Wolfenbüttel

Übersicht. Web (Site) Engineering (WebSE) XML-Beispieldokument. Simple API for XML (SAX) [Pro] XML-Beispiel. Vorlesung 6: Tools und Programmierung

Transkript:

Automatisierte Dokumentenproduktion mit Apache FOP Jeremias Märki <info@jeremias-maerki.ch> OpenExpo 2008, Bern, 13. März 2008

Über mich Selbstständiger Software-Entwickler & Berater aus Luzern Hauptfokus auf Dokumentenproduktion und -handling Starker Fokus auf Open Source Software und offene Standards Mitglied der Apache Software Foundation (seit 2004) Mitarbeit an Apache FOP (seit 2000) Website: http://www.jeremias-maerki.ch/

Inhalt Was ist FOP? Was ist XSL-FO? Vor-/Nachteile, Tools Integrationsmöglichkeiten Anwendungsbeispiele Ausblick

Was ist FOP? FOP = Formatting Objects Processor Bekannteste Open Source Implementation von XSL-FO (W3C Standard) Ein Produkt des Apache XML Graphics Projekts Publiziert unter der Apache Lizenz 2.0 Entwickelt in Java, also lauffähig auf allen wichtigen Plattformen Gestartet im 1999 durch James Tauber

Was ist XSL-FO? XSL = extensible Stylesheet Language W3C Standard bestehend aus zwei Teilen: XSLT = XSL Transformations FO = Formatting Objects XML Dialekt Flow-orientierte Dokumentenlayout-Sprache 15. Oktober 2001: XSL 1.0 Recommendation 5. Dezember 2006: XSL 1.1 Recommendation

Typischer Workflow Data Source XML XSL-FO Generation Transformation (XSLT) XSLT Stylesheet Layout Target File Paper Printing

Hello World in XSL-FO <?xml version="1.0" encoding="utf-8"?> <fo:root xmlns:fo="http://www.w3.org/1999/xsl/format"> <fo:layout-master-set> <fo:simple-page-master master-name="a4" page-height="29.7cm" page-width="21cm" margin="2cm"> <fo:region-body/> </fo:simple-page-master> </fo:layout-master-set> <fo:page-sequence master-reference="a4"> <fo:flow flow-name="xsl-region-body"> <fo:block>hello World!</fo:block> </fo:flow> </fo:page-sequence> </fo:root>

Vor- und Nachteile von XSL-FO gegenüber proprietären Lösungen Vorteile Standard-basiert Versch. Tools verfügbar (kommerziell und Open Source) Austauschbarkeit der Tools mit weitgehendem Investitionsschutz Einfacher Know-How Einkauf Deckt eine grosse Bandbreite ab (Mengen, Dokumententypen) Nachteile Relativ CPU-intensiv Interoperabilitätsprobleme ähnlich wie bei HTML

Eignung von XSL-FO und FOP Einsatz Rechnungen, Policen, Briefe, Formulare etc. Listen, Auswertungen automatisiert erstellte, periodische Plakate, Flyer Dokumentationen, Manuals, Wissenschaftliche Texte, Semesterarbeiten etc. non-latin Scripts (Arabisch, Japanisch etc.) komplexe Layouts (Zeitung, Werbung) XSL-FO generell ++ Apache FOP ++ 0 ++ 0 ++ ++ + ++ - - -

Stylesheet-Erstellung "XSLT von Hand" XSL Editoren XSLFast (kommerziell, enthält Apache FOP) Metafocus DIGIFORMS Designer (kommerziell, enthält Apache FOP) Altova StyleVision 2008 (kommerziell, enthält Apache FOP) Assentis DocDesign (kommerziell) u.v.m.

Was bietet Apache FOP? Java-Implementation Java API Kommandozeilen-Client Ant-Task Implementiert ein Subset von XSL 1.1 http://xmlgraphics.apache.org/fop/compliance.html Erweiterbar über Plug-ins (Ausgabeformate, externe Resourcen, u.v.m) Detailierte Benutzerdokumentation Support via Mailing Liste: fop-users@xmlgraphics.apache.org

Ausgabeformate PDF (inkl. PDF/A-1b und PDF/X-3:2003) PostScript Bitmap (TIFF, PNG) Java2D/AWT, Print PCL AFP (MO:DCA) RTF (eingeschränkt) Text & XML

Externe Resourcen Bitmap Bilder (JPEG, PNG, TIFF etc.) SVG (mittels Apache Batik, OSS, ALv2) Barcodes (mittels Barcode4J, OSS, ALv2) MathML (mittels JEuclid, OSS, ALv2) EPS (nur für PostScript-Ausgabe) EMF (nur für RTF-Ausgabe) XMP Metadaten

Integrationsmöglichkeiten Batch- oder Ant-Scripts (off-line, langsam) Servlet Web Service HotFolder (FTP Upload) Direkte Einbindung bei Java Applikationen Asynchron über Message Queues Kompilierung als.net DLL (mit IKVM, mit Einschränkungen)

Szenario 1: PDF on-demand in den Browser PDF Web Applikation FOP Servlet XML Datenbank

Szenario 1a: Apache Cocoon als PDF Servlet Apache Cocoon ist ein mächtiges Web Framework mit starken XML-Fähigkeiten Enthält einen "FOP-Block" zur PDF-Erstellung. Integration von Daten aus verschiedenen Quellen (inkl. Datenbanken) Open Source, Apache License V2.0 http://cocoon.apache.org/

Szenario 2: DocBook, DITA etc. Offline Generierung von Büchern, Semesterarbeiten, Manuals Ausgangsformate: DocBook DITA Eigener XML Dialekt Automatisierung beispielsweise über Apache Ant Scripts

Szenario 3: Geschäftsdokumente Rechnungen, Lieferscheine, Versicherungspolicen, Briefe, Kontoauszüge, Formulare etc. Volumen: von einzelnen Dokumenten pro Tag (on-demand)......bis 20 Mio Dokumente pro Jahr (Batch) Server-Betrieb Anbindung: Web Service Hot Folder (FTP Upload) Medien-/Verpackungssteuerung (OMR, DataMatrix) Multi-Channel Fähigkeiten (Postweg, Mail, Fax etc.)

Beispiel: Patentdokumente bei Patentämtern Patentdokumente liegen als XML-Dokumente plus Bilder vor Weitgehend automatische Aufbereitung mit FOP Produktion von PDF/A für Langzeitarchivierung Grosses Augenmerk auf Metadaten So im Einsatz bzw. geplant bei: Eidg. Institut für Geistiges Eigentum, Bern Europäisches Patentamt, Wien

Hä? FOP 0.94? Nach fast 10 Jahren? Keine Berührungsängste wegen der Versionsnummer! FOP wird seit Jahren erfolgreich produktiv eingesetzt! Voraussetzungen für FOP 1.0: "Auto-Table-Layout" (autom. Spaltenbreiten) Verbesserungen bei "Keeps" Bessere Unterstützung für wechselnde Seitenbreiten

Ausblick Relativ kleines Projektteam Hype-Faktor ist weg. Lernkurve für die Entwicklung ist recht steil. Regelmässige Releases (ca. alle 6-8 Monate) FOP 1.0 hoffentlich noch dieses Jahr, aber ohne Garantie. Hilfe ist willkommen!

Weitere Infos Apache FOP Website http://xmlgraphics.apache.org/fop/ XSL 1.1 Spezifikation http://www.w3.org/tr/xsl11 Weitere Links, Produkte, Artikel, Buchtips http://www.xslfo.info/

Vielen Dank! Haben Sie Fragen?