1. A method for storing an XML document, the method comprising: establishing a hierarchy of nodes by generating a root node and a plurality of child nodes, the hierarchy of nodes comprising at least three levels of child nodes; storing an XML text file in the root node; storing a particular section of the XML text file in each of the plurality of child nodes, wherein the particular section of the XML text file stored in each respective child node comprises a subsection of the XML text file stored immediately above the respective child node in the hierarchy of nodes; storing a node element name in each of the plurality of child nodes, the node element name corresponding to the particular section of the XML text file stored in each of the plurality of child nodes; storing a unique directory identifier in each of the plurality of child nodes, the unique directory identifier corresponding to the node element name stored in each of the plurality of child nodes; creating an index of the hierarchy of nodes; receiving a search request; and returning at least a portion of the XML text file in response to the search request by searching the index.