1. PresentationML-Einführung

Die heutigen Office-Programme nähern sich in ihrer Funktionalität immer mehr an und die ehemals scharfen Grenzen verschwimmen. Tabellen sind inzwischen nicht mehr nur in Kalkulationsprogrammen zu finden, sondern auch in Präsentations- und Textverarbeitungsprogrammen. Ebenso verhält es sich mit Diagrammen, Textfeldern, typografisch gestalteten Texten – Gestaltungswerkzeuge, die ehemals nur einem bestimmten Office-Programm zuzuordnen waren, sind bereits in fast allen Office-Programmen zu finden. Das hat zur Folge, dass der Funktionsumfang eines einzelnen Programmes zunehmend wächst. Je umfangreicher die Funktionen werden, umso komplexer werden die Datenformate auf die diese Programme zugreifen. Die Problematik der Konvertierung, die dabei entsteht, existiert schon seit es verschiedene Datenformate für Office-Programme gibt, jedoch wird eine Konvertierung in andere Dateiformate durch die Komplexität der Formate immer aufwendiger.


Seit 1998 bietet nun die XML-Technologie mit einem völlig offenen Dateiformat die Möglichkeit, ohne weitere Software reine Daten (ohne Formatierungsanweisungen) lesen und editieren zu können. Immer mehr Softwareanbieter haben nun auch die Vorteile erkannt, die eine XML-Schnittstelle hat und so setzt XML seinen Siegeszug fort. Diese Welle hat inzwischen auch die gängigen Office-Lösungen erfasst. Microsoft ist hier eindeutiger Marktführer, sodass jahrelang die Formate des MS Office („.xls“, „.doc“, „.ppt“, etc.) als Standard galten, da sie sich allein durch die weite Verbreitung rechtfertigten. Inzwischen hat jedoch auch Microsoft eingesehen, dass nur Programme, die auch zu Konkurrenz-Programmen kompatible Formate ausgeben können, zukunftsfähig sind. Denn der digitale Austausch solcher Dateien nimmt vermehrt zu, jedoch kann ein Absender eines Dokumentes nicht erwarten, dass alle Empfänger die gleiche Software verwenden.


Deshalb gibt es seit Microsoft Office 2003 die Möglichkeit, WordprocessingML, kurz WordML (für Word), und SpreadsheetML (für Excel) auszugeben. Diese beiden Auszeichnungssprachen sind Spezifikationen von XML, wie beispielsweise XHTML, DocBook oder DITA, die offengelegt sind und von jedem Software-Hersteller vergleichsweise problemlos in andere XML-Formate konvertiert werden können. Da die Grammatik von XML (also beispielsweise Tag-Namen, erlaubte Attribute, etc.) frei wählbar ist, gibt es die Möglichkeit mit XML Schema oder DTDs, spezielle Regeln für die Grammatik eines XML-Dokumentes zu bestimmen. XML-Spezifikationen bzw. -Sprachen wie eben WordML und SpreadsheetML haben eine, durch ein Schema erzeugte, eigene Grammatik.


Nachdem Microsoft mit WordML und SpreadsheetML den ersten Schritt für ein offenes Format vollzogen hat, hat es nun für das Paket „Office 2007” ganz neue auf XML-basierende Datenformate für die Programme Word, Excel und jetzt auch PowerPoint entwickelt. Während in der Version 2003 die XML-Formate jedoch noch über ein extra Dateiformat ausgegeben werden (im Folgenden soll dies als „XML-Ausgabe“ bezeichnet werden) und man sich als Standard-Format weiterhin auf die alten proprietären Formate stützt, sind die neuen Datenformate auch gleichzeitig die Standardausgabe. Weiterhin bleibt die XML-Ausgabe erhalten, die sich strukturell von den neuen Standard-Formaten unterscheidet. Neben den von Word und Excel kommt nun auch eine für PowerPoint hinzu. Basis sowohl der XML-Ausgaben als auch der Standard-Formate sind die Auszeichnungssprachen WordprocessingML und SpreadsheetML sowie die neue Sprache PresentationML.

Tabelle 1: Übersicht der neuen Office-Formate

Programm Neue Format-Endung Alte Format-Endung Auszeichnungssprache
Microsoft Word DOCX DOC WordprocessingML
Microsoft Excel XLSX XLS SpreadsheetML
Microsoft PowerPoint PPTX PPT PresentationML

Zusätzlich wird für spezielle Gestaltungsmittel auf weitere XML-Auszeichnungssprachen zurückgegriffen. Beispielsweise werden dargestellte Formeln mit Office MathML dargestellt, Vektorgrafiken mit DrawingML. Möglich ist dies, weil XML-Sprachen auch miteinander kombiniert werden können. Zur Unterscheidung werden die Elemente unterschiedlichen Namensräumen zugewiesen. Ein Namensraum wird gewöhnlich mit einem Pseudo-Attribut im Wurzelelement des Dokumentes über einen URI definiert und einem Präfix zugeordnet. Mit diesem Präfix werden Elemente gekennzeichnet, die dem entsprechenden Namensraum zuzuordnen sind.

<d2t:wurzelelement xmlns:d2t=”http://www.data2type.de” xmlns:abc=“http://www.abc.de“> (1)
   <d2t:element1>                                    (2)
      <abc:element2/>                                (3)
      <abc:element3/>                                (3)
      <abc:element4/>                                (3)
   </d2t:element1>  
</d2t:wurzelelement>  
1 Im Wurzelelement sind die Namensräume "http://www.data2type.de" und "http://www.abc.de" den Präfixen d2t bzw. abc zugeordnet. Das Wurzelelement gehört dem d2t-Namensraum an. Definiert ist das über das Präfix d2t:. Die Zuordnung erfolgt über die Pseudo-Attribute xmlns:d2t bzw. xmlns:abc.
2 Das Element element1 gehört ebenfalls dem d2t-Namensraum an.
3 Diese Elemente gehören alle dem abc-Namensraum an.

Mit den neuen Formaten wurden nicht nur die Konvertierungsmöglichkeiten in Formate von Konkurrenz-Programmen verbessert, sondern auch die Integrationsfähigkeit der Programme für Inhalte aus den jeweils anderen Formaten erhöht. Diese Formate sind alle in der Formatspezifikation „Office Open XML“ (OOXML) festgehalten, die im Dezember 2006 von der Ecma International als „ECMA-376“ und im November 2008 von der ISO als „ISO/IEC-Norm 29500:2008“ standardisiert wurde.


Mit dem Ausblick, dass es das neue Format und der Standard OOXML ermöglichen könnte, PowerPoint-Folien mittels XSLT-Transformation vollautomatisch aus XML-Daten zu generieren, soll dieser Standard anhand der Auszeichnungssprachen PresentationML und – soweit nötig – DrawingML in dem folgenden praxisbegleitenden Literaturstudium beschrieben werden. Es muss jedoch berücksichtigt werden, dass der Standard auf über 60.000 Seiten beschrieben ist. Selbst eine kompaktere, vollständige Beschreibung würde folglich diesen Rahmen sprengen. Daher sollen nur die wichtigsten Elemente beschrieben werden.


PresentationML und DrawingML werden sowohl in dem Format „.PPTX“ verwendet, als auch in der expliziten XML-Ausgabe. Der bereits erwähnte strukturelle Unterschied liegt darin, dass die explizite XML-Ausgabe die Inhalte einer Präsentation in einer XML-Datei speichert, während PPTX-Dateien ZIP-komprimierte XML-Datensammlungen mit vorgegebener Struktur sind. Für eine XSLT-Transformation ist es weitaus komplexer, eine solche Struktur zu erzeugen, als eine einzelne XML-Datei, weshalb für das gewählte Ziel im Folgenden die Beschreibung der XML-Ausgabe Vorrang haben soll. Jedoch gibt es einen direkten Zusammenhang zwischen der XML-Ausgabe und dem PPTX-Container. Wie bereits erwähnt, ist die XML-Ausgabe von PowerPoint erst bei Office 2007 eingeführt worden. Sie ist daher im Gegensatz zu denen von Word und Excel stark an das PPTX-Format angepasst. Daher soll vorerst eine kurze Beschreibung der Struktur des PPTX-Containers als Basis für einen Vergleich mit der XML-Ausgabe folgen.

 

<< zurück zu PresentationML weiter zu 1.1 Der PPTX-Container >>
Tipp der data2type-Redaktion:
Zum Thema PresentationML bieten wir auch folgende Schulungen zur Vertiefung und professionellen Fortbildung an: