1. A method, including: making a determination whether a document is an item-list document, the item-list document having a visual area in the document where items are listed in a tabular format; based on a determination the document is an item-list document, processing the document, using one or more processors, to expose a plurality of item elements associated with one or more items of the document, the plurality of item elements including visual information used to render the document, the visual information including at least one of images and text; estimating a first number of items in a first direction and a second number of items in a second direction, the first number of items in the first direction corresponding to columns and the second number of items in the second direction corresponding to rows, each direction being relative to a two dimensional rendering of a first item-list region; identifying repeating item element types in at least one of the first direction and the second direction; creating an element cluster for each identified repeating element type, the element cluster having an orientation in either the first direction or the second direction; identifying each item of the one or more items based on one or more of the plurality of item elements and corresponding visual information; initializing a bounding box for each item of the one or more items including creating a first bounding box for each row having a width equal to a width of the column and an initial height of zero, and updating each of the first bounding boxes in the first direction until a single instance of each element cluster is within each first bounding box to create a number of new item-list regions corresponding to the number of rows; updating each of the bounding boxes in size individually to contain each of the items of the one or more items; and creating a subdocument for each of the items of the one or more items in the updated bounding boxes.