TableEventProducer (Apache FOP Core 2.11 API)
Date: 2025-04-24

org.apache.fop.fo.flow.table

## Interface TableEventProducer

- All Superinterfaces:
    EventProducer

      public interface TableEventProducer
      extends EventProducer

  Event producer interface for table-specific XSL-FO validation messages.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Interface and Description
    --- | ---
    `static class` | `TableEventProducer.Provider` Provider class for the event producer.

  - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `void` | `breakIgnoredDueToRowSpanning(Object source, String elementName, boolean breakBefore, Locator loc)` Break ignored due to row spanning.
    `void` | `cellOverlap(Object source, String elementName, int column, Locator loc)` Cell overlap.
    `void` | `footerOrderCannotRecover(Object source, String elementName, Locator loc)` The table-footer was found after the table-body.
    `void` | `forceNextColumnNumber(Object source, String elementName, Number propValue, int columnNumber, Locator loc)`
    `void` | `noMixRowsAndCells(Object source, String elementName, Locator loc)` No mixing of table-rows and table-cells is allowed for direct children of table-body.
    `void` | `nonAutoBPDOnTable(Object source, Locator loc)` A value other than "auto" has been specified on fo:table.
    `void` | `noTablePaddingWithCollapsingBorderModel(Object source, Locator loc)` Padding on fo:table is ignored if the collapsing border model is active.
    `void` | `paddingNotApplicable(Object source, String elementName, Locator loc)` padding-* properties are not applicable.
    `void` | `startEndRowUnderTableRowWarning(Object source, Locator loc)` starts-row/ends-row for fo:table-cells non-applicable for children of an fo:table-row
    `void` | `tooManyCells(Object source, Locator loc)` Column-number or number of cells in the row overflows the number of fo:table-column specified for the table.
    `void` | `valueMustBeBiggerGtEqOne(Object source, String propName, int actualValue, Locator loc)` Property value must be 1 or bigger.
    `void` | `warnImplicitColumns(Object source, Locator loc)` table-layout=fixed and column-width unspecified => falling back to proportional-column-width(1)

- - ### Method Detail

    - #### nonAutoBPDOnTable

          void nonAutoBPDOnTable(Object source,
                                 Locator loc)

      A value other than "auto" has been specified on fo:table.
      Parameters:
        `source` - the event source
        `loc` - the location of the error or null
      Event.severity:
        WARN

    - #### noTablePaddingWithCollapsingBorderModel

          void noTablePaddingWithCollapsingBorderModel(Object source,
                                                       Locator loc)

      Padding on fo:table is ignored if the collapsing border model is active.
      Parameters:
        `source` - the event source
        `loc` - the location of the error or null
      Event.severity:
        WARN

    - #### noMixRowsAndCells

          void noMixRowsAndCells(Object source,
                                 String elementName,
                                 Locator loc)
                          throws ValidationException

      No mixing of table-rows and table-cells is allowed for direct children of table-body.
      Parameters:
        `source` - the event source
        `elementName` - the name of the context node
        `loc` - the location of the error or null
      Throws:
        `ValidationException` - the validation error provoked by the method call
      Event.severity:
        FATAL

    - #### footerOrderCannotRecover

          void footerOrderCannotRecover(Object source,
                                        String elementName,
                                        Locator loc)
                                 throws ValidationException

      The table-footer was found after the table-body. FOP cannot recover with collapsed border model.
      Parameters:
        `source` - the event source
        `elementName` - the name of the context node
        `loc` - the location of the error or null
      Throws:
        `ValidationException` - the validation error provoked by the method call
      Event.severity:
        FATAL

    - #### startEndRowUnderTableRowWarning

          void startEndRowUnderTableRowWarning(Object source,
                                               Locator loc)

      starts-row/ends-row for fo:table-cells non-applicable for children of an fo:table-row
      Parameters:
        `source` - the event source
        `loc` - the location of the error or null
      Event.severity:
        WARN

    - #### tooManyCells

          void tooManyCells(Object source,
                            Locator loc)
                     throws ValidationException

      Column-number or number of cells in the row overflows the number of fo:table-column specified for the table.
      Parameters:
        `source` - the event source
        `loc` - the location of the error or null
      Throws:
        `ValidationException` - the validation error provoked by the method call
      Event.severity:
        FATAL

    - #### valueMustBeBiggerGtEqOne

          void valueMustBeBiggerGtEqOne(Object source,
                                        String propName,
                                        int actualValue,
                                        Locator loc)
                                 throws PropertyException

      Property value must be 1 or bigger.
      Parameters:
        `source` - the event source
        `propName` - the property name
        `actualValue` - the actual value
        `loc` - the location of the error or null
      Throws:
        `PropertyException` - the property error provoked by the method call
      Event.severity:
        FATAL

    - #### warnImplicitColumns

          void warnImplicitColumns(Object source,
                                   Locator loc)

      table-layout=fixed and column-width unspecified => falling back to proportional-column-width(1)
      Parameters:
        `source` - the event source
        `loc` - the location of the error or null
      Event.severity:
        WARN

    - #### paddingNotApplicable

          void paddingNotApplicable(Object source,
                                    String elementName,
                                    Locator loc)

      padding-* properties are not applicable.
      Parameters:
        `source` - the event source
        `elementName` - the name of the context node
        `loc` - the location of the error or null
      Event.severity:
        WARN

    - #### cellOverlap

          void cellOverlap(Object source,
                           String elementName,
                           int column,
                           Locator loc)
                    throws PropertyException

      Cell overlap.
      Parameters:
        `source` - the event source
        `elementName` - the name of the context node
        `column` - the column index of the overlapping cell
        `loc` - the location of the error or null
      Throws:
        `PropertyException` - the property error provoked by the method call
      Event.severity:
        FATAL

    - #### forceNextColumnNumber

          void forceNextColumnNumber(Object source,
                                     String elementName,
                                     Number propValue,
                                     int columnNumber,
                                     Locator loc)

      Parameters:
        `source` - the event source
        `elementName` - the name of the context node
        `propValue` - the user-specified value of the column-number property
        `columnNumber` - the generated value for the column-number property
        `loc` - the location of the error or null
      Event.severity:
        WARN

    - #### breakIgnoredDueToRowSpanning

          void breakIgnoredDueToRowSpanning(Object source,
                                            String elementName,
                                            boolean breakBefore,
                                            Locator loc)

      Break ignored due to row spanning.
      Parameters:
        `source` - the event source
        `elementName` - the name of the context node
        `breakBefore` - true for "break-before", false for "break-after"
        `loc` - the location of the error or null
      Event.severity:
        WARN

Copyright © 2025 Apache Software Foundation. All rights reserved.