Schema Central  >  CALS  >  soextblx.xsd  >  tgroup
Advanced search

tgroup

Each tgroup effectively identifies a new portion of a table. The colspecs and the colnames in each tgroup are independent of any other tgroup. The colspecs in a tgroup apply to its tbody. The colspecs in a tgroup shall be in left-to-right column order. Explicit colnums in the different colspecs of a tgroup shall be unique, in ascending order left-to-right, in the range 1 to the number of colspecs, which is not to exceed the value of the cols attribute of tgroup.

The colnames in the different colspecs of a tgroup shall be unique. (A colname may have the same value as the colnum of the same colspec if restricted to digits.) The colspecs of tbody also apply to thead.

All tgroups of a table shall have the same width, so the table frame can surround them uniformly. Each thead and tbody has that total width as well. For each tgroup, let the minimum tgroup width be the sum of the fixed portions of the set of colspec colwidths in that tgroup which should not exceed the indicated total width, determined from the tablepgwide attribute. If pgwide is "0", the target total width is the galley column width, possibly reduced by the current indents in force; if pgwide is non-zero, the target total width is the full page width. The minimum table width shall be the maximum of all the minimum tgroup widths.

The total width for any tgroup may be specified with some columns having fixed colwidths and others having proportional widths. When no proportional width are specified for a given tgroup, the width of that tgroup shall be the sum of the fixed widths of the columns. When any proportional widths are specified, the unit proportion is determined by starting with the target table width determined from the tablepgwide value non-zero for full width, "0" for galley column width (possibly affected by current indents). Reduce that by the sum of border widths and column ruling widths and the fixed colwidths to get the available proportional width. Sum the proportional factors N over all columns with proportional parts "N*" and including "1*" for each implicit colwidth when the value of the tgroup cols exceeds the number of colspecs in that tgroup. Then the unit proportion is the available proportional width divided by the sum of the proportionality factors. Note that the fixed widths for frame and colsep rulings are deemed to be small and system dependent, not essentially included as fixed parts of each colwidth in colspec.

If the table fixed widths take up too much of the indicated table width, then it is up to the output system to resolve the conflict. If there are multiple tgroups in a single table with fixed widths (i.e., no proportional parts) such that these fixed widths differ from one another, then it is up to the output system to determine the interpretation.

Elements inside a tgroup may at times inherit default values from the attributes on the containing tgroup. Furthermore, a tgroup element may have some stylesheet associated with it that may provide default values for some or all of its attributes.

If a tgroup element has no explicit specification for an attribute but does have an associated style sheet that gives a specification for this attribute, then the stylesheet value shall be used as the value that is inherited from this element.

Element information

Namespace: None

Schema document: soextblx.xsd

Type: Anonymous

Properties: Global, Qualified

Content

  • Sequence [1..1]
    1. colspec [0..*]Specifies a column, a vertical portion of a table. The default values come from the tgroup or thead starting the current (enclosing) group. Each colspec is for a single column in left-to-right order, so it properly has a column number, colnum, implicitly in order starting from 1, and an optional column name (colname) by which it is known when referenced by any entry . Any references from entrys within the thead to colname, namest, or nameend refer to values defined by the set of colspecs in the containing tgroup. colspecs from the containing tgroup apply to thead and tbody.
    2. thead [0..1]Identifies the heading rows of a tgroup, displayed as the first rows, and again at the top of any continuation after a physical break between rows in tbody.
    3. tbody [1..1]Identifies the body of a tgroup.

Attributes

NameOccTypeDescriptionNotes
cols [1..1]xsd:positiveIntegernumber of columns. Number of columns in the tgroup. The value of this attribute must be an integer greater than zero.
colsep [0..1]yesornocolumn separators (vertical ruling). Specifies the presence or absence of column separator rules. Provides the default value for all descendant elements.
rowsep [0..1]yesornorow separators (horizontal ruling). Specifies the presence or absence of row separator rules. Provides the default value for all descendant elements.
align [0..1]Anonymoushorizontal alignment of table entry content. Text horizontal position within the column. Applies to text that is #PCDATA or other in-line elements, not further contained in another element with its own formatting style, such as paragraph, list, or annotation. Default source for colspec align. Possible default source for entry.

Used in

  • Anonymous type of element table

Sample instance

<tgroup cols="5" align="left" colsep="1" rowsep="1">
   <colspec colname="c1"/>
   <colspec colname="c2"/>
   <colspec colname="c3"/>
   <colspec colnum="5" colname="c5"/>
   <thead>
      <row>
         <entry namest="c1" nameend="c2" align="center">Horizontal Span</entry>
         <entry>a3</entry>
         <entry>a4</entry>
         <entry>a5</entry>
      </row>
   </thead>
   <tfoot>
      <row>
         <entry>f1</entry>
         <entry>f2</entry>
         <entry>f3</entry>
         <entry>f4</entry>
         <entry>f5</entry>
      </row>
   </tfoot>
   <tbody>
      <row>
         <entry>b1</entry>
         <entry>b2</entry>
         <entry>b3</entry>
         <entry>b4</entry>
         <entry morerows="1" valign="middle">
            <para>
                        Vertical Span</para>
         </entry>
      </row>
      <row>
         <entry>c1</entry>
         <entry namest="c2"
                nameend="c3"
                align="center"
                morerows="1"
                valign="bottom">Span Both</entry>
         <entry>c4</entry>
      </row>
      <row>
         <entry>d1</entry>
         <entry>d4</entry>
         <entry>d5</entry>
      </row>
   </tbody>
</tgroup>