1. A method for performing error checking on a structured document, comprising: performing by a first thread executing on at least one of one or more processors that are capable of performing multi-threaded executions: identifying one or more new elements in the document; assigning an identifier (ID) to each new element; and storing a copy of each new element in a first queue, the copy of each new element including the ID associated with the new element and at least one of text and structural information associated with the new element; and performing by a second thread executing on the at least one of the one or more processors: retrieving each copy of each new element from the first queue; applying error checking to each retrieved copy of each new element to detect errors associated therewith; and in response to detecting an error associated with a retrieved copy of a respective new element, generating an error checking result comprising at least the ID associated with the retrieved copy of the respective new element.