OASIS Open Document Format for Office Applications (OpenDocument) TC

Expand all | Collapse all

renewed proposal for new position and space attributes for the listlevel

  • 1.  renewed proposal for new position and space attributes for the listlevel

    Posted 02-28-2007 09:27
    Dear TC members,
    
    I want to renew my proposal for new attributes for the list-level 
    style in order to provide a clear view for the voting process. The new 
    attributes provide an new possibility to specify the position und 
    spacing of the list label and the list item itself:
    
    The new attributes for the list level style are:
    - text:label-followed-by
    - text:list-tab-stop-position
    - text:label-aligned-at
    - fo:margin-left
    These new attributes plus the existing attribute fo:text-align give 
    the possibility to specify the position and spacing of the list label 
    and the list item in a new way, which could be called position and 
    spacing via label alignment.
    The existing attributes text:space-before, text:min-label-width and
    text:min-label-distance plus fo:text-align defines somehow the 
    position and spacing via label size and position.
    
    The new attributes are grouped together in a new element, named
    style:list-level-label-alignment. This element has to contain the
    attribute text:label-followed-by. Attributes 
    text:list-tab-stop-position, text:label-aligned-at and fo:margin-left
    are optional. if any of these attributes are missing, its values is
    assumed to be 0.
    
    In order to decide, which group of attributes are used to define the
    position and spacing of the list label and the list item the new
    attribute text:list-level-position-and-space-mode is introduced.
    
    - text:list-level-position-and-space-mode:
    
    
    Meaning of these values:
    - label-width-and-position:
    The existing attributes text:space-before, text:minimum-label-width,
    text:minimum-label-distance and fo:text-align are used to define the
    position and spacing of the list label and the list item.
    
    - label-alignment:
    The new attributes and fo:text-align are used to define the position and
    spacing of the list label and the list item. The values of the existing
    attributes for text:space-before, text:minimum-label-width and
    text:minimum-label-distance are treated as 0.
    
    If attribute text:list-level-position-and-space-mode is missing, which
    is hold for documents conforming previous ODF versions, its value is
    assumed to be label-width-and-position.
    
    
    - text:label-followed-by:
    
    
    Meaning of the values of attribute text:label-followed-by:
    - listtab - a tab stop follows the list label before the text starts.
    - space - a space character is inserted after the list label before
    the text starts.
    - nothing - the text starts directly after the list label.
    
    
    - text:list-tab-stop-position:
    
    
    Attribute text:list-tab-stop-position is only relevant, if attribute
    text:label-followed-by is defined and its value equals "listtab". In all
    other cases, attribute text:list-tab-stop-position isn't evaluated.
    Attribute text:list-tab-stop-position specifies an additional tab stop,
    which is inserted into the list item. Typically, this tab stop is the
    one, which is applied after the list label. Thus, the text of the
    first line of list item typically starts at this tab stop. In
    left-to-right layout environments this tab stop is interpreted as a
    left tab. While in right-to-left layout environments its interpreted
    as a right tab.
    There exists two cases in which this additional tab stop isn't applied
    to start the text of the first line of the list item after the list label:
    - The position of the additional tab stop is before the end of the
    list label.
    - Between the end of the list label and the position of the additional
    tab stop exists already a tab stop at the list item.
    In these cases an existing respectively a default tab stop is applied
    after the list label. The additional tab stop can be applied by normal
    inserted tab characters in the list item in these cases.
    The additional tab stop can also been applied in the text lines, which
    follow the first line of the list item.
    
    
    - text:label-aligned-at
    
    
    The new attribute text:label-aligned-at specifies the alignment position
    for the list label. The list label is aligned at this position, because
    value of text:minimum-label-width is treated as 0:
    - fo:text-align = "left": The list label starts at the alignment position.
    - fo:text-align = "center": The center of the list label is positioned
    at the alignment position.
    - fo:text-align = "right": The list label ends at the alignment position.
    
    
    - fo:margin-left
    
    
    The new attribute fo:margin-left is only relevant, if attribute
    text:label-followed-by is defined. It specifies the indent of the text
    lines of the list item following the first line.
    
    
    The new attributes text:label-aligned-at and fo:margin-left for a list
    level style are competing with the paragraph indent attributes
    fo:text-indent and fo:margin-left. The same is hold for the
    corresponding paragraph indent attributes for a paragraph style.
    These paragraph indent attributes are used to calculate the indent of
    first line of the paragraph and the indent of the following lines:
    - first line indent = fo:text-indent + fo:margin-left
    - following lines indent = fo:margin-left
    
    In the following is described how this competition is solved.
    
    - List style with list level style directly applied to a paragraph via
    an automatic paragraph style:
    If neither paragraph indent attribute fo:text-indent nor paragraph
    indent attribute fo:margin-left are defined, the new list level style
    attributes text:label-aligned-at and fo:margin-left are used in order
    to determine the indentation of the paragraph.
    If one of the paragraph indent attributes are defined - the value of
    the missing one is assumed to be 0 -, the given values of list level
    style attributes text:label-aligned-at and fo:margin-left are ignored.
    For the alignment position for the list label the first line indent is
    used. For the indent of the following lines of the list item the
    paragraph following line indent is used.
    
    - List style with list level style applied to a paragraph via an
    attribute of a paragraph style:
    The new attributes label-aligned-at and indent-at of a certain list
    level of a list style are used as indent attributes for a paragraph,
    which have such a paragraph style applied, if neither the automatic
    paragraph style nor the paragraph style provides own indent attributes 
    (fo:text-indent and fo:margin-left). If indent attributes are given at
    the automatic paragraph style or the paragraph style, these attributes
    are used to determine the alignment position and the indent for the 
    text lines following the first line.
    
    
    The new attributes inclusive its explanations should be inserted into 
    chapter 15.12 "List-Level Style Properties", referencing to ODF 1.1 
    specification document.
    
    
    The new attributes cover the following use cases. These use cases are 
    hard or even impossible to be expressed with the existing attributes:
    (1) Imagine the following list item layout:
    - center align the list label of the list items at absolute position 
    2cm - center of the actual list label is at absolute position 2cm
    - start of the text of the first line and the following lines at 
    absolute position 3cm.
    This list item layout can be expressed using the new attributes:
    text:label-followed-by="listtab"
    text:list-tab-stop-position="3cm"
    text:label-aligned-at="2cm"
    text:indent-at="3cm"
    fo:text-align="center"
    
    (2) List item layout
    - start the list label at absolute position 2cm
    - start of the text of the first line at absolute position 3cm
    - start of the text of the following lines at absolute position 4cm.
    can be expressed by the new attributes:
    text:label-followed-by="listtab"
    text:list-tab-stop-position="3cm"
    text:label-aligned-at="2cm"
    text:indent-at="4cm"
    fo:text-align="left"
    
    (3) Think of the following list item layout:
    - right align the list label at absolute position 2cm - list label end 
    at absolute position 2cm
    - start of the text of the first line directly after the list label 
    separated by a space
    - start of the following lines at absolute position 5cm.
    This is easy to be expressed with the new attributes:
    text:label-followed-by="space"
    text:list-tab-stop-position="5cm"
    text:label-aligned-at="2cm"
    text:indent-at="5cm"
    fo:text-align="right"
    
    
    Please support my proposal and vote on it, even when I'm not attending 
    the TC call, because I'm sick or on vacation.
    
    
    Regards, Oliver.
    


  • 2.  Re: [office] renewed proposal for new position and space attributesfor the list level

    Posted 02-28-2007 10:03
    Dear TC members,
    
    To be clear:
    The renewed proposal doesn't contain any change of its content. I only 
    added a reference to the chapter, in which the new attributes should 
    be inserted, and a couple of use cases.
    
    Regards, Oliver.
    
    
    Oliver-Rainer Wittmann - Software engineer - Sun Microsystems Inc wrote:
    > Dear TC members,
    > 
    > I want to renew my proposal for new attributes for the list-level style 
    > in order to provide a clear view for the voting process. The new 
    > attributes provide an new possibility to specify the position und 
    > spacing of the list label and the list item itself:
    > 
    > The new attributes for the list level style are:
    > - text:label-followed-by
    > - text:list-tab-stop-position
    > - text:label-aligned-at
    > - fo:margin-left
    > These new attributes plus the existing attribute fo:text-align give the 
    > possibility to specify the position and spacing of the list label and 
    > the list item in a new way, which could be called position and spacing 
    > via label alignment.
    > The existing attributes text:space-before, text:min-label-width and
    > text:min-label-distance plus fo:text-align defines somehow the position 
    > and spacing via label size and position.
    > 
    > The new attributes are grouped together in a new element, named
    > style:list-level-label-alignment. This element has to contain the
    > attribute text:label-followed-by. Attributes 
    > text:list-tab-stop-position, text:label-aligned-at and fo:margin-left
    > are optional. if any of these attributes are missing, its values is
    > assumed to be 0.
    > 
    > In order to decide, which group of attributes are used to define the
    > position and spacing of the list label and the list item the new
    > attribute text:list-level-position-and-space-mode is introduced.
    > 
    > - text:list-level-position-and-space-mode:
    > 
    > 
    > Meaning of these values:
    > - label-width-and-position:
    > The existing attributes text:space-before, text:minimum-label-width,
    > text:minimum-label-distance and fo:text-align are used to define the
    > position and spacing of the list label and the list item.
    > 
    > - label-alignment:
    > The new attributes and fo:text-align are used to define the position and
    > spacing of the list label and the list item. The values of the existing
    > attributes for text:space-before, text:minimum-label-width and
    > text:minimum-label-distance are treated as 0.
    > 
    > If attribute text:list-level-position-and-space-mode is missing, which
    > is hold for documents conforming previous ODF versions, its value is
    > assumed to be label-width-and-position.
    > 
    > 
    > - text:label-followed-by:
    > 
    > 
    > Meaning of the values of attribute text:label-followed-by:
    > - listtab - a tab stop follows the list label before the text starts.
    > - space - a space character is inserted after the list label before
    > the text starts.
    > - nothing - the text starts directly after the list label.
    > 
    > 
    > - text:list-tab-stop-position:
    > 
    > 
    > Attribute text:list-tab-stop-position is only relevant, if attribute
    > text:label-followed-by is defined and its value equals "listtab". In all
    > other cases, attribute text:list-tab-stop-position isn't evaluated.
    > Attribute text:list-tab-stop-position specifies an additional tab stop,
    > which is inserted into the list item. Typically, this tab stop is the
    > one, which is applied after the list label. Thus, the text of the
    > first line of list item typically starts at this tab stop. In
    > left-to-right layout environments this tab stop is interpreted as a
    > left tab. While in right-to-left layout environments its interpreted
    > as a right tab.
    > There exists two cases in which this additional tab stop isn't applied
    > to start the text of the first line of the list item after the list label:
    > - The position of the additional tab stop is before the end of the
    > list label.
    > - Between the end of the list label and the position of the additional
    > tab stop exists already a tab stop at the list item.
    > In these cases an existing respectively a default tab stop is applied
    > after the list label. The additional tab stop can be applied by normal
    > inserted tab characters in the list item in these cases.
    > The additional tab stop can also been applied in the text lines, which
    > follow the first line of the list item.
    > 
    > 
    > - text:label-aligned-at
    > 
    > 
    > The new attribute text:label-aligned-at specifies the alignment position
    > for the list label. The list label is aligned at this position, because
    > value of text:minimum-label-width is treated as 0:
    > - fo:text-align = "left": The list label starts at the alignment position.
    > - fo:text-align = "center": The center of the list label is positioned
    > at the alignment position.
    > - fo:text-align = "right": The list label ends at the alignment position.
    > 
    > 
    > - fo:margin-left
    > 
    > 
    > The new attribute fo:margin-left is only relevant, if attribute
    > text:label-followed-by is defined. It specifies the indent of the text
    > lines of the list item following the first line.
    > 
    > 
    > The new attributes text:label-aligned-at and fo:margin-left for a list
    > level style are competing with the paragraph indent attributes
    > fo:text-indent and fo:margin-left. The same is hold for the
    > corresponding paragraph indent attributes for a paragraph style.
    > These paragraph indent attributes are used to calculate the indent of
    > first line of the paragraph and the indent of the following lines:
    > - first line indent = fo:text-indent + fo:margin-left
    > - following lines indent = fo:margin-left
    > 
    > In the following is described how this competition is solved.
    > 
    > - List style with list level style directly applied to a paragraph via
    > an automatic paragraph style:
    > If neither paragraph indent attribute fo:text-indent nor paragraph
    > indent attribute fo:margin-left are defined, the new list level style
    > attributes text:label-aligned-at and fo:margin-left are used in order
    > to determine the indentation of the paragraph.
    > If one of the paragraph indent attributes are defined - the value of
    > the missing one is assumed to be 0 -, the given values of list level
    > style attributes text:label-aligned-at and fo:margin-left are ignored.
    > For the alignment position for the list label the first line indent is
    > used. For the indent of the following lines of the list item the
    > paragraph following line indent is used.
    > 
    > - List style with list level style applied to a paragraph via an
    > attribute of a paragraph style:
    > The new attributes label-aligned-at and indent-at of a certain list
    > level of a list style are used as indent attributes for a paragraph,
    > which have such a paragraph style applied, if neither the automatic
    > paragraph style nor the paragraph style provides own indent attributes 
    > (fo:text-indent and fo:margin-left). If indent attributes are given at
    > the automatic paragraph style or the paragraph style, these attributes
    > are used to determine the alignment position and the indent for the text 
    > lines following the first line.
    > 
    > 
    > The new attributes inclusive its explanations should be inserted into 
    > chapter 15.12 "List-Level Style Properties", referencing to ODF 1.1 
    > specification document.
    > 
    > 
    > The new attributes cover the following use cases. These use cases are 
    > hard or even impossible to be expressed with the existing attributes:
    > (1) Imagine the following list item layout:
    > - center align the list label of the list items at absolute position 2cm 
    > - center of the actual list label is at absolute position 2cm
    > - start of the text of the first line and the following lines at 
    > absolute position 3cm.
    > This list item layout can be expressed using the new attributes:
    > text:label-followed-by="listtab"
    > text:list-tab-stop-position="3cm"
    > text:label-aligned-at="2cm"
    > text:indent-at="3cm"
    > fo:text-align="center"
    > 
    > (2) List item layout
    > - start the list label at absolute position 2cm
    > - start of the text of the first line at absolute position 3cm
    > - start of the text of the following lines at absolute position 4cm.
    > can be expressed by the new attributes:
    > text:label-followed-by="listtab"
    > text:list-tab-stop-position="3cm"
    > text:label-aligned-at="2cm"
    > text:indent-at="4cm"
    > fo:text-align="left"
    > 
    > (3) Think of the following list item layout:
    > - right align the list label at absolute position 2cm - list label end 
    > at absolute position 2cm
    > - start of the text of the first line directly after the list label 
    > separated by a space
    > - start of the following lines at absolute position 5cm.
    > This is easy to be expressed with the new attributes:
    > text:label-followed-by="space"
    > text:list-tab-stop-position="5cm"
    > text:label-aligned-at="2cm"
    > text:indent-at="5cm"
    > fo:text-align="right"
    > 
    > 
    > Please support my proposal and vote on it, even when I'm not attending 
    > the TC call, because I'm sick or on vacation.
    > 
    > 
    > Regards, Oliver.