1. A computer implemented method for deploying a package for a software application, the package comprising metadata that includes multiple portions that are identified with an order for processing the multiple portions, the computer implemented method comprising: responsive to receiving a request to deploy the package comprising the metadata, processing a first portion of the metadata describing the package; processing a second portion of the metadata defining configurations to be made to a database for the software application after processing the first portion of the metadata; processing a third portion of the metadata describing all other content for the software application after processing the second portion of the metadata; and configuring the database using the second portion of the metadata after processing the second portion of the metadata and prior to processing the third portion of the metadata; wherein the step of processing the first portion of the metadata, the step of processing the second portion of the metadata, and the step of processing the third portion of the metadata comprising: validating each portion of the metadata during processing of each of the first portion, the second portion and the third portion of the metadata; identifying a set of extensible markup language documents containing the first portion of the metadata, wherein the set of extensible markup language documents has an order with respect to one another; constructing a set of objects for each extensible markup language document in the order for the set of extensible markup language documents; and performing an action on each object in the set of objects based on the order for the set of extensible markup language documents.