1. A method of parsing an XML (Extensible Markup Language) document in hardware, the method comprising: reading a sequence of characters from the document; identifying a token within the sequence of characters; if the token comprises a symbol: searching a symbol table for the token; and if the symbol table includes the token, extracting from the symbol table a numeric value representing the token; and generating a token header describing the token.