office-collab — archive
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
— [Date Index]
| [Thread Index]
| [Month Index]
| [List Home]
Lists - information overflow
The list topic really can cause some headache, but as I started it,
allow me to provide an update.
I have asked myself, do we need to preserve all list style
information provided by a list hierarchy on a paragraph?
For instance, on paragraph on the tenth list level in ODF there can
be referenced up to eleven different list styles.
<text:list text:style-name= L1 >
<text:list-item text:style-override= L2 >
<text:list text:style-name= L3 >
<text:list-item text:style-override= L4 >
<text:list text:style-name= L5 >
<text:list-item text:style-override= L6 >
<text:list text:style-name= L7 >
<text:list-item
text:style-override= L8 >
<text:list
text:style-name= L9 >
<text:list-item
text:style-override= L10 >
<text:p
text:style-name= P1-referencing-to-L11
>Hello
list!</text:p>
</text:list-item>
</text:list>
</text:list-item>
</text:list>
</text:list-item>
</text:list>
</text:list-item>
</text:list>
</text:list-item>
</text:list>
Each may offer a style definition for each of the list level - for
instance OpenOffice support 10 list level in the UI - this may
result into a maximum of 110 list styles in total, while only 1 is
being applicable at the paragraph.
(NOTE: In theory the attribute @text:level
is not restricted to 10 and may be any arbitrary positive integer.
But so does @text:outline-level
for heading, still in HTML 5 it can only
have 6 levels .)
The inverse question is: What do I lose, what is the mandatory
required information to provide?
For instance, if I only provide the one style being applied, i.e.
the style definition of the tenth level first being found in a list
style looking in that order: L10, L9, L8, L7, L6, L5, L4, L3, L2,
L1, L11.
I came to the following conclusion:
All template list styles (those from the styles.xml) should be
provided by operations, when wiring an ODF document by
operations over the net. In case an application allows the
choice of existing predefined list styles.
(We might even specify default styles in the standard to
guarantee a consistent look and feel for ODF documents)
Even if there is only one paragraph in the above example,
which only uses one list level style of a list style, the
complete set of list definition level 1 to 10 needs to be wired
gathered from the list hierarchy, otherwise the run-time
behavior would differ. For instance if a user expands the list
(usually pressing CR after an existing list item, here Hello
list! and lowers the list level a new list level style would be
applied. Which should be used? In this case the 9th list level
style from the above example. Therefore all available list level
definition have to be provided by an operation.
In other words a normalized form (simplified with the same
information set) of the above structure could be:
<text:list style= L12 >
<text:list-item>
<text:list>
<text:list-item>
<text:list>
<text:list-item>
<text:list>
<text:list-item>
<text:list>
<text:list-item>
<text:p>Hello
list!</text:p>
</text:list-item>
</text:list>
</text:list-item>
</text:list>
</text:list-item>
</text:list>
</text:list-item>
</text:list>
</text:list-item>
</text:list>
While the list style name L12 is arbitrary, the style would
have gathered all gathered list levels from the previous lists
into a single one.
Do I miss something? What's your opinion? I am awaiting your
feed-back!
PS: The above example is highly theoretical, especially as the
operations are more likely being used in a real-world
collaborating context, but it helped me to understand lists and
their operations in general.
Best regards,
Svante
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
— [Date Index]
| [Thread Index]
| [Month Index]
| [List Home]