Difference between revisions of "XLSX"

From Apache OpenOffice Wiki
Jump to: navigation, search
(Code Organization: added section for handling global data.)
m (Global data)
Line 16: Line 16:
 
== Global data ==
 
== Global data ==
 
Workbook-wide global data are stored in '''GlobalData (struct)''', and handled by '''GlobalDataHelper (class)''' which holds reference to the GlobalData instance.  All major classes should be derived from GlobalDataHelper to ensure availability of globals in all places.
 
Workbook-wide global data are stored in '''GlobalData (struct)''', and handled by '''GlobalDataHelper (class)''' which holds reference to the GlobalData instance.  All major classes should be derived from GlobalDataHelper to ensure availability of globals in all places.
 +
 +
GlobalData holds reference to ImportBase in order to create new fragments.
  
 
== Relation (class) ==
 
== Relation (class) ==

Revision as of 22:56, 5 March 2007

XLSX is the XML format used by Excel 2007 and that is part of the OpenXML specification.

Sample XLSX Files

One convenient location to download sample XLSX files is in gnumeric repository.

Code Organization

Source files for handling XLSX format are located in inc/oox/xls and source/xls under module oox.

A substream in the XML package is called "fragment", and each fragment has an associated *fragment.hxx header file. For instance, the code for loading of the workbook.xml fragment is found in workbookfragment.hxx, and so on.

A nested element is called "context", and, like the fragments, each context has an associated *context.hxx. For instance, the code for parsing the <sheetData> element is found in sheetdatacontext.hxx.

The term workbook refers to an enter document, whereas the term worksheet refers to each individual sheet in the workbook.

Global data

Workbook-wide global data are stored in GlobalData (struct), and handled by GlobalDataHelper (class) which holds reference to the GlobalData instance. All major classes should be derived from GlobalDataHelper to ensure availability of globals in all places.

GlobalData holds reference to ImportBase in order to create new fragments.

Relation (class)

Holds three string data for ID, Type and Target (need more info).

ContextHelper (class)

FragmentBase (class)

ContextBase (class)

Personal tools