Difference between revisions of "XLSX"
m (→Global data) |
m |
||
Line 1: | Line 1: | ||
− | + | [[Category:Office Open XML]] | |
− | = Sample | + | SpreadsheetML is the XML format used by Excel 2007 and that is part of the [[Office Open XML]] specification. |
− | One convenient location to download sample | + | |
− | + | = Sample Files = | |
+ | One convenient location to download sample files is in [http://svn.gnome.org/viewcvs/gnumeric/trunk/samples/excel12/ gnumeric repository]. | ||
= Code Organization = | = Code Organization = | ||
− | Source files for handling | + | Source files for handling the SpreadsheetML format are located in '''inc/oox/xls''' and '''source/xls''' under module [[OOX|oox]]. A good place to start tracing the code would be '''ExcelFilter::Import''' and follow the calls it makes. |
− | A substream in the XML package is called "fragment", and each fragment has an associated *fragment.hxx header file. | + | 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. | + | 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''' in this context refers to an entire document which includes worksheets and other document metadata, whereas the term '''worksheet''' refers to each individual sheet in the workbook. | The term '''workbook''' in this context refers to an entire document which includes worksheets and other document metadata, whereas the term '''worksheet''' refers to each individual sheet in the workbook. |
Revision as of 18:18, 6 March 2007
SpreadsheetML is the XML format used by Excel 2007 and that is part of the Office Open XML specification.
Contents
Sample Files
One convenient location to download sample files is in gnumeric repository.
Code Organization
Source files for handling the SpreadsheetML format are located in inc/oox/xls and source/xls under module oox. A good place to start tracing the code would be ExcelFilter::Import and follow the calls it makes.
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 in this context refers to an entire document which includes worksheets and other document metadata, 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 instance in order to be able to create new fragments.
Relation (class)
Holds three string data for ID, Type and Target (need more info).