12. A method for analyzing a document comprising a plurality of primitive elements, the method comprising: identifying aligned gaps in a plurality of text lines in a column of the document; determining which of the aligned gaps are indicative of spacing between a list item label and a list item in order to identify text lines that linclude the aligned gaps as list items; identifying hierarchical levels for the list items based on alignment, spacing, and content of the list items; and defining a hierarchically-organized set of lists for the column in which list items with the same hierarchical level are in the same list.
12. A method for analyzing a document comprising a plurality of primitive elements, the method comprising: identifying aligned gaps in a plurality of text lines in a column of the document; determining which of the aligned gaps are indicative of spacing between a list item label and a list item in order to identify text lines that linclude the aligned gaps as list items; identifying hierarchical levels for the list items based on alignment, spacing, and content of the list items; and defining a hierarchically-organized set of lists for the column in which list items with the same hierarchical level are in the same list. 15. The method of claim 12 , wherein identifying hierarchical levels for the list items comprises: determining, for each text line with a gap indicative of spacing between a list item label and a list item, a number of gaps to the left of the list item label; and assigning each of said text lines to a hierarchical level based on the number of gaps left of the list item label for the text line.