- What is XML? The Extensible Markup Language.
- What is a markup language? A way of describing what's what in a document.
- What is XML for (aka Where should I use
XML)? XML is for identification, transmission, and storage.
- What is SGML? Standard Generalized Markup Language, ISO
- What is HTML? HyperText Markup Language, RFC 1866, the language of
- Aren't XML, SGML, and HTML all the same
thing? No, SGML and XML are
metalanguages. HTML is an application of them.
- Who is responsible for XML? The W3C
- Why is XML such an important development? It overcomes the inflexibility of HTML and the
complexity of SGML
- Why not just carry on extending HTML? HTML is already too overburdened with proprietary
- Why should I use XML? (aka What is XML
for?) It's a robust, durable, manipulable, and free format
for information identification, storage and
- Where do I find more information about XML? At http://xml.coverpages.org/
- Where can I discuss implementation and development of
XML? On mailing lists, Usenet newsgroups, web-based
bulletin-boards, and IRC channels
- What is the difference between XML and C or
C++ or Java? C and Java are for writing programs; XML is for
- 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).
- Should I use XML instead of HTML? Yes if you need robustness, accuracy, and
- Someone sent me an XML file. How do I read it? Open it in an XML browser or XML editor.
- Where can I get an XML browser? MSIE 5.5 or 6.*; Mozilla Firefox 0.9.6 up
- Do I have to switch from SGML or HTML to XML? Not if you don't want to
- Can I use XML for ordinary office
applications? Yes, use Star Office, Open Office, WordPerfect, or
even MS-Office (11/XP only).
- Does XML replace HTML? No.
- Do I have to know HTML or SGML before I learn
XML? No, but it's useful.
- What does an XML document actually look like (inside)? Pointy brackets like HTML
- 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.
- Which parts of an XML document are
case-sensitive? All of it, both markup and text.
- How can I make my existing HTML files work in
XML? Either make them XHTML or use a different document
- Is there an XML version of HTML? Yes, XHTML from W3C
- 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
- I'm used to authoring and serving HTML. Can I learn
XML easily? Yes
- Can XML use non-Latin characters? Yes, this is the default
- 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.
- Does XML let me make up my own tags? Yes but they're not called tags. They're element
- How do I create my own document type? Analyse the class of documents, and write a DTD or
- How do I write my own DTD? Learn XML Declaration Syntax
- Can a root element type be explicitly declared in the
DTD? No, use the Document Type Declaration.
- I keep hearing about alternatives to DTDs. What's a
Schema? Like a DTD for validating content as well as
- How do I get XML into or out of my database? Ask your database manufacturer
- How will XML affect my document links? XML Links are much more powerful, but not yet
implemented in browsers
- Can I encode mathematics using XML? Yes, using MathML.
- How does XML handle metadata? Any way you want.
files? Not in the XML file itself, but via a
- Can I use Java to create or manage XML files? Sure.
- How do I execute or run an XML file? Not a meaningful question. XML is a data
- How do I control formatting and appearance? Use a CSS or XSLT stylesheet.
- How do I use graphics in XML? Reference them as for HTML or use XLink. Or embed
- What is parsing and how do I do it in XML? Parsing is splitting up information into its component
- How do I include one XML file in another? Use a general entity, same as for SGML
- When should I use a CDATA Marked Section? CDATA is only for text containing markup-like characters.
- How can I handle embedded HTML in my XML? Provide for it in the output, use a deep copy, or try
- What are the special characters in XML? Just five: < (<),
" ("), and
- Where's the spec? Right here
- What are these terms DTDless, valid, and
well-formed? Well-formed means syntactically correct (DTD or not);
valid means a DTD has been used.
- Which should I use in
my DTD, attributes or elements? See http://xml.coverpages.org/elementsAndAttrs.html
- What else has changed between SGML
and XML? Stricter syntax and no options.
- What's a
namespace? A named DTD/Schema fragment identified by a URI
- What XML software is
available? Thousands of programs: too many to list here.
- What's my information? DATA or TEXT? It depends on what you're using it for.
I have to change any of my server software to work
with XML? Make sure your server sends XML files as
- Can I still use server-side inclusions? Yes, just make sure the output conforms to XML
- Can I (and my authors) still use client-side
inclusions? Yes, just make sure the output conforms to XML
- I'm trying to understand the XML
Spec: why does it have such difficult
terminology? It has to be formal to be accurate.
- I have to do an overview of XML for my
manager/client/investor/advisor. What should I
mention? Non-proprietary multi-purpose flexible markup
- Is there
a conformance test suite for XML processors? Yes, see http://www.oasis-open.org/committees/xmltest/testsuite.htm
- I've already got SGML DTDs: how do
I convert them for use with XML? Edit by hand or use software like Near+Far
do I include one DTD (or fragment) in another? Use a parameter entity, same as for SGML
- 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
- What's the story on XML and EDI? Getting there: still needs more work and
- References There is a much larger XML and SGML bibliography at
- How far are we going? To infinity and beyond!
- Not the XML FAQ Infrequently Asked Questions
XML software Some of the best software that has disappeared