So, we had to ask ourselves: should there even be an Anastasia 3? Have the other tools matured to the degree that we can do all we want with those other tools? Should we let her quietly retire, with more bits falling off the Anastasia electronic books year by year till, one day, they are no longer readable — as indeed is happening with the DynaText books I made in the 1990s.
If we can find another application that does what Anastasia does, then we should indeed move to it. I started writing Anastasia, all those years ago, because there were two things which we needed to do and which other systems, in those days, could not do for us. These two things were:
1. Handle really large documents, really fast. From the beginning, Anastasia was designed to work with a series of optimized binary files, created from the original SGML/XML, structured to allow Anastasia to move to any part of the file, know what is all around that part of the file, and process it very fast, regardless (for most practical purposes) of the size of the document. The only limit Anastasia has is that no file should exceed 4 gigabytes in size. So far, no Anastasia book has come anywhere near this limit.
2. Handle arbitrary sequences of data, across and irrespective of element boundaries. This is key to Anastasia’s ability to handle multiple hierarchies within the one document: to present the transcription of a single page, or to present an arbitrary number of characters before or after any point of the document, while being fully aware of the markup context of those characters.
So now, we start looking. We know what we can do, now, with Anastasia, as she is. If we can find an XML application out there which can do this — then that will be the way to go.