Friday, March 11

A lightweight XML Database

When you create an enterprise application, assume it requires database support, you can choose from MS SQL Server, Oracle, Open Source MySQL, PostgressSQL... But if you are creating a desktop application, you have to consider what kind of database engine/driver that your users already installed in their desktop.

MS Access database was a good choice, because most (but not all) users have it installed. I am always curious why they need MS Access.

Anyway, a lightweight database is crucial for desktop developer. One option is to use plain text file to store and search data. That is pathetic, if your data is complicate. I am thinking to have an XML Database, that data can be stored in structured XML file. Google tells me about XML Database:

1, Most of the XML Database projects are no longer exist.
2, Most of them use XPath, XSLT or XQuery to search data.

XPath, XSLT and XQuery have a steep learning curve, and they are not following the design of standard SQL language. What I would like to have is like the description of Ashpool project
It's goal is to use standard SQL92 syntax to query, add, update, and delete XML documents.
Unfortunately, this project is dead as well.

BTW, a compact version, sometimes call mobile version, of MS SQLSERVER is installed in all WindowsCE device. So if you are developing software for WinCE device, you don't need to worry about this.