データベースを行うのにXMLとSQLiteどちらがいいのか考えてみた。このデータベースはフリーソフトなどが利用するデータベースで一時的な利用ではなく、永続的な利用の場合。
XMLの場合、一応、可読性に優れ、簡単な構造なら人の手で行える。ただしスレッド処理を行うためにはファイルロック等を考えなければならない。
sqliteの場合、トランザクションを自作する必要がないが、dbのファイルをsqlの知識がない人が触ることができない。
よくよく考えてみると、XMLはデータ交換用として強く、データベース管理には不向きだったような。かつ、sqliteはパブリックドメインなのでスタティックライブラリにして中に入れてもライセンスの影響を受けない。で、人間もしくは機械に食わせたい場合のみにXMLを吐けばいい、ということに気がついた。
sqlite決定。