[odf-discuss] Full Python API for ODF

Soren Roug soren.roug at eea.europa.eu
Wed Jan 10 15:50:12 EST 2007


I mentioned five days ago on the developer list that I was almost ready to 
unveil my Python API for ODF.  Now it's here. It's called odfpy.

Odfpy aims to be a complete API for OpenDocument in Python. Unlike other more 
convenient APIs, this one is essentially an abstraction layer just above the 
XML format. The main focus has been to prevent the programmer from creating 
invalid documents. It has checks that raise an exception if the programmer 
adds an invalid element, adds an attribute unknown to the grammar, forgets to 
add a required attribute or adds text to an element that doesn't allow it.

These checks and the API itself were generated from the RelaxNG schema, and 
then hand-edited. Therefore the API is complete and can handle all ODF 
constructions, but could be improved in its understanding of data types.

I've added some examples in the api-for-odfpy.odt manual. Most of the manual 
is also generated from the RelaxNG schema.

If you're interested in giving it a try, you currently have to export it from 
SVN. You do:

svn export http://opendocumentfellowship.org/repos/odftools/trunk odftools
python setup.py build
su
python setup.py install

Then try some of the examples in the manual.

Have fun
Søren Roug
European Environment Agency



More information about the odf-discuss mailing list