12. A system for providing assistance to a user who is editing an extensible markup language (XML) document, comprising: a computing device running an editor for editing an XML document; and a display device coupled to the computing device that displays the editor and the XML document, wherein the editor running on the computing device causes the computing device to: present to the user the XML document for editing via the display device; monitor a user input for an edit event; in response to detecting an edit event, inferring a markup language grammar from current content of the XML document; and provide assistance to the user based on the inferred markup language grammar, wherein the markup language grammar comprises XML syntax rules inferred from the current content of the XML document.
12. A system for providing assistance to a user who is editing an extensible markup language (XML) document, comprising: a computing device running an editor for editing an XML document; and a display device coupled to the computing device that displays the editor and the XML document, wherein the editor running on the computing device causes the computing device to: present to the user the XML document for editing via the display device; monitor a user input for an edit event; in response to detecting an edit event, inferring a markup language grammar from current content of the XML document; and provide assistance to the user based on the inferred markup language grammar, wherein the markup language grammar comprises XML syntax rules inferred from the current content of the XML document. 14. The system of claim 12 , wherein the editor causes the computing device to infer the markup language grammar automatically from the current content and load the markup language grammar into the memory of the apparatus.