SlideShare a Scribd company logo
1 of 36
Download to read offline
10 Jahre Onkopedia
Rückblick und Zukunft
Andreas Jung/ZOPYX

info@zopyx.com

www.zopyx.com
Plone Tagung 2020

Dresden
1
ANDREAS JUNG
‣Diplom-Informatiker
‣Stationen: Saarbrücker Zeitung, Zope Corporation, Haufe-Lexware
‣Arbeitsgebiete
‣ Professionelle Publishing Lösungen mit XML unter der Haube
‣ Portal Projekte auf Basis Python und CMS Plone
‣ Kollaborative Content Erstellung
‣ Individualsoftware (mit Python)
‣Projekte
‣ XML-Director
‣ Produce & Publish
‣ content-gemeinsam-erstellen.de
‣ print-css.rocks
2
AGENDA
‣ Was ist Onkopedia?
‣ Bedeutung von Onkopedia
‣ Historie von Onkopedia
‣ Architektur von Onkopedia
‣ Aktuelle Entwicklungen
‣ App Entwicklung
‣ Ausblick und Zukunft
3
Was ist Onkopedia?
www.onkopedia.com
4
WAS IST ONKOPEDIA (1/2)?
‣ Leitlinienportal der Gesellschaft für Hämatologie und medizinische Onkologie (DGHO)
‣ Leitlinien repräsentieren den aktuellen Stand der Forschung und Entwicklung im
Bereich der evidenzbasierten Medizin
‣ unabhängig von der Pharma-Industrie
‣ Nutzer von Onkopedia
‣ behandelnde Mediziner
‣ Patienten
‣ Pflege Personal
‣ Krankenkassen und Kostenträger
‣ medizinischer Dienst
5
6
7
8
9
10
11
12
WAS IST ONKOPEDIA (2/2)?
13
‣ Nutzwert von Onkopedia
‣ Behandlungsleitlinien für Mediziner
‣ Information für Patienten - „der informierte Patient“
‣ Kosten-Nutzen Abwägung für Kostenträger
‣ hoher Bekanntheitsgrad von Onkopedia
‣ hohe Reputation von Onkopedia
‣ Autoren: ca. 500 führende Mediziner der Onkologie/Hämatologie
(DACH)
14Quelle: Prof. Dr. med. Bernhard Wöhrmann, DGHO/Charité
Historie von Onkopedia
15
ONKOPEDIA 1.0 (2010)
‣ Plone 3.X basiert
‣ Konvertierung Word/DOC nach HTML
via Open-Office/PyUNO
‣ überschaubare Anzahl von Dokumenten
‣ Konvertierungsprozess stabil, bei Detailfragen fragil
16
ONKOPEDIA 2.0 (2011)
‣ Plone 3.X basiert
‣ Produce & Publish Authoring Environment
‣ Archetypus-basierte Ablage aller Quelldokumente
und konvertierten Dokumente/Assets
‣ konzipiert als eierlegende Wollmilchsau zur Lösung
aller Publishing Probleme
17
allmähliche Implosion durch steigende Anforderungen 

und wachsende Anzahl von Dokumenten
ONKOPEDIA 3.0 (2015)
‣ Umstellung auf einen DOCX-XML Workflow
‣ XML und konvertierte Dokumente sind an jeder Stelle des
Prozesses validierbar
‣ Verlustfreie Konvertierung von DOCX nach XML und zurück
‣ Umstellung auf Plone 4.0 als Frontend
‣ Entwicklung von XML-Director
‣ Speicherung der Daten in XML Datenbank eXist-DB
‣ Konvertierung XML/PDF durch externe REST Services
‣ neue Anforderungen: neue Dokumentenbereiche, mehr Dokumente,
Verlinkung zwischen Dokumenten u.v.a.m.
18
NEUE ARCHITEKTUR/WORKFLOW
19
Dateisystem
ONKOPEDIA 4.0 (2019)
‣ Migration auf Plone 5.2 und Python 3.7
‣ Komplettes Redesign und responsive Layout
‣ Native Apps für iOS und Android mit Offline Support
‣ viele kleine funktionale Verbesserungen
‣ Arzneimittelbereich massiv
wachsend
20
Internas
21
SINGLE-SOURCE MULTI-CHANNEL PUBLISHING
22
DOCX XML
HTML
PDF
HTML/

ZIP
Verlustfreie Konvertierung von
DOCX nach XML 

und zurück
DATENSPEICHERUNG
23
html/index.html

xml/index.xml

src/index.docx

images/svg/…

images/png/…

pdf/index.pdf

report/report.html

report/report.xml

images.json

metadata.json
Dokument
‣ Version 1+2: ZODB, ATFile, ATImage…
‣ Version 3: XML Datenbank eXist-DB via
xmldirector.plonecore
‣ Version 4: Dateisystem via
xmldirector.connector
‣ xmldirector.plonecore/xmldirector.connector:
‣ abstrahierter Zugriff auf Persistenz-Layer via pyfilesystem
‣ Zugriff auf diverse Storage Optionen
DATENSPEICHERUNG
24
Onkopedia Apps
25
AUSBLICK ONKOPEDIA 5.0 (2020)
‣ Onkopedia als Content Provider
‣ Drittverwendung von Inhalten in fremden Produkten
und Systemen:
‣ Patientenpfade
‣ Studienergebnisse
‣ Facesheets
‣ Attributierung von Kapiteln, Tabellen, Grafiken mit
zusätzlichen Stammdaten zur selektiven Erschliessung
und Extraktion von Teilinhalten
‣ neue Suche, neue Filterfunktionalität (Plone Suche 🚮)
26
AUSGANGSBASIS FÜR APPS
‣ bis 2019 kein responsives Theme
‣ dedizierte Site für Mobile mit abgespeckter Funktionalität
‣ eine App muß her!
‣ Phase 1: Zugriff auf Onkopedia Leitlinien
‣ Phase 2: Vollzugriff auf alle Inhalte
‣ Offline-Fähigkeit (WLAN-freie Zonen in Krankenhäusern)
‣ Subscription von Inhalten nach Themengebieten
27
UMSETZUNG APPS
‣ Apps:
‣ iOS und Android
‣ plattform-unabhängige
Entwicklung via Cordova
‣ native jQuery
‣ Zugriff über REST API
‣ entkoppelt von Plone
28
‣ REST BACKEND:
‣ entkoppelt von Plone
‣ Python 3, Sanic Webframework
‣ Export der Inhalte (HTML, CSS,
SVG, JSON) nach Themengebiet
und Ablage Bereich
‣ mehrere Exporte täglich
‣ extrem stabil und hochverfügbar
‣ Migration auf FastAPI
BACKEND APPS
29
Metadaten Export
Catalog „main“: catalog.json
onkopedia.json
onkopedia-p.json
ayapedia.json
<language>-<ablagebereich>-<themengebiet>.zip
<language>-<ablagebereich>-<themengebiet>.zip
Content Export
REST API/

Python/Sanic
PROBLEME UND LESSONS LEARNED
‣ Apps als eigenständige Reimplementierung des
Onkopedia UIs
‣ Welche Features und welche Änderungswünsche haben
Auswirkungen auf App und/oder Web?
‣ Abhängigkeit/Unabhängigkeit von Web und App Releases?
‣ Testing ähnlich aufwendig wie Web Tests
‣ Android Testing vs. iOS Testflight
(je Release muß durch Reviewprozess bei Apple)
‣ Probleme mit Onkopedia Subskription im Apple Reviewprozess
30
Responsive Theme
Umsetzung
31
REPONSIVE THEME UMSETZUNG
‣ klassisch: Plone 5.2, Bootstrap 3.4.1, Diazo
‣ Mischung aus alten und neuen Templates
‣ diverse angepasste Plone Templates (z3c.jbot)
‣ „making things fit“
‣ Anreicherung der Templates mit Bootstrap CSS Klassen
‣ HTML passend machen mit Diazo Rules und/oder jQuery
32
NIE WIEDER → HEADLESS
Zukunft von Onkopedia
33
AUSBLICK ONKOPEDIA 5.0 (2020)
‣ technische Planung
‣ mehr client-seitige Funktionalitäten via REST API
‣ Code Sharing zwischen App und Web Version?
‣ Verwendung standardisierter Terminologien
und Systematiken aus der Medizininformatik
34
PROJEKT TEAM
35
Fragen?
www.zopyx.com

Andreas Jung <info@zopyx.com>
36

More Related Content

Similar to Onkopedia - Plone Tagung 2020 Dresden

XML Director - the technical foundation of onkopedia.com
XML Director - the technical foundation of onkopedia.comXML Director - the technical foundation of onkopedia.com
XML Director - the technical foundation of onkopedia.comAndreas Jung
 
MT AG Rapid Application Development mit APEX 5 (Important: latest version on ...
MT AG Rapid Application Development mit APEX 5 (Important: latest version on ...MT AG Rapid Application Development mit APEX 5 (Important: latest version on ...
MT AG Rapid Application Development mit APEX 5 (Important: latest version on ...Niels de Bruijn
 
VIVO Use Case Dresden #VIVODE15 9.9.2015
VIVO Use Case Dresden #VIVODE15 9.9.2015VIVO Use Case Dresden #VIVODE15 9.9.2015
VIVO Use Case Dresden #VIVODE15 9.9.2015Felix Lohmeier
 
Linked Data Service (LINDAS): Status quo of the linked data life-cycle and le...
Linked Data Service (LINDAS): Status quo of the linked data life-cycle and le...Linked Data Service (LINDAS): Status quo of the linked data life-cycle and le...
Linked Data Service (LINDAS): Status quo of the linked data life-cycle and le...AI4BD GmbH
 
Linked Open Data Pilotprojekt Österreich - LOD Pilot AT
Linked Open Data Pilotprojekt Österreich - LOD Pilot ATLinked Open Data Pilotprojekt Österreich - LOD Pilot AT
Linked Open Data Pilotprojekt Österreich - LOD Pilot ATMartin Kaltenböck
 
Anwendungsmodernisierung mit Oracle Application Express (APEX)
Anwendungsmodernisierung mit Oracle Application Express (APEX)Anwendungsmodernisierung mit Oracle Application Express (APEX)
Anwendungsmodernisierung mit Oracle Application Express (APEX)Niels de Bruijn
 
Cloud Native Computing & DevOps
Cloud Native Computing & DevOpsCloud Native Computing & DevOps
Cloud Native Computing & DevOpsAarno Aukia
 
Cloud-Native experience mit einer Container-Plattform im eigenen Rechenzentrum
Cloud-Native experience mit einer Container-Plattform im eigenen RechenzentrumCloud-Native experience mit einer Container-Plattform im eigenen Rechenzentrum
Cloud-Native experience mit einer Container-Plattform im eigenen RechenzentrumTEC Campus
 
Top 10 Internet Trends 2007
Top 10 Internet Trends 2007Top 10 Internet Trends 2007
Top 10 Internet Trends 2007Jürg Stuker
 
Mobile Development mit ASP.NET MVC 4
Mobile Development mit ASP.NET MVC 4Mobile Development mit ASP.NET MVC 4
Mobile Development mit ASP.NET MVC 4Digicomp Academy AG
 
openTRANS - XML Standard für den elektronischen Geschäftsverkehr
openTRANS - XML Standard für den elektronischen GeschäftsverkehropenTRANS - XML Standard für den elektronischen Geschäftsverkehr
openTRANS - XML Standard für den elektronischen GeschäftsverkehrNico Weiner
 
Li So G Osci
Li So G OsciLi So G Osci
Li So G OsciCloudcamp
 
SplunkLive! Frankfurt 2019: Splunk at Generali Insurance
SplunkLive! Frankfurt 2019: Splunk at Generali Insurance SplunkLive! Frankfurt 2019: Splunk at Generali Insurance
SplunkLive! Frankfurt 2019: Splunk at Generali Insurance Splunk
 
OKLab Leipzig (2019 Update)
OKLab Leipzig (2019 Update)OKLab Leipzig (2019 Update)
OKLab Leipzig (2019 Update)joergreichert
 
Linked Open Data Pilot Österreich - Beta Launch
Linked Open Data Pilot Österreich - Beta LaunchLinked Open Data Pilot Österreich - Beta Launch
Linked Open Data Pilot Österreich - Beta LaunchMartin Kaltenböck
 
Informationsbudget — Hintergrund und Konzept
Informationsbudget — Hintergrund und KonzeptInformationsbudget — Hintergrund und Konzept
Informationsbudget — Hintergrund und KonzeptHeinz Pampel
 
Grosse Projekte in der Wissenschaft am Beispiel von NextGEOSS
Grosse Projekte in der Wissenschaft am Beispiel von NextGEOSSGrosse Projekte in der Wissenschaft am Beispiel von NextGEOSS
Grosse Projekte in der Wissenschaft am Beispiel von NextGEOSSWolfgang Ksoll
 
Die Strategische Bedeutung Von Open Source FüR Das 3 D Internet V2
Die Strategische Bedeutung Von Open Source FüR Das 3 D Internet V2Die Strategische Bedeutung Von Open Source FüR Das 3 D Internet V2
Die Strategische Bedeutung Von Open Source FüR Das 3 D Internet V2Andreas Mertens
 

Similar to Onkopedia - Plone Tagung 2020 Dresden (20)

XML Director - the technical foundation of onkopedia.com
XML Director - the technical foundation of onkopedia.comXML Director - the technical foundation of onkopedia.com
XML Director - the technical foundation of onkopedia.com
 
MT AG Rapid Application Development mit APEX 5 (Important: latest version on ...
MT AG Rapid Application Development mit APEX 5 (Important: latest version on ...MT AG Rapid Application Development mit APEX 5 (Important: latest version on ...
MT AG Rapid Application Development mit APEX 5 (Important: latest version on ...
 
VIVO Use Case Dresden #VIVODE15 9.9.2015
VIVO Use Case Dresden #VIVODE15 9.9.2015VIVO Use Case Dresden #VIVODE15 9.9.2015
VIVO Use Case Dresden #VIVODE15 9.9.2015
 
Linked Data Service (LINDAS): Status quo of the linked data life-cycle and le...
Linked Data Service (LINDAS): Status quo of the linked data life-cycle and le...Linked Data Service (LINDAS): Status quo of the linked data life-cycle and le...
Linked Data Service (LINDAS): Status quo of the linked data life-cycle and le...
 
Linked Open Data Pilotprojekt Österreich - LOD Pilot AT
Linked Open Data Pilotprojekt Österreich - LOD Pilot ATLinked Open Data Pilotprojekt Österreich - LOD Pilot AT
Linked Open Data Pilotprojekt Österreich - LOD Pilot AT
 
Anwendungsmodernisierung mit Oracle Application Express (APEX)
Anwendungsmodernisierung mit Oracle Application Express (APEX)Anwendungsmodernisierung mit Oracle Application Express (APEX)
Anwendungsmodernisierung mit Oracle Application Express (APEX)
 
Cloud Native Computing & DevOps
Cloud Native Computing & DevOpsCloud Native Computing & DevOps
Cloud Native Computing & DevOps
 
Cloud-Native experience mit einer Container-Plattform im eigenen Rechenzentrum
Cloud-Native experience mit einer Container-Plattform im eigenen RechenzentrumCloud-Native experience mit einer Container-Plattform im eigenen Rechenzentrum
Cloud-Native experience mit einer Container-Plattform im eigenen Rechenzentrum
 
Top 10 Internet Trends 2007
Top 10 Internet Trends 2007Top 10 Internet Trends 2007
Top 10 Internet Trends 2007
 
Mobile Development mit ASP.NET MVC 4
Mobile Development mit ASP.NET MVC 4Mobile Development mit ASP.NET MVC 4
Mobile Development mit ASP.NET MVC 4
 
openTRANS - XML Standard für den elektronischen Geschäftsverkehr
openTRANS - XML Standard für den elektronischen GeschäftsverkehropenTRANS - XML Standard für den elektronischen Geschäftsverkehr
openTRANS - XML Standard für den elektronischen Geschäftsverkehr
 
Li So G Osci
Li So G OsciLi So G Osci
Li So G Osci
 
SplunkLive! Frankfurt 2019: Splunk at Generali Insurance
SplunkLive! Frankfurt 2019: Splunk at Generali Insurance SplunkLive! Frankfurt 2019: Splunk at Generali Insurance
SplunkLive! Frankfurt 2019: Splunk at Generali Insurance
 
OKLab Leipzig (2019 Update)
OKLab Leipzig (2019 Update)OKLab Leipzig (2019 Update)
OKLab Leipzig (2019 Update)
 
TYPO3 Neos in der Praxis
TYPO3 Neos in der PraxisTYPO3 Neos in der Praxis
TYPO3 Neos in der Praxis
 
Linked Open Data Pilot Österreich - Beta Launch
Linked Open Data Pilot Österreich - Beta LaunchLinked Open Data Pilot Österreich - Beta Launch
Linked Open Data Pilot Österreich - Beta Launch
 
Informationsbudget — Hintergrund und Konzept
Informationsbudget — Hintergrund und KonzeptInformationsbudget — Hintergrund und Konzept
Informationsbudget — Hintergrund und Konzept
 
Grosse Projekte in der Wissenschaft am Beispiel von NextGEOSS
Grosse Projekte in der Wissenschaft am Beispiel von NextGEOSSGrosse Projekte in der Wissenschaft am Beispiel von NextGEOSS
Grosse Projekte in der Wissenschaft am Beispiel von NextGEOSS
 
CKAN by Friedrich Lindenberg
CKAN by Friedrich LindenbergCKAN by Friedrich Lindenberg
CKAN by Friedrich Lindenberg
 
Die Strategische Bedeutung Von Open Source FüR Das 3 D Internet V2
Die Strategische Bedeutung Von Open Source FüR Das 3 D Internet V2Die Strategische Bedeutung Von Open Source FüR Das 3 D Internet V2
Die Strategische Bedeutung Von Open Source FüR Das 3 D Internet V2
 

More from Andreas Jung

State of PrintCSS - MarkupUK 2023.pdf
State of PrintCSS - MarkupUK 2023.pdfState of PrintCSS - MarkupUK 2023.pdf
State of PrintCSS - MarkupUK 2023.pdfAndreas Jung
 
Typesense Plone Integration Plone Conference 2022 Namur
Typesense Plone Integration Plone Conference 2022 NamurTypesense Plone Integration Plone Conference 2022 Namur
Typesense Plone Integration Plone Conference 2022 NamurAndreas Jung
 
PrintCSS W3C workshop at XMLPrague 2020
PrintCSS W3C workshop at XMLPrague 2020PrintCSS W3C workshop at XMLPrague 2020
PrintCSS W3C workshop at XMLPrague 2020Andreas Jung
 
PrintCSS workshop XMLPrague 2020
PrintCSS workshop XMLPrague 2020PrintCSS workshop XMLPrague 2020
PrintCSS workshop XMLPrague 2020Andreas Jung
 
Plone 5.2 migration at University Ghent, Belgium
Plone 5.2 migration at University Ghent, BelgiumPlone 5.2 migration at University Ghent, Belgium
Plone 5.2 migration at University Ghent, BelgiumAndreas Jung
 
Plone migrations using plone.restapi
Plone migrations using plone.restapiPlone migrations using plone.restapi
Plone migrations using plone.restapiAndreas Jung
 
Plone Migrationen mit Plone REST API
Plone Migrationen mit Plone REST APIPlone Migrationen mit Plone REST API
Plone Migrationen mit Plone REST APIAndreas Jung
 
Plone im Einsatz bei der Universität des Saarländes als Shop-System und Gefah...
Plone im Einsatz bei der Universität des Saarländes als Shop-System und Gefah...Plone im Einsatz bei der Universität des Saarländes als Shop-System und Gefah...
Plone im Einsatz bei der Universität des Saarländes als Shop-System und Gefah...Andreas Jung
 
Creating Content Together - Plone Integration with SMASHDOCs
Creating Content Together - Plone Integration with SMASHDOCsCreating Content Together - Plone Integration with SMASHDOCs
Creating Content Together - Plone Integration with SMASHDOCsAndreas Jung
 
Creating Content Together - Plone Integration with SMASHDOCs
Creating Content Together - Plone Integration with SMASHDOCsCreating Content Together - Plone Integration with SMASHDOCs
Creating Content Together - Plone Integration with SMASHDOCsAndreas Jung
 
The Plone and The Blockchain
The Plone and The BlockchainThe Plone and The Blockchain
The Plone and The BlockchainAndreas Jung
 
Content Gemeinsam Erstellen: Integration Plone mit SMASHDOCs
Content Gemeinsam Erstellen: Integration Plone mit SMASHDOCsContent Gemeinsam Erstellen: Integration Plone mit SMASHDOCs
Content Gemeinsam Erstellen: Integration Plone mit SMASHDOCsAndreas Jung
 
PDF Generierung mit XML/HTML und CSS - was die Tools können und was nicht.
PDF Generierung mit XML/HTML und CSS - was die Tools können und was nicht.PDF Generierung mit XML/HTML und CSS - was die Tools können und was nicht.
PDF Generierung mit XML/HTML und CSS - was die Tools können und was nicht.Andreas Jung
 
Why we love ArangoDB. The hunt for the right NosQL Database
Why we love ArangoDB. The hunt for the right NosQL DatabaseWhy we love ArangoDB. The hunt for the right NosQL Database
Why we love ArangoDB. The hunt for the right NosQL DatabaseAndreas Jung
 
Building bridges - Plone Conference 2015 Bucharest
Building bridges   - Plone Conference 2015 BucharestBuilding bridges   - Plone Conference 2015 Bucharest
Building bridges - Plone Conference 2015 BucharestAndreas Jung
 
Integration of Plone with eXist-db
Integration of Plone with eXist-dbIntegration of Plone with eXist-db
Integration of Plone with eXist-dbAndreas Jung
 
Plone Integration with eXist-db - Structured Content rocks
Plone Integration with eXist-db - Structured Content rocksPlone Integration with eXist-db - Structured Content rocks
Plone Integration with eXist-db - Structured Content rocksAndreas Jung
 
Why Plone Will Die
Why Plone Will DieWhy Plone Will Die
Why Plone Will DieAndreas Jung
 
zopyx.plone migration - Plone Hochschultagung 2013
zopyx.plone migration - Plone Hochschultagung 2013zopyx.plone migration - Plone Hochschultagung 2013
zopyx.plone migration - Plone Hochschultagung 2013Andreas Jung
 

More from Andreas Jung (20)

State of PrintCSS - MarkupUK 2023.pdf
State of PrintCSS - MarkupUK 2023.pdfState of PrintCSS - MarkupUK 2023.pdf
State of PrintCSS - MarkupUK 2023.pdf
 
Typesense Plone Integration Plone Conference 2022 Namur
Typesense Plone Integration Plone Conference 2022 NamurTypesense Plone Integration Plone Conference 2022 Namur
Typesense Plone Integration Plone Conference 2022 Namur
 
PrintCSS W3C workshop at XMLPrague 2020
PrintCSS W3C workshop at XMLPrague 2020PrintCSS W3C workshop at XMLPrague 2020
PrintCSS W3C workshop at XMLPrague 2020
 
PrintCSS workshop XMLPrague 2020
PrintCSS workshop XMLPrague 2020PrintCSS workshop XMLPrague 2020
PrintCSS workshop XMLPrague 2020
 
Plone 5.2 migration at University Ghent, Belgium
Plone 5.2 migration at University Ghent, BelgiumPlone 5.2 migration at University Ghent, Belgium
Plone 5.2 migration at University Ghent, Belgium
 
Plone migrations using plone.restapi
Plone migrations using plone.restapiPlone migrations using plone.restapi
Plone migrations using plone.restapi
 
Plone Migrationen mit Plone REST API
Plone Migrationen mit Plone REST APIPlone Migrationen mit Plone REST API
Plone Migrationen mit Plone REST API
 
Plone im Einsatz bei der Universität des Saarländes als Shop-System und Gefah...
Plone im Einsatz bei der Universität des Saarländes als Shop-System und Gefah...Plone im Einsatz bei der Universität des Saarländes als Shop-System und Gefah...
Plone im Einsatz bei der Universität des Saarländes als Shop-System und Gefah...
 
Creating Content Together - Plone Integration with SMASHDOCs
Creating Content Together - Plone Integration with SMASHDOCsCreating Content Together - Plone Integration with SMASHDOCs
Creating Content Together - Plone Integration with SMASHDOCs
 
Creating Content Together - Plone Integration with SMASHDOCs
Creating Content Together - Plone Integration with SMASHDOCsCreating Content Together - Plone Integration with SMASHDOCs
Creating Content Together - Plone Integration with SMASHDOCs
 
The Plone and The Blockchain
The Plone and The BlockchainThe Plone and The Blockchain
The Plone and The Blockchain
 
Content Gemeinsam Erstellen: Integration Plone mit SMASHDOCs
Content Gemeinsam Erstellen: Integration Plone mit SMASHDOCsContent Gemeinsam Erstellen: Integration Plone mit SMASHDOCs
Content Gemeinsam Erstellen: Integration Plone mit SMASHDOCs
 
PDF Generierung mit XML/HTML und CSS - was die Tools können und was nicht.
PDF Generierung mit XML/HTML und CSS - was die Tools können und was nicht.PDF Generierung mit XML/HTML und CSS - was die Tools können und was nicht.
PDF Generierung mit XML/HTML und CSS - was die Tools können und was nicht.
 
Why we love ArangoDB. The hunt for the right NosQL Database
Why we love ArangoDB. The hunt for the right NosQL DatabaseWhy we love ArangoDB. The hunt for the right NosQL Database
Why we love ArangoDB. The hunt for the right NosQL Database
 
PyFilesystem
PyFilesystemPyFilesystem
PyFilesystem
 
Building bridges - Plone Conference 2015 Bucharest
Building bridges   - Plone Conference 2015 BucharestBuilding bridges   - Plone Conference 2015 Bucharest
Building bridges - Plone Conference 2015 Bucharest
 
Integration of Plone with eXist-db
Integration of Plone with eXist-dbIntegration of Plone with eXist-db
Integration of Plone with eXist-db
 
Plone Integration with eXist-db - Structured Content rocks
Plone Integration with eXist-db - Structured Content rocksPlone Integration with eXist-db - Structured Content rocks
Plone Integration with eXist-db - Structured Content rocks
 
Why Plone Will Die
Why Plone Will DieWhy Plone Will Die
Why Plone Will Die
 
zopyx.plone migration - Plone Hochschultagung 2013
zopyx.plone migration - Plone Hochschultagung 2013zopyx.plone migration - Plone Hochschultagung 2013
zopyx.plone migration - Plone Hochschultagung 2013
 

Onkopedia - Plone Tagung 2020 Dresden

  • 1. 10 Jahre Onkopedia Rückblick und Zukunft Andreas Jung/ZOPYX info@zopyx.com www.zopyx.com Plone Tagung 2020
 Dresden 1
  • 2. ANDREAS JUNG ‣Diplom-Informatiker ‣Stationen: Saarbrücker Zeitung, Zope Corporation, Haufe-Lexware ‣Arbeitsgebiete ‣ Professionelle Publishing Lösungen mit XML unter der Haube ‣ Portal Projekte auf Basis Python und CMS Plone ‣ Kollaborative Content Erstellung ‣ Individualsoftware (mit Python) ‣Projekte ‣ XML-Director ‣ Produce & Publish ‣ content-gemeinsam-erstellen.de ‣ print-css.rocks 2
  • 3. AGENDA ‣ Was ist Onkopedia? ‣ Bedeutung von Onkopedia ‣ Historie von Onkopedia ‣ Architektur von Onkopedia ‣ Aktuelle Entwicklungen ‣ App Entwicklung ‣ Ausblick und Zukunft 3
  • 5. WAS IST ONKOPEDIA (1/2)? ‣ Leitlinienportal der Gesellschaft für Hämatologie und medizinische Onkologie (DGHO) ‣ Leitlinien repräsentieren den aktuellen Stand der Forschung und Entwicklung im Bereich der evidenzbasierten Medizin ‣ unabhängig von der Pharma-Industrie ‣ Nutzer von Onkopedia ‣ behandelnde Mediziner ‣ Patienten ‣ Pflege Personal ‣ Krankenkassen und Kostenträger ‣ medizinischer Dienst 5
  • 6. 6
  • 7. 7
  • 8. 8
  • 9. 9
  • 10. 10
  • 11. 11
  • 12. 12
  • 13. WAS IST ONKOPEDIA (2/2)? 13 ‣ Nutzwert von Onkopedia ‣ Behandlungsleitlinien für Mediziner ‣ Information für Patienten - „der informierte Patient“ ‣ Kosten-Nutzen Abwägung für Kostenträger ‣ hoher Bekanntheitsgrad von Onkopedia ‣ hohe Reputation von Onkopedia ‣ Autoren: ca. 500 führende Mediziner der Onkologie/Hämatologie (DACH)
  • 14. 14Quelle: Prof. Dr. med. Bernhard Wöhrmann, DGHO/Charité
  • 16. ONKOPEDIA 1.0 (2010) ‣ Plone 3.X basiert ‣ Konvertierung Word/DOC nach HTML via Open-Office/PyUNO ‣ überschaubare Anzahl von Dokumenten ‣ Konvertierungsprozess stabil, bei Detailfragen fragil 16
  • 17. ONKOPEDIA 2.0 (2011) ‣ Plone 3.X basiert ‣ Produce & Publish Authoring Environment ‣ Archetypus-basierte Ablage aller Quelldokumente und konvertierten Dokumente/Assets ‣ konzipiert als eierlegende Wollmilchsau zur Lösung aller Publishing Probleme 17 allmähliche Implosion durch steigende Anforderungen 
 und wachsende Anzahl von Dokumenten
  • 18. ONKOPEDIA 3.0 (2015) ‣ Umstellung auf einen DOCX-XML Workflow ‣ XML und konvertierte Dokumente sind an jeder Stelle des Prozesses validierbar ‣ Verlustfreie Konvertierung von DOCX nach XML und zurück ‣ Umstellung auf Plone 4.0 als Frontend ‣ Entwicklung von XML-Director ‣ Speicherung der Daten in XML Datenbank eXist-DB ‣ Konvertierung XML/PDF durch externe REST Services ‣ neue Anforderungen: neue Dokumentenbereiche, mehr Dokumente, Verlinkung zwischen Dokumenten u.v.a.m. 18
  • 20. ONKOPEDIA 4.0 (2019) ‣ Migration auf Plone 5.2 und Python 3.7 ‣ Komplettes Redesign und responsive Layout ‣ Native Apps für iOS und Android mit Offline Support ‣ viele kleine funktionale Verbesserungen ‣ Arzneimittelbereich massiv wachsend 20
  • 22. SINGLE-SOURCE MULTI-CHANNEL PUBLISHING 22 DOCX XML HTML PDF HTML/
 ZIP Verlustfreie Konvertierung von DOCX nach XML und zurück
  • 23. DATENSPEICHERUNG 23 html/index.html xml/index.xml src/index.docx images/svg/… images/png/… pdf/index.pdf report/report.html report/report.xml images.json metadata.json Dokument ‣ Version 1+2: ZODB, ATFile, ATImage… ‣ Version 3: XML Datenbank eXist-DB via xmldirector.plonecore ‣ Version 4: Dateisystem via xmldirector.connector ‣ xmldirector.plonecore/xmldirector.connector: ‣ abstrahierter Zugriff auf Persistenz-Layer via pyfilesystem ‣ Zugriff auf diverse Storage Optionen
  • 26. AUSBLICK ONKOPEDIA 5.0 (2020) ‣ Onkopedia als Content Provider ‣ Drittverwendung von Inhalten in fremden Produkten und Systemen: ‣ Patientenpfade ‣ Studienergebnisse ‣ Facesheets ‣ Attributierung von Kapiteln, Tabellen, Grafiken mit zusätzlichen Stammdaten zur selektiven Erschliessung und Extraktion von Teilinhalten ‣ neue Suche, neue Filterfunktionalität (Plone Suche 🚮) 26
  • 27. AUSGANGSBASIS FÜR APPS ‣ bis 2019 kein responsives Theme ‣ dedizierte Site für Mobile mit abgespeckter Funktionalität ‣ eine App muß her! ‣ Phase 1: Zugriff auf Onkopedia Leitlinien ‣ Phase 2: Vollzugriff auf alle Inhalte ‣ Offline-Fähigkeit (WLAN-freie Zonen in Krankenhäusern) ‣ Subscription von Inhalten nach Themengebieten 27
  • 28. UMSETZUNG APPS ‣ Apps: ‣ iOS und Android ‣ plattform-unabhängige Entwicklung via Cordova ‣ native jQuery ‣ Zugriff über REST API ‣ entkoppelt von Plone 28 ‣ REST BACKEND: ‣ entkoppelt von Plone ‣ Python 3, Sanic Webframework ‣ Export der Inhalte (HTML, CSS, SVG, JSON) nach Themengebiet und Ablage Bereich ‣ mehrere Exporte täglich ‣ extrem stabil und hochverfügbar ‣ Migration auf FastAPI
  • 29. BACKEND APPS 29 Metadaten Export Catalog „main“: catalog.json onkopedia.json onkopedia-p.json ayapedia.json <language>-<ablagebereich>-<themengebiet>.zip <language>-<ablagebereich>-<themengebiet>.zip Content Export REST API/
 Python/Sanic
  • 30. PROBLEME UND LESSONS LEARNED ‣ Apps als eigenständige Reimplementierung des Onkopedia UIs ‣ Welche Features und welche Änderungswünsche haben Auswirkungen auf App und/oder Web? ‣ Abhängigkeit/Unabhängigkeit von Web und App Releases? ‣ Testing ähnlich aufwendig wie Web Tests ‣ Android Testing vs. iOS Testflight (je Release muß durch Reviewprozess bei Apple) ‣ Probleme mit Onkopedia Subskription im Apple Reviewprozess 30
  • 32. REPONSIVE THEME UMSETZUNG ‣ klassisch: Plone 5.2, Bootstrap 3.4.1, Diazo ‣ Mischung aus alten und neuen Templates ‣ diverse angepasste Plone Templates (z3c.jbot) ‣ „making things fit“ ‣ Anreicherung der Templates mit Bootstrap CSS Klassen ‣ HTML passend machen mit Diazo Rules und/oder jQuery 32 NIE WIEDER → HEADLESS
  • 34. AUSBLICK ONKOPEDIA 5.0 (2020) ‣ technische Planung ‣ mehr client-seitige Funktionalitäten via REST API ‣ Code Sharing zwischen App und Web Version? ‣ Verwendung standardisierter Terminologien und Systematiken aus der Medizininformatik 34