8. A computer program product having a non-transitory computer-readable storage medium having computer-executable code for determining a set of legal documents to present to a user for acceptance as part of a transaction, the computer-executable code when executed performing steps comprising: receiving information describing a type of transaction and a geographic location associated with the transaction; identifying a set of hierarchical documents pertinent to the transaction based at least in part on the received information, the set including a root document identified based at least in part on the type of transaction and the geographic location associated with the transaction, the root document specifying a transaction identifier of the transaction and metadata, the set further including one or more dependency documents of the root document identified responsive to an analysis of the metadata specified by the root document; pruning the set of hierarchical documents responsive to data describing documents that a user involved in the transaction has previously accepted; and outputting information pertaining to the pruned set of hierarchical documents for presenting the pruned set of hierarchical documents to the user involved in the transaction for acceptance as part of the transaction.
8. A computer program product having a non-transitory computer-readable storage medium having computer-executable code for determining a set of legal documents to present to a user for acceptance as part of a transaction, the computer-executable code when executed performing steps comprising: receiving information describing a type of transaction and a geographic location associated with the transaction; identifying a set of hierarchical documents pertinent to the transaction based at least in part on the received information, the set including a root document identified based at least in part on the type of transaction and the geographic location associated with the transaction, the root document specifying a transaction identifier of the transaction and metadata, the set further including one or more dependency documents of the root document identified responsive to an analysis of the metadata specified by the root document; pruning the set of hierarchical documents responsive to data describing documents that a user involved in the transaction has previously accepted; and outputting information pertaining to the pruned set of hierarchical documents for presenting the pruned set of hierarchical documents to the user involved in the transaction for acceptance as part of the transaction. 13. The computer program product of claim 8 , wherein pruning the set comprises: responsive to a document in the hierarchical set being outside of a validity period where the document is valid, removing the document from the hierarchical set.