Manage Learn to apply best practices and optimize your operations.

Diagramming XML

A technique for graphically showing XML interrelationships.

XML Developer Tip
(Receive this column in your inbox,
click Edit your Profile to subscribe.)

Diagramming XML
Ed Tittel

In a recent article at, Daniel Zambonini goes through an interesting exercise in diagramming the relationships between and among various elements of what he calls the XML family. XML family refers to the collection of XML standards and vocabularies that most content and code developers are likely to encounter as they work within the XML world. In fact, his article presents a classic case of "eating your own dog food" (a Silicon Valley analogy describing companies that develop new technology, and then use it to run their own businesses), in that it uses the same XML vocabularies it diagrams to make the diagram work.

What's interesting about his diagram is what it includes. Start with basic XML, which of course provides the foundation for all vocabularies. Then add a metalanguage to make specifying other vocabularies possible; Zambonini takes the politically correct stance of including W3C XML Schema (or WXS, as it's sometimes known). It's one of several XML based metalanguages, but it has gotten its fair share of knocks for being somewhat arcane and overly complex. Throw in XML namespaces, to permit multiple vocabularies to be combined, and inevitable name collisions to be resolved. Add URIs to make sure that name references can (and will) remain unique. Then grab a handful of important XML vocabularies including RDF, XSLT, XPath, XSL-FO, and SVG, and you've got a way to describe resources, and multiple ways to point to, transform, represent, and render content. Presto! An XML Family Diagram is born. (Warning: Some readers may need to add an SVG viewer to see this image, so it that means you, check out Adobe's SVG Zone, where a new SVG viewer is readily and freely available).

What's the big deal about this demonstration and Zambonini's article? In a way, it's the same old point you've heard me and other XML zealots make since the technology was first introduced: By judicious combination and use of XML and related vocabularies, developers can build and manage all kinds of interesting, self-describing—and in this case, self-depicting—online content. Granted, a family tree of XML vocabularies may not be something to set the heart racing, but what about collections of module documents that know how to link themselves together into a diagram of the overarching application? Or likewise, what about flow or process charts or engineering drawings that can fit themselves into an overarching structure. That's when things start to get not just interesting, but relevant. Check out Zambonini's story and source code for a compact and compelling illustration of what XML can enable for your documents and their structure.

About the Author

Ed Tittel is a VP of Content Development & Delivery at CapStar LLC, an e-learning company based in Princeton, NJ. Ed runs a small team of content developers and project managers in Austin, TX, and writes regularly on XML and related vocabularies and applications. E-mail Ed at

For More Information:

  • Looking for free research? Browse our comprehensive White Papers section by topic, author or keyword.
  • Are you tired of technospeak? The Web Services Advisor column uses plain talk and avoids the hype.
  • For insightful opinion and commentary from today's industry leaders, read our Guest Commentary columns.
  • Hey Codeheads! Start benefiting from these time-saving XML Developer Tips and .NET Developer Tips.

  • Visit our huge Best Web Links for Web Services collection for the freshest editor-selected resources.
  • Visit Ask the Experts for answers to your Web services, SOAP, WSDL, XML, .NET, Java and EAI questions.
  • Choking on the alphabet soup of industry acronyms? Visit our helpful Glossary for the latest industry lingo.
  • Couldn't attend one of our Webcasts? Don't miss out. Visit our archive to watch at your own convenience.
  • Discuss this article, voice your opinion or talk with your peers in the SearchWebServices Discussion Forums.

Dig Deeper on Topics Archive

Start the conversation

Send me notifications when other members comment.

Please create a username to comment.