Introduction
------------

RDFMessage is a package providing support for the parsing of mailbox and
message resources, the conversion of such resources to RDF-based information,
and the extraction of such information in message, mailbox and XML formats.

Quick Start
-----------

For use with sqltriples, a suitable store must first be initialised in a
suitable database system - see the sqltriples documentation for details.

Try importing a mailbox file into an sqltriples store in the file tmp:

python tools/Mailbox.py --store=tmp --store-type=sqltriples \
  --module=pysqlite2 --uriref=MyMailbox --input-mbox=mailbox.txt

Try exporting a mailbox as XML:

python tools/Mailbox.py --store=tmp --store-type=sqltriples \
  --module=pysqlite2 --uriref=MyMailbox --output-xml=mailbox.xml

Try exporting a mailbox as text:

python tools/Mailbox.py --store=tmp --store-type=sqltriples \
  --module=pysqlite2 --uriref=MyMailbox --output-mbox=mailbox-out.ics

Contact, Copyright and Licence Information
------------------------------------------

The current Web page for RDFMessage at the time of release is:

http://www.boddie.org.uk/python/RDFMessage.html

Copyright and licence information can be found in the docs directory - see
docs/COPYING.txt, docs/gpl-3.0.txt and docs/lgpl-3.0.txt for more information.

Dependencies
------------

RDFMessage has the following basic dependencies:

Package                     Release Information
-------                     -------------------

RDFFormats                  0.1.2
libxml2dom                  0.4.3
sqltriples                  0.3
CMDsyntax                   Tested with 0.91

URLs
----

RDFFormats                  http://www.boddie.org.uk/python/RDFFormats.html
libxml2dom                  http://www.boddie.org.uk/python/libxml2dom.html
sqltriples                  http://www.boddie.org.uk/python/sqltriples.html
CMDsyntax                   http://www.boddie.org.uk/david/Projects/Python/CMDSyntax/index.html

New in RDFMessage 0.1.2 (Changes since RDFMessage 0.1.1)
--------------------------------------------------------

  * Relicensed under the LGPL version 3 or later.
  * Added Ubuntu Feisty (7.04) package support.

New in RDFMessage 0.1.1 (Changes since RDFMessage 0.1)
------------------------------------------------------

  * Updated the RDFFormats dependency to solve deep node removal issues.
  * Added "from", "to" and "cc" as connector labels.

Release Procedures
------------------

Update the RDFMessage/__init__.py __version__ attributes.
Change the version number and package filename/directory in the documentation.
Change code examples in the documentation if appropriate.
Update the release notes (see above).
Check the setup.py file and ensure that all package directories are mentioned.
Check the release information in the PKG-INFO file and in the package
changelog (and other files).
Tag, export.
Generate the API documentation.
Remove generated .pyc files: rm `find . -name "*.pyc"`
Archive, upload.
(Upload the introductory documentation.)
Update PyPI entry.

Generating the API Documentation
--------------------------------

In order to prepare the API documentation, it is necessary to generate some
Web pages from the Python source code. For this, the epydoc application must
be available on your system. Then, inside the distribution directory, run the
apidocs.sh tool script as follows:

./tools/apidocs.sh

Some warnings may be generated by the script, but the result should be a new
apidocs directory within the distribution directory.

Making Packages
---------------

To make Debian-based packages:

  1. Create new package directories under packages if necessary.
  2. Make a symbolic link in the distribution's root directory to keep the
     Debian tools happy:

     ln -s packages/ubuntu-hoary/python2.4-rdfmessage/debian/

  3. Run the package builder:

     dpkg-buildpackage -rfakeroot

  4. Locate and tidy up the packages in the parent directory of the
     distribution's root directory.
