Right now i use a rough prototype (one of my friend told me that i'm crazy, when i show him what i did :)) Anyway it's just a prototype(with terrible performance) :). I use eXist XML database with XPath support and objects-tree to XML mapping. put: objects-tree => XML => eXist get: XPath => eXist => XML => objects-tree Code for previous example with this scenario looks like: db.get "//[@class = 'Topic' and @name = 'first']" -- Posted via http://www.ruby-forum.com/.