XML was developed by the W3C as a way to create markup languages that met the needs of developers but were still fairly easy for humans to read and understand. These 10 design goals, as defined at the W3C, explain the basics of XML and how you should write elements and attributes when using XML. If you follow these design goals, you'll have an XML schema that ultimately meets the goals of the XML working group.
1. XML shall be straightforwardly usable over the Internet.
When you write XML it should be readily available over the Internet. XML is not intended as a programming language for stand-alone systems, but rather to be used across the Internet for a wide variety of sources.2. XML shall support a wide variety of applications.
The beauty of XML is that it was intended to be used for as many things as possible. This flexibility can sometimes make it more difficult to understand, but ultimately, XML can be used to describe a Web page about flowers or a database of car parts or nearly anything you can imagine.3. XML shall be compatible with SGML.
SGML or Standard Generalized Markup Language, is the ISO standard on which all XML and thus XHTML documents are based upon. If a document isn't compatible with SGML, then it cannot be called XML.4. It shall be easy to write programs which process XML documents.
XML was always intended to be easy to use and process. Because XML is based on human-readable text, this makes it a lot easier for programmers to figure out what is meant by the XML tags. This in turn makes it easier to write a program that processes those tags.5. The number of optional features in XML is to be kept to the minimum.
Ideally, there would be zero optional features. Optional features cause problems because they are not guaranteed to be in any given situation. The more optional features there are in a system the more combinations there are for the system and so the more difficult the programming becomes.6. XML documents should be human-legible and reasonably clear.
Rather than having elements that are named a3209zd you would have an element named <first_name>. Someone reading your XML should be able to make an educated guess about what the data is that's being tagged.7. The XML design should be prepared quickly.
It is better to spend time building the data than it is on building an XML design.8. The design of XML shall be formal and concise.
Only include as many elements as you need to be clear, not more and not less.9. XML documents shall be easy to create.
XML is intended to not require a special editor or tool to create. And in fact, most XML documents can be edited in a text editor like Notepad or TextEdit.10. Terseness in XML markup is of minimal importance.
When you're creating XML element names, first_name is better than fname because it's clearer and more human readable. While you do want to keep elements names short, the shortness should not be at the sacrifice of human-readability.