Copyright © Silmaril Consultants

Quick answers

Basics: general information about XML

  1. What is XML? The Extensible Markup Language.
  2. What is a markup language? A way of describing what's what in a document.
  3. What is XML for (aka Where should I use XML)? XML is for identification, transmission, and storage.
  4. What is SGML? Standard Generalized Markup Language, ISO 8879:1986
  5. What is HTML? HyperText Markup Language, RFC 1866, the language of Web pages.Updated
  6. Aren't XML, SGML, and HTML all the same thing? No, SGML and XML are metalanguages. HTML is an application of them.
  7. Who is responsible for XML? The W3C
  8. Why is XML such an important development? It overcomes the inflexibility of HTML and the complexity of SGML
  9. Why not just carry on extending HTML? HTML is already too overburdened with proprietary add-ons.
  10. Why should I use XML? (aka What is XML for?) It's a robust, durable, manipulable, and free format for information identification, storage and transfer.
  11. Where do I find more information about XML? At
  12. Where can I discuss implementation and development of XML? On mailing lists, Usenet newsgroups, web-based bulletin-boards, and IRC channels
  13. What is the difference between XML and C or C++ or Java? C and Java are for writing programs; XML is for storing text.

Existing users (including everyone who uses a browser)

  1. What do I have to do to use XML? To read it: an XML browser (eg Firefox or IE). To create: an XML editor (Emacs, Spy, etc).
  2. Should I use XML instead of HTML? Yes if you need robustness, accuracy, and persistence.
  3. Someone sent me an XML file. How do I read it? Open it in an XML browser or XML editor.
  4. Where can I get an XML browser? MSIE 5.5 or 6.*; Mozilla Firefox 0.9.6 up
  5. Do I have to switch from SGML or HTML to XML? Not if you don't want to
  6. Can I use XML for ordinary office applications? Yes, use Star Office, Open Office, WordPerfect, or even MS-Office (11/XP only).Updated

Authors (including writers of HTML and Web page owners)

  1. Does XML replace HTML? No.
  2. Do I have to know HTML or SGML before I learn XML? No, but it's useful.
  3. What does an XML document actually look like (inside)? Pointy brackets like HTML
  4. How does XML handle white-space in my documents? Parsers keep it all. It's up to the application to decide what to do with it.
  5. Which parts of an XML document are case-sensitive? All of it, both markup and text.
  6. How can I make my existing HTML files work in XML? Either make them XHTML or use a different document type.
  7. Is there an XML version of HTML? Yes, XHTML from W3C
  8. If XML is just a subset of SGML, can I use XML files directly with existing SGML tools? Yes, if they are up to date
  9. I'm used to authoring and serving HTML. Can I learn XML easily? Yes
  10. Can XML use non-Latin characters? Yes, this is the default
  11. What's a Document Type Definition (DTD) and where do I get one? A specification of document structure. You can write one or download them.
  12. Does XML let me make up my own tags? Yes but they're not called tags. They're element types.
  13. How do I create my own document type? Analyse the class of documents, and write a DTD or Schema
  14. How do I write my own DTD? Learn XML Declaration Syntax
  15. Can a root element type be explicitly declared in the DTD? No, use the Document Type Declaration.
  16. I keep hearing about alternatives to DTDs. What's a Schema? Like a DTD for validating content as well as structure.
  17. How do I get XML into or out of my database? Ask your database manufacturer
  18. How will XML affect my document links? XML Links are much more powerful, but not yet implemented in browsers
  19. Can I encode mathematics using XML? Yes, using MathML.
  20. How does XML handle metadata? Any way you want.
  21. Can I use JavaScript, ActiveX, etc in XML files? Not in the XML file itself, but via a stylesheet.
  22. Can I use Java to create or manage XML files? Sure.
  23. How do I execute or run an XML file? Not a meaningful question. XML is a data format.
  24. How do I control formatting and appearance? Use a CSS or XSLT stylesheet.
  25. How do I use graphics in XML? Reference them as for HTML or use XLink. Or embed SVG.
  26. What is parsing and how do I do it in XML? Parsing is splitting up information into its component parts
  27. How do I include one XML file in another? Use a general entity, same as for SGML
  28. When should I use a CDATA Marked Section? CDATA is only for text containing markup-like characters.
  29. How can I handle embedded HTML in my XML? Provide for it in the output, use a deep copy, or try disable-output-escaping.
  30. What are the special characters in XML? Just five: &lt; (<), &amp; (&), &gt; (>), &quot; ("), and &apos; (')

Developers and Implementors (including WebMasters and server operators)

  1. Where's the spec? Right here
  2. What are these terms DTDless, valid, and well-formed? Well-formed means syntactically correct (DTD or not); valid means a DTD has been used.
  3. Which should I use in my DTD, attributes or elements? See
  4. What else has changed between SGML and XML? Stricter syntax and no options.
  5. What's a namespace? A named DTD/Schema fragment identified by a URI (URL).
  6. What XML software is available? Thousands of programs: too many to list here.
  7. What's my information? DATA or TEXT? It depends on what you're using it for.
  8. Do I have to change any of my server software to work with XML? Make sure your server sends XML files as text/xml
  9. Can I still use server-side inclusions? Yes, just make sure the output conforms to XML
  10. Can I (and my authors) still use client-side inclusions? Yes, just make sure the output conforms to XML
  11. I'm trying to understand the XML Spec: why does it have such difficult terminology? It has to be formal to be accurate.
  12. I have to do an overview of XML for my manager/client/investor/advisor. What should I mention? Non-proprietary multi-purpose flexible markup
  13. Is there a conformance test suite for XML processors? Yes, see
  14. I've already got SGML DTDs: how do I convert them for use with XML? Edit by hand or use software like Near+Far Designer.
  15. How do I include one DTD (or fragment) in another? Use a parameter entity, same as for SGML
  16. How can I include a conditional statement in my XML? You can't: XML isn't a programming language. But you can have conditional criteria in a Schema, DTD, or a processor.
  17. What's the story on XML and EDI? Getting there: still needs more work and agreement.


  1. References There is a much larger XML and SGML bibliography at
  2. How far are we going? To infinity and beyond!
  3. Not the XML FAQ Infrequently Asked Questions
  4. Lost XML software Some of the best software that has disappearedNew