Im trying to understand the XML Spec: why does SGML (and XML) have such difficult terminology?
For implementation to succeed, the terminology needs to be precise. Design goal 8 of the specification tells us that “the design of XML shall be formal and concise”. To describe XML in formal terms, the specification uses the concise language of Computer Science, which is often confusing to non-CS people because it uses well-known English words in a specialised sense which can be very different from their commonly understood meanings — for example, ‘grammar’, ‘production’, ‘token’, or ‘terminal’.