Zum Inhalt springen

SpreadsheetML

aus Wikipedia, der freien Enzyklopädie

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.<ref>INFO: Microsoft Excel 2002 and XML Microsoft Knowledge Base (englisch)</ref>

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.<ref>Bringing the XML Vision to the Desktop with Office 2003 Microsoft</ref>

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]

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.<ref>Vorlage:Toter Link/CoreFeatures and limitations of XML Spreadsheet format in Excel (Seite nicht mehr abrufbar, festgestellt im Skriptfehler: Ein solches Modul „DateTime“ ist nicht vorhanden.. Suche im Internet Archive)Vorlage:Toter Link/archivebotSkriptfehler: Ein solches Modul „TemplatePar“ ist nicht vorhanden. Microsoft</ref>

Beispiel[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):

<syntaxhighlight lang="xml"> <?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/>
           
           <Interior/>
           <NumberFormat/>
           <Protection/>
       </Style>
   </Styles>
   <Worksheet ss:Name="Tabelle1">
<Row> <Cell> 1 </Cell> </Row> <Row> <Cell> 1 </Cell> </Row> <Row> <Cell ss:Formula="=SUM(R[-2]C:R[-1]C)"> 2 </Cell> </Row>
       <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> </syntaxhighlight>

Standardisierung und Lizenzierung[Bearbeiten]

SpreadsheetML 2003 wurde von keiner Normungsorganisation standardisiert, ist also kein herstellerunabhängiger Standard.

Eine vollständige Dokumentation ist öffentlich verfügbar.<ref>Office 2003: XML Reference Schemas (englisch)</ref>

Microsoft gewährt eine immerwährende, gebührenfreie Lizenz zur Verwendung von SpreadsheetML.<ref>Clarification of License Terms for Office XML Schema Microsoft (englisch)</ref> 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.<ref>Microsoft Covenant Regarding Office 2003 XML Reference Schemas Microsoft</ref> Dies gilt nicht für Patentansprüche Dritter.

Verbreitung[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]

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]

Einzelnachweise[Bearbeiten]

<references />