Uploaded image for project: 'OASIS Open Document Format for Office Applications (OpenDocument) TC'
  1. OASIS Open Document Format for Office Applications (OpenDocument) TC
  2. OFFICE-4169

Add a new attribute contains-footer to <table:database-range> (9.4.15, part3, ODF 1.3)

    XMLWordPrintable

    Details

    • Type: Improvement
    • Status: Open
    • Priority: Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: None
    • Labels:
      None
    • Proposal:
      Hide

      Define a new attribute table:contains-footer of the <table:database-range> element in a new section 19.nnn.

      19.nnn table:contains-footer
      The table:contains-footer attribute specifies whether the database range's last row/column should be used in a special meaning, e.g being excluded from sorting and filtering. The attribute table:contains-footer affects the last column if the <table:database-range> element has an attribute table:orientation with value column, otherwise it affects the last row of the cell rectangle specified in the table:target-range-address (19.736) attribute.

      The defined values for the table:contains-footer attribute are:
      false: the last row or column has no special meaning
      true: the last row or column has a special meaning
      The default value for this attribute is false.
       


      Add the new attribute in the schema.

      — OpenDocument-v1.4-schema.rng 2024-08-22 18:27:36.133519500 +0200
       +++ OpenDocument-v1.4-schema-totals.rng 2024-09-14 20:18:57.506961700 +0200
       @@ -14815,10 +14815,15 @@
       <rng:attribute name="table:contains-header">
       <rng:ref name="boolean"/>
       </rng:attribute>
       </rng:optional>
       <rng:optional>
       + <rng:attribute name="table:contains-footer">
       + <rng:ref name="boolean"/>
       + </rng:attribute>
       + </rng:optional>
       + <rng:optional>
       <rng:attribute name="table:display-filter-buttons">
       <rng:ref name="boolean"/>
       </rng:attribute>
       </rng:optional>
       <rng:attribute name="table:target-range-address">
      
      Show
      Define a new attribute table:contains-footer of the <table:database-range> element in a new section 19.nnn. 19.nnn table:contains-footer The table:contains-footer attribute specifies whether the database range's last row/column should be used in a special meaning, e.g being excluded from sorting and filtering. The attribute table:contains-footer affects the last column if the <table:database-range> element has an attribute table:orientation with value column , otherwise it affects the last row of the cell rectangle specified in the table:target-range-address (19.736) attribute. The defined values for the table:contains-footer attribute are: • false : the last row or column has no special meaning • true : the last row or column has a special meaning The default value for this attribute is false .   Add the new attribute in the schema. — OpenDocument-v1.4-schema.rng 2024-08-22 18:27:36.133519500 +0200 +++ OpenDocument-v1.4-schema-totals.rng 2024-09-14 20:18:57.506961700 +0200 @@ -14815,10 +14815,15 @@ <rng:attribute name= "table:contains-header" > <rng:ref name= "boolean" /> </rng:attribute> </rng:optional> <rng:optional> + <rng:attribute name= "table:contains-footer" > + <rng:ref name= "boolean" /> + </rng:attribute> + </rng:optional> + <rng:optional> <rng:attribute name= "table:display-filter-buttons" > <rng:ref name= "boolean" /> </rng:attribute> </rng:optional> <rng:attribute name= "table:target-range-address" >

      Description

      When using a database range in a spreadsheet, often the last row (table:orientation="row") or last column (table:orientation="column") does not contain a data record but an aggregate function (e.g. SUM, AVERAGE, SUBTOTAL) of the data record field.

      Such row/column is usually excluded from sorting or filtering, same as a header/label row at the beginning is excluded.

      Applications have currently no way to save such information to ODF, thus the information is lost in ODF and after reloading the file, the last row/column will be treated as normal data record.

      Excel workarounds the problem by reducing the size, when a table with totals row is exported to ODF. LibreOffice does currently not use a workaround.

      OOXML has e.g. attributes totalsRowCount, totalsRowFunction, totalsRowFormula to handle such last row.
      HTML has the distinction between <thead>, <tbody> and <tfoot> to handle it.

      ODF has already a similar distinct handling of the last row/column in its <table:table-template> element for styling a table.

      Thus it is desirable to be able to save the information to ODF, that the last row/column of a database range does not contain a data record, but is a row/column with totals, for example.

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              regina.henschel Regina Henschel
            • Watchers:
              2 Start watching this issue

              Dates

              • Created:
                Updated: