[xsl] [Slightly OT] Java accessible XML database allowing DOM updates?
Subject: [xsl] [Slightly OT] Java accessible XML database allowing DOM updates? From: Harry Ohlsen <harryo@xxxxxxxxxxxxxxxx> Date: Mon, 12 May 2003 16:17:11 +1000
My apologies for this slightly OT question, but I figured the people here were likely to be able to give me a pointer either to what I'm looking for, or to the right place to ask this question.
I have a situation where I'm performing quite complex updates to XML documents from within Java ... modifying content, inserting/removing/replacing subtrees where the criteria for what to change is based on content from other subtrees ... very likely all do-able with XSLT, but not do-able in XSLT using my brain :-).
Some time back, I spent a number of weeks trying to work out how to do one of these updates using XSL, but just couldn't get my head around it, which is why I've fallen back to something my poor old brain can cope with ... ie, procedural, DOM-based Java code. The problem I have now is that, while I can do everything I want to do, or can conceive of wanting to do in the near future, because the code is DOM-based, it consumes very large amounts of memory (not sure whether this would have been different with XSL, but that's moot at this stage, really).
Hence, I'm seeking some kind of Java library that allows me to do general DOM modifications (preferably, with XPath query capabilities), but doesn't consume outrageous amounts of memory. What I guess I'm looking for is something that can take XML documents, transform them into a more space-efficient form on disk, allow generic updates of that intermediate form, and convert the results back into normal XML documents.
I've found a number of XML DBs, but they either don't seem to allow updates or don't have built-in support for Java code (ie, I'd probably have to write lots of JNI to use them); most of them seem more oriented toward doing searches and retrieval of content.
One last thing: I'd prefer open source stuff, but am happy to look at commercial tools, if they're not horribly expensive.
Again, apologies for the OT query. Some of you people just seemed so knowledgeable back when I was trying to do stuff with XSL that I figured it was worth asking here and I figured you'd understand the kind of thing I'm trying to do.