In a recent weblog post, XML.com's "Python and XML" columnist Uche Ogbuji provided a nice collection of links to discussions about the push vs. pull styles of XSLT stylesheet development. What do we mean by "push" and "pull"? As a short example of each, let's look at two approaches to converting the following DocBook document to XHTML.
DuCharme, Bob. XML.com (2005). Articles>Information Design>XML>XSL
XPath 1.0 (and hence your XSLT style sheets) considers two elements to be equal if their string values are the same. The string value is essentially all of the PCDATA between the element's start and end tags, even if the element has descendant elements. For example, an XSLT processor considers the w and z elements in the following to be equal, because they both have a string value of "abcdefghi".
DuCharme, Bob. XML.com (2005). Articles>Information Design>XML>XSL
Covers XPath's new ability to do some things that every real programming language can do: conditional statements and iteration, or, as they're more colloquially known, "if" statements and "for" loops. We'll also look at a useful related technique for checking whether certain conditions do or don't exist in a set of nodes.
DuCharme, Bob. XML.com (2005). Articles>Information Design>XML>XSL
What You Need to Know About Whitespace in XML
Learn about the concept of XML whitespace, and gets tips for avoiding problems associated with it.
Wang, Jinyu. Oracle (2006). Articles>Information Design>XML
Using XSLT to Filter and Sort Records in the Browser
With XSLT support fast becoming a commonly available component in the browser, web developers can now leverage transformations to manipulate large amounts of data in the browser at speeds acceptable for more advanced user interfaces. Once Safari gets its act together, I see more and more UI-specific data processing being moved off of the server into the browser. This article outlines the process involved in transforming the del.icio.us user API XML document into an HTML fragment.
Johnvey (2005). Articles>Information Design>XML>XSL
Voice Enabling XML, Part 1: Develop a Voice-Enabled RSS Reader
RSS is a hot topic these days, as it provides an easy way to stream data online. This article, the first of a four-part series on developing VoiceXML applications, shows you how to develop a voice-enabled RSS reader. The input to the application is RSS data, and the output is VoiceXML that can be read and spoken by your favorite compatible voice application.
Brown, Martin. IBM (2007). Articles>Information Design>XML>Voice
Scaling Up with XQuery, Part 1
The value of XQuery is not in its role as an alternative syntax to XSLT 2.0 for manipulating XML; it's in the implementations, which let you quickly retrieve, sort, and manipulate specific subsets of XML from collections that can measure in the terabytes. The ability to store large, indexed collections of data that don't fit neatly into normalized relational tables will create possibilities for all kinds of new applications, both inside and outside of the publishing world.
DuCharme, Bob. XML.com (2006). Articles>Information Design>XML>XSL
Scaling Up with XQuery, Part 2
Gets you to the point where you could start exploring those features with a reasonably large collection of your own data. Without spending any money, you can check them all out and discover the advantages to having large amounts of your XML stored in a database where you (or an application!) can use a W3C standard language to quickly retrieve what you want from that database.
DuCharme, Bob. XML.com (2006). Articles>Information Design>XML>XSL
XQuery is to XML what SQL is to database tables. XQuery was designed to query XML data.
W3Schools (2007). Articles>Information Design>XML>XSL
Converting to XML: Is it Always the Answer?
Although managing costs is important anytime, it is especially important in today's economic reality where budgets are shrinking drastically. Getting your money's worth as well as what you need to support your data should be a core factor of any data project. The two biggest cost factors are the type of conversion work you need done and how much of it you'll need. This article focuses on how your goals for your project relate to the output format you choose, and how that format impacts costs. While some outputs, like XML, provide higher capabilities, they also cost more to create.
Gross, Mark. Data Conversion Laboratory (2009). Articles>Content Management>Information Design>XML
Alternatives to XML: Keeping Down your Document Conversion Costs
While I'm a big fan of XML for many purposes, it's a misconception that it's the single best solution in every scenario, and it's worthwhile to consider the alternatives in situations where the benefits of XML are not necessary. In this article, I discuss alternatives to XML, SGML, and HTML that might be suitable when budgets are more limited. While XML is perfect for highly coded information, other options can work well for many kinds of information. Markup languages are at the high end of the cost spectrum, so if you don't need the benefits they provide, you certainly should consider the alternatives discussed below.
Gross, Mark. Data Conversion Laboratory (2009). Articles>Content Management>Information Design>XML
In his article in this issue, Peter-Paul Koch proposes adding custom attributes to form elements to allow triggers for specialized behaviors. The W3C validator won’t validate a document with these attributes, as they aren’t part of the XHTML specification. This article will show you how to create a custom DTD that will add those custom attributes, and will show you how to validate documents that use those new attributes.
Eisenberg, J. David. List Apart, A (2009). Articles>Information Design>Standards>XML
The reason that we use XML instead of a specific application is that XML is not just a pretty face, living in isolation from the rest of the computing world. XML is more than a rulebook for generating custom markup languages. It is part of a family of technologies, which, working together, make your XML-based documents very useful indeed. To demonstrate what I mean, I decided to create a new XML-based markup language from scratch, and show what you can do with a document written in that language, using off-the-shelf tools.
Eisenberg, J. David. List Apart, A (2009). Articles>Information Design>XML
Cafe con Leche: XML News and Resources
A blog about XML theory and XML applications.
Harold, Elliotte Rusty. Cafe con Leche. Resources>Information Design>XML>Blogs
What is Intelligent Content? And Why Won’t Scott Abel Shut Up About It?
Intelligent content is content which is not limited to one purpose, technology or output. It’s content that is structurally rich and semantically aware, and is therefore discoverable, reusable, reconfigurable and adaptable. It’s content that helps you and your customers get the job done, often automatically.
Abel, Scott. Content Wrangler, The (2009). Articles>Content Management>Information Design>XML
Concept, Task, Reference: A Practical Guide to Choosing the Right Topic Type
This presentation is for beginning to intermediate users of DITA. It's based on my experience with projects on which I'm project manager, information architect, and writer.
Kunz, Lawrence D. SDI Global Solutions (2009). Presentations>Information Design>XML>DITA
By reading this short tutorial, you'll get acquainted with the DITA 1.1 markup and after that, you'll be able to author your first DITA document right away. This short tutorial will not discuss the DITA ``philosophy'' or the advantages of the DITA vocabulary over other XML vocabularies (e.g. DocBook).
Shafie, Hussein. XMLmind (2009). Articles>Information Design>XML>DITA
I did an experiment on Friday that taught me an important lesson: When it comes to handling XML structures, I know pretty much jack. This may be a fatal admission for a technical communicator, but it’s an honest one.
Minson, Benjamin. Gryphon Mountain (2009). Articles>Information Design>XML
There are 16 readers currently online: 0 registered users and 16 guests. Register.

![]()
![]()


![]()
![]()
![]()