-
Notifications
You must be signed in to change notification settings - Fork 6
FastODS and ODS files structure
Julien Férard edited this page Mar 9, 2018
·
3 revisions
TODO.
There is a strong constraint on LibreOffice compatibility, since LO does handle style declarations only if they are in specific elements.
| ODS location | used in FastODS? | Use cases |
|---|---|---|
document-content > automatic-styles |
Yes | 1. all <style:style> tags in the document except named table-cell family2. future anonymous builders for table-cell family: Style.builder()...
|
document-styles > styles |
Yes | 1. data styles (<number:...-style>)2. named table-cell family styles <style:style>3. table-cell family styles default style: <style:default-style>
|
document-styles > automatic-styles |
Yes | Page layouts of master styles: <style:page-layout> and the text family styles of this layout (e.g. style of text span xin footer/header). |
document-styles > master-styles |
Yes | All <style:master-page>s |
Note: OO/LO has a very limited use and understanding of <style:default-style> tags.
| ODS location | used in FastODS? | Use cases |
|---|---|---|
document-content > automatic-styles |
No | Reserved for future anonymous builders: Style.builder()... |
document-styles > styles |
Yes | Default styles (<style:default-page-layout> and <style:default-style>), data styles (<number:...-style>) and named styles (<style:style>) |
document-styles > automatic-styles |
Yes | Only for page layout of master styles: <style:page-layout> |
document-styles > master-styles |
Yes | Named <style:master-page>s |
FastODS may use the following style:family values: table, table-cell, table-column, table-row, paragraph and text.
| ODS location | ODS element | FastODS class | FastODS output method |
|---|---|---|---|
document-styles > styles |
<number:...-style> |
DataStyle |
appendXML |
| idem | <number:boolean-style> |
BooleanStyle |
idem |
| idem | <number:currency-style> |
CurrencyStyle |
idem |
| idem | <number:date-style> |
DateStyle |
idem |
| idem | <number:number-style> |
NumberStyle |
idem |
| idem | idem | FractionStyle |
idem |
| idem | idem | ScientificNumberStyle |
idem |
| idem | <number:percentage-style> |
PercentageStyle |
idem |
| idem | <number:text-style> |
absent | absent |
| idem | <number:time-style> |
TimeStyle |
idem |
| ODS location | ODS element | FastODS class | FastODS output method |
|---|---|---|---|
document-styles > styles |
<style:style> |
StyleTag |
appendXML |
| idem | <style:style style:family="table"> |
TableStyle |
idem |
| idem | <style:style style:family="table-cell"> |
TableCellStyle |
idem |
| idem | <style:style style:family="table-column"> |
TableColumnStyle |
idem |
| idem | <style:style style:family="table-row"> |
TableRowStyle |
idem |
| idem | <style:style style:family="table-column"> |
TableColumnStyle |
idem |
| ODS location | ODS element | FastODS class | FastODS output method | Comment |
|---|---|---|---|---|
document-styles > styles |
<style:style> |
StyleTag |
appendXML |
|
| idem | <style:style style:family="paragraph"> |
absent | absent | |
| idem | <style:style style:family="text"> |
TextStyle |
appendXML |
|
| idem | <style:text-properties> |
TextProperties |
appendXMLContent |
TODO.
PageStyle is a <style:master-page> and a <style:page-layout> element.