OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

office message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: [office] List representation


Hello,

I've just posted last week's meeting minutes. We discussed lists 
representation, and the suggestion was to adopt the HTML-style lists 
from the base specification. As we didn't reach quorum, the decision was 
to defer the vote to next week, and bring the issue to the mailing list 
so that everyone has a chance to make up their mind on the issue.

It's one of my action items to provide list examples; please find them 
below.

One correction from the meeting: I claimed that in order to recognize 
word-processor-style discontignous lists, the OOo format would merge 
lists if they have the same list style. This is wrong: There is an 
explicit continue-numbering attribute. If this is set 'true', the list 
will continue numbering from the previous list with the same list style. 
So the 'merging' of discontingous lists is controlled by a specific 
attribute, which I think is much nicer anyways. So the suggested list 
model is an HTML-style list model, plus list styles, plus an option to 
number several lists continously.


As promised, here's a few examples of lists in the base specification. 
I've cut down the style information a little as well as administrative 
issues (namespace, top-level elements, etc.), but I think all the 
necessary details are there:


  1) A plain old numbered list
==============================

In body:

<text:ordered-list text:style-name="L1">
  <text:list-item>
   <text:p>List 1</text:p>
  </text:list-item>
  <text:list-item>
   <text:p>List 1</text:p>
  </text:list-item>
  <text:list-item>
   <text:p>List 1</text:p>
  </text:list-item>
</text:ordered-list>

In automatic-styles:

<text:list-style style:name="L1">
  <text:list-level-style-number text:level="1"
                                text:style-name="Numbering Symbols"
                                style:num-suffix="."
                                style:num-format="1">
   <style:properties text:min-label-width="0.499cm"/>
  </text:list-level-style-number>
  <!-- styles for other list levels follow; cut since they are not used 
here -->
</text:list-style>

This yields:

1. List 1
2. List 1
3. List 1


  2) A hierachical, numbered list
=================================

In body:

<text:ordered-list text:style-name="L2">
  <text:list-item>
   <text:p>List 2</text:p>
   <text:ordered-list>
    <text:list-item>
     <text:p>List 2</text:p>
     <text:ordered-list>
      <text:list-item>
       <text:p>List 2</text:p>
      </text:list-item>
      <text:list-item>
       <text:p>List 2</text:p>
      </text:list-item>
     </text:ordered-list>
    </text:list-item>
   </text:ordered-list>
  </text:list-item>
  <text:list-item>
   <text:p>List 2</text:p>
   <text:ordered-list>
    <text:list-item>
     <text:p>List 2</text:p>
     <text:ordered-list>
      <text:list-item>
       <text:p>List 2</text:p>
      </text:list-item>
      <text:list-item>
       <text:p>List 2</text:p>
      </text:list-item>
     </text:ordered-list>
    </text:list-item>
   </text:ordered-list>
  </text:list-item>
</text:ordered-list>

In automatic styles:

<text:list-style style:name="L2">
  <text:list-level-style-number text:level="1"
                                text:style-name="Numbering Symbols"
                                style:num-suffix="."
                                style:num-format="1">
   <style:properties text:min-label-width="0.499cm"/>
  </text:list-level-style-number>
  <text:list-level-style-number text:level="2"
                                text:style-name="Numbering Symbols"
                                style:num-suffix="."
                                style:num-format="1">
   <style:properties text:space-before="0.501cm"
                     text:min-label-width="0.499cm"/>
  </text:list-level-style-number>
  <text:list-level-style-number text:level="3"
                                text:style-name="Numbering Symbols"
                                style:num-suffix="."
                                style:num-format="1">
   <style:properties text:space-before="1cm"
                     text:min-label-width="0.499cm"/>
  </text:list-level-style-number>
  <!-- styles for other list levels follow; cut since they are not used 
here -->
</text:list-style>

This yields:

1. List 2
   1. List 2
     1. List 2
     2. List 2
2. List 2
   1. List 2
     1. List 2
     2. List 2


  3) A hierachical, numbered list with hierarchical numbering
=============================================================

In body:

This would look exactly like the previous example, except the list style now
being "L3".

In automatic-styles:

Note: The only difference to the previous list style is the 
text:display-levels
attribute on the list-level-style-number elements.

<text:list-style style:name="L3">
  <text:list-level-style-number text:level="1"
                                text:style-name="Numbering Symbols"
                                style:num-suffix="."
                                style:num-format="1">
   <style:properties text:min-label-width="0.499cm"/>
  </text:list-level-style-number>
  <text:list-level-style-number text:level="2"
                                text:style-name="Numbering Symbols"
                                style:num-suffix="."
                                style:num-format="1"
                                text:display-levels="2">
   <style:properties text:space-before="0.501cm" 
text:min-label-width="0.499cm"/>
  </text:list-level-style-number>
  <text:list-level-style-number text:level="3"
                                text:style-name="Numbering Symbols"
                                style:num-suffix="."
                                style:num-format="1"
                                text:display-levels="3">
   <style:properties text:space-before="1cm" 
text:min-label-width="0.499cm"/>
  </text:list-level-style-number>
  <!-- styles for other list levels follow; cut since they are not used 
here -->
</text:list-style>

This yields:

1. List 2
   1.1. List 2
     1.1.1. List 2
     1.1.2. List 2
2. List 2
   2.1. List 2
     2.1.1. List 2
     2.1.2. List 2


  4) Interleaved Lists (Word-Processor Style)
=============================================

Since current word-processors assign lists through paragraph styles, 
they allow
lists to be discontinues. E.g., a single list might contain the first 
three and
the last three paragraphs of a document. Even interleaved lists are
possible. According to the base specification these are represented as
individual lists, which have a 'text:continue-numbering' flag (default: 
false)
set to indicate that they should continue the numbering from any 
previous lists
with the same list style.

So from a word-processor perspective, there are two non-continous lists. 
From
an XML perspective, there are six lists, but some of those lists 
continue the
numbering of some previous lists.

In body:

<text:ordered-list text:style-name="L4">
  <text:list-item>
   <text:p>List 4</text:p>
  </text:list-item>
</text:ordered-list>
<text:ordered-list text:style-name="L5">
  <text:list-item>
   <text:p>List 5</text:p>
  </text:list-item>
</text:ordered-list>
<text:ordered-list text:style-name="L4" text:continue-numbering="true">
  <text:list-item>
   <text:p>List 4</text:p>
  </text:list-item>
</text:ordered-list>
<text:ordered-list text:style-name="L5" text:continue-numbering="true">
  <text:list-item>
   <text:p>List 5</text:p>
  </text:list-item>
</text:ordered-list>
<text:ordered-list text:style-name="L4" text:continue-numbering="true">
  <text:list-item>
   <text:p>List 4</text:p>
  </text:list-item>
</text:ordered-list>
<text:ordered-list text:style-name="L5" text:continue-numbering="true">
  <text:list-item>
   <text:p>List 5</text:p>
  </text:list-item>
</text:ordered-list>

In automatic styles:

<text:list-style style:name="L4">
  <text:list-level-style-number text:level="1"
                                text:style-name="Numbering Symbols"
                                style:num-suffix="."
                                style:num-format="1">
   <style:properties text:min-label-width="0.499cm"/>
  </text:list-level-style-number>
  <!-- styles for other list levels follow; cut since they are not used 
here -->
</text:list-style>
<text:list-style style:name="L5">
  <text:list-level-style-number text:level="1"
                                text:style-name="Numbering Symbols"
                                style:num-suffix="."
                                style:num-format="1">
   <style:properties text:min-label-width="0.499cm"/>
  </text:list-level-style-number>
  <!-- styles for other list levels follow; cut since they are not used 
here -->
</text:list-style>

This yields:

1. List 4
1. List 5
2. List 4
2. List 5
3. List 4
3. List 5

Note that the various 'List x' entries actually belong to the same lists 
from a
word-processor perspective. So splitting the first paragraph into two, would
yield:

1. Li
2. st 4
1. List 5
3. List 4
2. List 5
4. List 4
3. List 5

The 'List 4' list entries have been incremented, and the 'List 5' 
entries have
been left alone.



Sincerely,
Daniel





[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]