1. A method for partitioning hybrid markup language documents (HMLDs), comprising: scanning an HMLD and recording state information in a tag stack; in response to detecting a partition boundary in the HMLD during said scanning, selecting HMLD content based on its position relative to the partition boundary and including the selected content in an output markup language document (MLD); using the tag stack to update state information in the output MLD; and storing the output MLD on a storage device.