Skip to content
This repository has been archived by the owner on Feb 11, 2024. It is now read-only.

Latest commit

 

History

History
113 lines (76 loc) · 3.89 KB

index.rst

File metadata and controls

113 lines (76 loc) · 3.89 KB

Introduction

lpOD -- languages & platforms OpenDocument, is a Free Software project that offers, for high level use cases, an application programming interface dedicated to document processing with the Python, Perl and Ruby languages. It's complying with the Open Document Format (ODF), i.e. the ISO/IEC 26300 international standard.

lpOD is designed according to a top-down approach. The API is bound to the document functional structure and the user's point of view [1]. As a consequence, it may be used without knowledge of the ODF specification, and allows the application developer to be focused on the business needs instead of the low level storage concerns.

This documentation describes the functional specification and the general design. We define the :doc:`Level 0 <level0>` as an encapsulation of all the low-level access logic to ODF resources (local or remote file management, packaging, encoding and XML navigation). The :doc:`Level 1 <level1-introduction>` describes a document-oriented API that hides the physical data model and reflects a typical user's view on the documents.

In order to illustrate some typical features of the API, we provide a :doc:`CookBook </cookbook>` and a set of :doc:`command line tools </cmd-line-tools>` to manipulate various spreadsheet (ODS), presentation (ODP), and text (ODT) document contents.

Jean-Marie Gouarné [2], lpOD Architect.

[1]At the opposite of implementations based on a code generation from the ODF RelaxNG schema.
[2]Jean-Marie Gouarné is the author of the Perl ODF Connector toolkit which got an "OpenOffice.org Community Innovation Program award in 2008"

lpOD Cookbooks

.. toctree::
   :maxdepth: 3

   cookbook.rst


lpod-cmd-line useful tools

.. toctree::
   :maxdepth: 2

   cmd-line-tools.rst


lpOD Architecture level 0

.. toctree::
   :maxdepth: 3

   level0.rst


lpOD Architecture level 1

.. toctree::
   :maxdepth: 2

   level1-introduction.rst
   level1-document.rst
   level1-basic-text-containers.rst
   level1-text-marks-and-indices.rst
   level1-tables-of-content.rst
   level1-notes.rst
   level1-tables.rst
   level1-structured-containers.rst
   level1-fields-and-forms.rst
   level1-graphic-content.rst
   level1-metadata.rst
   level1-styles.rst

Autogenerated code documentation

.. toctree::
   :maxdepth: 2

   autodocs.rst

PDF version of this documentation

:download:`lpOD.pdf </lpod.pdf>`