Informationen zum Open XML SDK 2.5 für OfficeAbout the Open XML SDK 2.5 for Office

Open XML ist ein offener Standard für Textverarbeitungsprogramm-Dokumente, Präsentationen und Tabellenkalkulationen, der von mehreren Anwendungen auf verschiedenen Plattformen frei implementiert werden kann. Open XML ist darauf ausgelegt, vorhandene Textverarbeitungsprogramm-Dokumente, Präsentationen und Tabellenkalkulationen, die in von Microsoft Office-Anwendungen definierten Binärformaten codiert sind, genau darzustellen. Der Grund für Open XML ist einfach: Es existieren nun Milliarden von Dokumenten, aber leider sind die Informationen in diesen Dokumenten eng mit den Programmen gekoppelt, in denen sie erstellt wurden. Der Zweck des Open XML-Standards besteht darin, von Microsoft Office-Anwendungen erstellte Dokumente zu entkoppeln, damit sie von anderen Anwendungen unabhängig von proprietären Formate und ohne Datenverlust bearbeitet werden können.Open XML is an open standard for word-processing documents, presentations, and spreadsheets that can be freely implemented by multiple applications on different platforms. Open XML is designed to faithfully represent existing word-processing documents, presentations, and spreadsheets that are encoded in binary formats defined by Microsoft Office applications. The reason for Open XML is simple: billions of documents now exist but, unfortunately, the information in those documents is tightly coupled with the programs that created them. The purpose of the Open XML standard is to de-couple documents created by Microsoft Office applications so that they can be manipulated by other applications independent of proprietary formats and without the loss of data.

Struktur eines Open XML-PaketsStructure of an Open XML Package

Eine Open XML-Datei wird in einem ZIP-Archiv zum Packen und Komprimieren gespeichert. Sie können die Struktur einer Open XML-Datei mithilfe eines ZIP-Viewers anzeigen. Ein Open XML-Dokument basiert auf mehreren Dokumentteilen. Die Beziehungen zwischen den Teilen selbst sind in Dokumentteilen gespeichert. Das ZIP-Format unterstützt zufälligen Zugriff auf die einzelnen Teile. Beispielsweise kann eine Folie von einer Anwendung aus einer Präsentation in eine andere Präsentation verschoben werden, ohne den Folieninhalt zu analysieren. Ebenso kann eine Anwendung alle Kommentare aus einem Dokument in einem Textverarbeitungsprogramm entfernen, ohne dessen Inhalt zu analysieren.An Open XML file is stored in a ZIP archive for packaging and compression. You can view the structure of any Open XML file using a ZIP viewer. An Open XML document is built of multiple document parts. The relationships between the parts are themselves stored in document parts. The ZIP format supports random access to each part. For example, an application can move a slide from one presentation to another presentation without parsing the slide content. Likewise, an application can strip all of the comments out of a word processing document without parsing any of its contents.

Die Dokumentteile in einem Open XML-Paket werden als XML-Markup erstellt. Da XML reiner strukturierter Text ist, können Sie den Inhalt eines Dokumentteils mithilfe von Textlesern anzeigen oder den Inhalt mithilfe von Prozessen wie XPath analysieren.The document parts in an Open XML package are created as XML markup. Because XML is structured plain text, you can view the contents of a document part using text readers or you can parse the contents using processes such as XPath.

Strukturell ist ein Open XML-Dokument ein OPC-Paket (Open Packaging Conventions).Structurally, an Open XML document is an Open Packaging Conventions (OPC) package. wie bereits erwähnt besteht ein Paket aus einer Sammlung von Dokumentteilen.As stated previously, a package is composed of a collection of document parts. Jeder Teil hat einen Teilnamen, der aus einer Folge von Segmenten oder einem Dateinamen wie "/word/theme/theme1.xml" besteht.Each part has a part name that consists of a sequence of segments or a pathname such as "/word/theme/theme1.xml." Das Paket enthält einen [Content_ Types].xml-Teil, mit dem Sie den Inhaltstyp aller Dokumentteile im Paket bestimmen können.The package contains a [Content_Types].xml part that allows you to determine the content type of all document parts in the package. Ein Satz mit expliziten Beziehungen für ein Quellpaket oder einen Quellteil ist in einem Beziehungsteil enthalten, der mit der Erweiterung RELS endet.A set of explicit relationships for a source package or part is contained in a relationships part that ends with the .rels extension.

Dokumente aus Textverarbeitungsprogrammen werden mithilfe des WordprocessingML-Markups beschrieben. Weitere Informationen finden Sie unter Arbeiten mit WordprocessingML-Dokumenten (Open XML SDK). Ein WordprocessingML-Dokument besteht aus einer Sammlung von Textabschnitten, wobei ein Textabschnitt eines der folgenden Elemente ist:Word processing documents are described by using WordprocessingML markup. For more information, see Working with WordprocessingML documents (Open XML SDK). A WordprocessingML document is composed of a collection of stories where each story is one of the following:

  • Hauptdokument (der einzige erforderliche Textabschnitt)Main document (the only required story)

  • GlossardokumentGlossary document

  • Kopf- und FußzeileHeader and footer

  • KommentareComments

  • TextfeldText box

  • Fuß- und EndnoteFootnote and endnote

Präsentationen werden mithilfe des PresentationML-Markups beschrieben. Weitere Informationen finden Sie unter Arbeiten mit PresentationML-Dokumenten (Open XML SDK). Präsentationspakete können die folgenden Dokumentteile enthalten:Presentations are described by using PresentationML markup. For more information, see Working with PresentationML documents (Open XML SDK). Presentation packages can contain the following document parts:

  • FolienmasterSlide master

  • NotizenmasterNotes master

  • HandzettelmasterHandout master

  • FolienlayoutSlide layout

  • NotizenNotes

Arbeitsmappen mit Tabellenkalkulationen werden mithilfe des SpreadsheetML-Markups beschrieben. Weitere Informationen finden Sie unter Arbeiten mit SpreadsheetML-Dokumenten (Open XML SDK). Arbeitsmappenpakete können Folgendes enthalten:Spreadsheet workbooks are described by using SpreadsheetML markup. For more information, see Working with SpreadsheetML documents (Open XML SDK). Workbook packages can contain:

  • Arbeitsmappenteil (erforderlicher Teil)Workbook part (required part)

  • Ein oder mehrere ArbeitsblätterOne or more worksheets

  • DiagrammeCharts

  • TabellenTables

  • Benutzerdefiniertes XMLCustom XML

Open XML SDK 1.0Open XML SDK 1.0

In Version 1 des Open XML SDK wurde die Änderung von Open XML-Paketen vereinfacht. Die Open XML SDK-API (Application Programming Interface) beinhaltet viele der häufig verwendeten Aufgaben, die Sie in der Regel für Open XML-Pakete ausführen, damit Sie komplexe Vorgänge mit nur wenigen Codezeilen ausführen können. Es folgen einige häufig verwendete Aufgaben:Version 1 of the Open XML SDK simplified the manipulation of Open XML packages. The Open XML SDK Application Programming Interface (API) encapsulates many of the common tasks that you typically perform on Open XML packages, so you can perform complex operations with just a few lines of code. Some common tasks:

  • Suche: Mit wenigen Codezeilen können Sie eine Sammlung von Excel 2007-Arbeitsblättern nach beliebigen Daten durchsuchen.Search—With a few lines of code, you can search a collection of Excel 2007 worksheets for some arbitrary data.

  • Dokumentassembly: Sie können Dokumente erstellen, indem Sie die Dokumentteile vorhandener Dokumente programmgesteuert kombinieren. Sie können beispielsweise Folien aus verschiedenen PowerPoint 2007-Präsentationen herausziehen, um eine einzelne Präsentation zu erstellen.Document assembly—You can create documents by combining the document parts of existing documents programmatically. For example, you can pull slides from various PowerPoint 2007 presentations to create a single presentation.

  • Überprüfung: Mit wenigen Codezeilen können Sie die Dokumentteile in einem Paket oder ein gesamtes Paket anhand eines Schemas überprüfen.Validation—With a few lines of code, you can validate the document parts in a package or validate an entire package against a schema.

  • Datenaktualisierung: Mit dem Open XML-Objektmodell können Sie die Daten in mehreren Paketen einfach ändern.Data update—With the Open XML object model, you can easily modify the data in multiple packages.

  • Datenschutz: Mit wenigen Codezeilen können Sie Kommentare und andere persönliche Informationen aus einem Dokument entfernen, bevor es verteilt wird.Privacy—With a few lines of code, you can remove comments and other personal information from a document before it is distributed.

Open XML SDK 2.0 für Microsoft OfficeOpen XML SDK 2.0 for Microsoft Office

Das Open XML SDK 2.0 für Microsoft Office erweitert die stark typisierte Klassenunterstützung aus den in Version 1.0 bereitgestellten Teilklassen für den XML-Inhalt in den einzelnen Teilen. Alle in Version 1.0 verfügbaren Funktionen werden weiterhin unterstützt. Mit Version 2.0 können Sie anhand des XML-Inhalts innerhalb des Teils programmieren. Das SDK unterstützt das Programmieren im LINQ-Format zu XML, wodurch das Codieren anhand des XML-Inhalts viel einfacher als beim herkömmlichen W3C-XML-DOM-Programmiermodell ist.The Open XML SDK 2.0 for Microsoft Office extended the strongly typed class support from the part classes, which are provided in version 1.0, to the XML content in each part. All functions available in version 1.0 are still supported. With version 2.0, you are able to program against the XML content inside the part. The SDK supports programming in the style of LINQ to XML which makes coding against the XML content much easier than the traditional W3C XML DOM programming model.

Das SDK unterstützt die folgenden häufig verwendeten Aufgaben/Szenarien:The SDK supports the following common tasks/scenarios:

  • Stark typisierte Klassen und Objekte: Anstatt sich auf die generischen XML-Funktionen zum Bearbeiten von XML zu verlassen, bei denen Sie auf die Schreibweise von Elementen/Attributen/Werten sowie von Namespaces achten müssen, können Sie mit dem Open XML SDK dieselbe Lösung erreichen, indem Sie einfach Objekte bearbeiten, die Elemente/Attribute/Werte darstellen. Alle Schematypen werden als stark typisierte Common Language Runtime-Klassen (CLR) und alle Attributwerte als Enumerationen dargesellt.Strongly Typed Classes and Objects—Instead of relying on generic XML functionality to manipulate XML, which requires that you be aware of element/attribute/value spelling as well as namespaces, you can use the Open XML SDK to accomplish the same solution simply by manipulating objects that represent elements/attributes/values. All schema types are represented as strongly typed Common Language Runtime (CLR) classes and all attribute values as enumerations.

  • Inhaltskonstruktion, Suche und Bearbeitung: Die LINQ-Technologie ist direkt in das SDK integriert. Daher können Sie Funktionskonstrukte und lambda-Ausdrucksabfragen direkt für Objekte ausführen, die Open XML-Elemente darstellen. Außerdem können Sie mit dem SDK einfach Inhalt durchsuchen und bearbeiten, indem Unterstützung für Sammlungen von Objekten wie Tabellen und Absätzen bereitgestellt wird.Content Construction, Search, and Manipulation—The LINQ technology is built directly into the SDK. As a result, you are able to perform functional constructs and lambda expression queries directly on objects representing Open XML elements. In addition, the SDK allows you to easily traverse and manipulate content by providing support for collections of objects, like tables and paragraphs.

  • Überprüfung: Das Open XML SDK 2.0 für Microsoft Office bietet Überprüfungsfunktionen, mit denen Sie Open XML-Dokumente auf verschiedene Varianten des Open XML-Formats überprüfen können.Validation—The Open XML SDK 2.0 for Microsoft Office provides validation functionality, enabling you to validate Open XML documents against different variations of the Open XML Format.

Open XML SDK 2.5 für OfficeOpen XML SDK 2.5 for Office

Das Open XML SDK 2.5 enthält die Namespaces und Member zur Unterstützung von Microsoft Office 2013. Das Open XML SDK 2.5 kann auch ISO/IEC 29500 Strict Format-Dateien lesen. Das Strict-Format ist eine Teilmenge des Transitional-Formats, das die alten Features nicht unterstützt. Daher ist die Unterstützung für einen neuen Implementierer theoretisch einfacher, da es einen kleineren technischen Fußabdruck hat.The Open XML SDK 2.5 provides the namespaces and members to support the Microsoft Office 2013. The Open XML SDK 2.5 can also read ISO/IEC 29500 Strict Format files. The Strict format is a subset of the Transitional format that does not include legacy features - this makes it theoretically easier for a new implementer to support since it has a smaller technical footprint.

Das SDK unterstützt die folgenden häufig verwendeten Aufgaben/Szenarien:The SDK supports the following common tasks/scenarios:

  • Unterstützung des Office 2013 Preview-Dateiformats: Zusätzlich zu den Klassen des Open XML SDK 2.0 für Microsoft Office bietet das Open XML SDK 2.5 neue Klassen, mit denen Sie Anwendungen schreiben und erstellen können, um die Open XML-Dateierweiterungen der neuen Features von Office 2013 zu bearbeiten.Support of Office 2013 Preview file format—In addition to the Open XML SDK 2.0 for Microsoft Office classes, Open XML SDK 2.5 provides new classes that enable you to write and build applications to manipulate Open XML file extensions of the new Office 2013 features.

  • Liest ISO Strict- Dokumentdatei: Open XML SDK 2.5 kann ISO/IEC 29500 Strict Format-Dateien lesen.Reads ISO Strict Document File—Open XML SDK 2.5 can read ISO/IEC 29500 Strict Format files. Wenn die Open XML SDK 2.5-API eine Strict Format-Datei öffnet, wird jeder Open XML-Teil in der Datei in einer OpenXmlPart-Klasse des Open XML SDK 2.5-Namespaces geladen, indem http://purl.oclc.org/ooxml/-Namespaces den entsprechenden http://schemas.openxmlformats.org/-Namespaces zugeordnet werden.When the Open XML SDK 2.5 API opens a Strict Format file, each Open XML part in the file is loaded to an OpenXmlPart class of the Open XML SDK 2.5 by mapping http://purl.oclc.org/ooxml/ namespaces to the corresponding http://schemas.openxmlformats.org/ namespaces.

  • Korrekturen am Open XML SDK 2.0 für Microsoft Office: Open XML SDK 2.5 enthält Korrekturen bekannter Probleme im Open XML SDK 2.0 für Microsoft Office. Dazu gehören verloren gegangene Leerzeichen in PowerPoint-Präsentationen und ein Problem bei der benutzerdefinierten Benutzeroberfläche in Word-Dokumenten, bei denen gemeldet wurde, dass sich ein angegebenes Argument außerhalb des Bereichs zulässiger Werte befindet.Fixes to the Open XML SDK 2.0 for Microsoft Office—Open XML SDK 2.5 includes fixes to known issues in the Open XML SDK 2.0 for Microsoft Office. These include lost whitespaces in PowerPoint presentations and an issue with the Custom UI in Word documents where a specified argument was reported as being out of the range of valid values.

Weitere Informationen zu diesen und anderen neuen Features des Open XML SDK 2.5 finden Sie im Artikel Neuerungen im Open XML SDK 2.5 für Office.You can find more information about these and other new features of the Open XML SDK 2.5 in the What's new in the Open XML SDK 2.5 for Office article.