XStorage has been designed to fill a gap between structured XML files and the way application have to access it's properties.
We expect XStorage to be used in application where simultaneous access to XML documents is required for reading and writing and where is a need to direct access to XML elements without parsing and loading the whole XML .
The programmer should consider XStorage as a database, where parsed XML document is stored.
Each element of the XML document has it's own database record with references to the parent, child nodes and node's attributes. XStorage API provide locking mechanism on XML node. See XStorage Transaction Engine
XStorage provides programmer with functionality to access individual elements of the XML document the same way they access database records in SQL database.
Currently programmer have to load XML into memory using various parsers and after that access XML elements.
XStorage Search engine could be used to locate nodes of the XDocument, which match search criteria and access their properties using XDocument API.
More importantly, XStorage allows simultaneous access to XML elements. XStorage Transaction Engine provides secure and robust access to the same XML document from various applications.
XStorage can be easily integrated into existing XML application. We provide compatibility and bidirectional conversion between DOM and XDocument. For more information see Creating DOM object from XDocument.
Developers who need to build applications for specific purposes may find it more efficient to use SAX2 to create XDocument and then manage the information in their internal data structures. See Using SAX to create XDocument for more information.
XStorage comes with various samples, which demonstrate functionality of XStorage and XDocument. API. Please see XML Laboratory Visual Basic application for more information.