=head1 NAME ODF::lpOD::Table - Table management =head1 DESCRIPTION The present manual page introduces the way lpOD allows the user to handle ODF I and their components, namely the I, I and I. The lpOD API doesn't make differences between document types in this area. So, tables are dealed with in the same way for a spreadsheet document (whose content is just a set of tables) as for any other document. A table is an instance of the lpOD C class. An C object is a structured container that holds two sets of objects, a set of I and a set of I, and that is optionally associated with a I. The basic information unit in a table is the I. Every cell is contained in a row. Table columns don't contain cells; an ODF column holds information related to the layout of a particular column at the display time, not content data. A cell can directly contain one or more paragraphs. However, a cell may be used as a container for high level containers, including lists, tables, sections and frames. Every table is identified by a name (which must be unique for the document) and may own some optional properties. =head1 Table creation and retrieval Like any other C table may be created either from scratch according to various parameters or by cloning an existing table using the generic C method of C. The second way is the most recommended one because, while it looks very easy to create a table with a default appearance, a typical convenient layout may require a lot of style definitions and is much more difficult to specify by program than through a point-and-click interface. A table is created using C with a mandatory name as its first argument and the following optional parameters: =over C, C: the initial size of the new table (rows and columns), knowing that it's zero-sized by default (beware: because cells are contained in rows, no cell is created as long as C is less than C<1>); =item C: specifies a length and a width (in this order) as a single string (the two values are comma-separated); may replace C and C; =item C