Hello Etanchaud,
Such a preprocessing transformation step would be very useful.
This means that BaseX does not have such a tranformation step at present.
To achieve this in the current BaseX version, what would be the efficient method? I have now tried creating database by importing the XML file first.Then inserting attribute on all child nodes using an xquery recursive function. It works in small files. But gives "Out of memory" in large files say 1Gb.
Please help.
Thanks in advance, Mallika Jacob
On Fri, Oct 31, 2014 at 3:07 PM, Fabrice Etanchaud fetanchaud@questel.com wrote:
Such a preprocessing transformation step would be very useful.
In order to do that entirely in BaseX, I load the data twice.
Once in a temporary collection (that may be an in memory collection), from where I perform the transformations.
Then I load the transformed data in the final collection.
A great improvement would be to provide the import step with an iteration’s xpath and a xquery transformation function,
So the transformations are loaded instead (Zorba and Saxon-enterprise have a streaming mode like this).
Best regards,
Fabrice Etanchaud
Data integration team
Questel/Orbit
*De :* basex-talk-bounces@mailman.uni-konstanz.de [mailto: basex-talk-bounces@mailman.uni-konstanz.de] *De la part de* Mallika Jimmy *Envoyé :* vendredi 31 octobre 2014 10:08 *À :* basex-talk@mailman.uni-konstanz.de *Objet :* [basex-talk] Import a large XML file and add an attribute on all children
Hello,
We have a requirement to create a database by importing a large XML file. During this process, we also want to insert a particular attribute on all child nodes. Which is the efficient method to do the same? The file size is nearly 1GB.
Thanks in advance,
Mallika Jacob