SpreadsheetML
SpreadsheetML ist eine von Microsoft für Microsoft Excel ab Version 2003 entwickelte XML-basierte Auszeichnungssprache für Tabellenkalkulationsdokumente. SpreadsheetML ist eine Weiterentwicklung des mit Microsoft Excel XP eingeführten, XML-basierten Dateiformats XML Spreadsheet.[1]
Mit der Einführung von SpreadsheetML wird das Erstellen und Verarbeiten von Microsoft Excel-Dateien vereinfacht. Konkurrenzprodukte und Individualsoftware-Applikationen sollen SpreadsheetML-Dokumente erstellen, einlesen und verändern können, ohne auf Microsoft Excel-Funktionen zugreifen zu müssen.[2]
Zurzeit existieren zwei Versionen von SpreadsheetML, die Version 2003 und die Version, die Bestandteil der ISO/IEC-Norm 29500:2008 (Office Open XML) ist.
SpreadsheetML 2003
[Bearbeiten | Quelltext bearbeiten]SpreadsheetML 2003-Dokumente werden in einer (1) unkomprimierten XML-Datei gespeichert. Diese Dateien bestehen im Wesentlichen aus vier Teilen:
- Allgemeine Dokumenteigenschaften (DocumentProperties)
- Applikationsspezifische Dokumenteigenschaften (WorkBook)
- Formatvorlagen (Styles)
- Tabellenblätter (Worksheet)
SpreadsheetML 2003 unterstützt nicht die gesamte Microsoft Excel-Funktionalität, es fehlt unter anderem die Unterstützung von Diagrammen, Grafiken und OLE-Objekten.[3]
Beispiel
[Bearbeiten | Quelltext bearbeiten]Anzeige am Bildschirm (die Zelle A3 enthält SUMME der beiden darüberliegenden Zellen):
A | |
---|---|
1 | 1 |
2 | 1 |
3 | 2 |
Dateiinhalt (gekürzt):
<?xml version="1.0"?>
<?mso-application progid="Excel.Sheet"?>
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:x="urn:schemas-microsoft-com:office:excel"
xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet">
<DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">
<Author>N.N.</Author>
<LastAuthor>N.N.</LastAuthor>
<Created>2006-08-30T12:00:00Z</Created>
<Company>-</Company>
<Version>11.8036</Version>
</DocumentProperties>
<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">
<WindowHeight>13225</WindowHeight>
<WindowWidth>19382</WindowWidth>
⋮
</ExcelWorkbook>
<Styles>
<Style ss:ID="Default" ss:Name="Normal">
<Alignment ss:Vertical="Bottom"/>
<Borders/>
<Font/>
<Interior/>
<NumberFormat/>
<Protection/>
</Style>
</Styles>
<Worksheet ss:Name="Tabelle1">
<Table ss:ExpandedColumnCount="1" ss:ExpandedRowCount="3" x:FullColumns="1"
x:FullRows="1" ss:DefaultColumnWidth="66.206896551724142"
ss:DefaultRowHeight="13.241379310344827">
<Row>
<Cell>
<Data ss:Type="Number">1</Data>
</Cell>
</Row>
<Row>
<Cell>
<Data ss:Type="Number">1</Data>
</Cell>
</Row>
<Row>
<Cell ss:Formula="=SUM(R[-2]C:R[-1]C)">
<Data ss:Type="Number">2</Data>
</Cell>
</Row>
</Table>
<WorksheetOptions xmlns="urn:schemas-microsoft-com:office:excel">
<PageSetup>
<Header x:Margin="0.4921259845"/>
<Footer x:Margin="0.4921259845"/>
<PageMargins x:Bottom="0.984251969" x:Left="0.78740157499999996"
x:Right="0.78740157499999996" x:Top="0.984251969"/>
</PageSetup>
<Selected/>
<Panes>
<Pane>
<Number>3</Number>
<ActiveRow>3</ActiveRow>
</Pane>
</Panes>
<ProtectObjects>False</ProtectObjects>
<ProtectScenarios>False</ProtectScenarios>
</WorksheetOptions>
</Worksheet>
<Worksheet ss:Name="Tabelle2">
⋮
</Worksheet>
<Worksheet ss:Name="Tabelle3">
⋮
</Worksheet>
</Workbook>
Standardisierung und Lizenzierung
[Bearbeiten | Quelltext bearbeiten]SpreadsheetML 2003 wurde von keiner Normungsorganisation standardisiert, ist also kein herstellerunabhängiger Standard.
Eine vollständige Dokumentation ist öffentlich verfügbar.[4]
Microsoft gewährt eine immerwährende, gebührenfreie Lizenz zur Verwendung von SpreadsheetML.[5] In einem covenant not to sue hat Microsoft erklärt, dass es unwiderruflich auf eine Durchsetzung aller für eine konforme Umsetzung der Office 2003 XML Reference Schemas-Spezifikation notwendigen Patente gegenüber Programmteilen, die diese Spezifikation implementieren, verzichtet.[6] Dies gilt nicht für Patentansprüche Dritter.
Verbreitung
[Bearbeiten | Quelltext bearbeiten]SpreadsheetML 2003 wird unter anderem von Microsoft Excel 2003, dem Microsoft Excel Viewer 2003, LibreOffice und Gnumeric unterstützt.
Office Open XML SpreadsheetML
[Bearbeiten | Quelltext bearbeiten]Office Open XML SpreadsheetML ist eine neue Version von SpreadsheetML, die Bestandteil des Office Open XML-Standards ist. Die Standardisierung erfolgte im Rahmen des technischen Komitees 45 (TC45) von Ecma International sowie innerhalb von ISO/IEC. Diese Auszeichnungssprache ist eine Weiterentwicklung von SpreadsheetML 2003.
Weblinks
[Bearbeiten | Quelltext bearbeiten]- XML Spreadsheet Reference, August 2001 (englisch)
- SpreadsheetML-Einführung, data2type (deutsch)
Einzelnachweise
[Bearbeiten | Quelltext bearbeiten]- ↑ INFO: Microsoft Excel 2002 and XML Microsoft Knowledge Base (englisch)
- ↑ Bringing the XML Vision to the Desktop with Office 2003 Microsoft
- ↑ Features and limitations of XML Spreadsheet format in Excel (Seite nicht mehr abrufbar, festgestellt im Mai 2019. Suche in Webarchiven) Info: Der Link wurde automatisch als defekt markiert. Bitte prüfe den Link gemäß Anleitung und entferne dann diesen Hinweis. Microsoft
- ↑ Office 2003: XML Reference Schemas (englisch)
- ↑ Clarification of License Terms for Office XML Schema Microsoft (englisch)
- ↑ Microsoft Covenant Regarding Office 2003 XML Reference Schemas Microsoft