I know that this question has been answered somewhere before, but I simply cannot seem to hunt down a definitive answer and all pointers lead back to this list. So, I apologize in advance for the repetition.
I'm relatively new to SAX, but not-quite-so-new to XML,DOM and XSLT. My task is to take a large XML file with multiple occurences of a specific kind of element. I need to build an index that lets me retrieve instances of that element from the file (at a later date) very quickly.
My thought for this was to use the locator in a SAX parser to identify the location of the start of the element tag in the file, record that location persistently and then use the persistent location later on to get my element (and its contents) back quickly.
My questions are:
Is there a SAX implementation for which the locator is known to be accurate? I noted somewhere (in the SAX specification?) that the locator is kind of intended for debugging more than document manipulation. (and if it is written in c++ that makes my life MUCH easier)
Is there an easier way to do what I need to do? For each file I look at the element-of-interest will change. There may be multiple (and different) types of interesting elements in a single file. I am working with static files that will not change once I process them.
Any help greatly appreciated!