|
Article Excerpt As those of you familiar with XSL know, there are two parts to the W3C Recommendation (www.w3.org/TR/xsl/): a transformation part (XSLT) and a formatting part (XSL Formatting Objects, or XSL-FO for short) with the intent being the presentation of XML. However, since XSLT is also its own (more mature) W3C Recommendation www.w3.org/TR/xslt), it has enjoyed the attention of developers wishing to transform XML into other markup languages such as HTML. In a very real sense XSLT is how XML is currently being visually presented.
Although using XSLT to transform XML to HTML can be very powerful and useful, it also has some serious limitations. For example, HTML, even when combined with Cascading Style Sheets (CSS), can cause unpredictable results when printing. Another limitation is the need for developers to understand the inner workings of the expected eventual output format(s) (e.g., HTML, WML) and to code XSL Stylesheets for each such output format expected.
In theory (and partially in practice), XSL Formatting Objects can overcome these shortcomings because the language is a kind of "general" markup language with extensive formatting capabilities without being output format-specific. It may eventually be positioned as the ultimate language for expressing the output format of XML documents across software (e.g., Web browsers, word processors) and hardware (e.g., printers, cell phones) boundaries.
Admittedly this speculation is a bit optimistic -- the result of the promise brought about by the growing maturity and capability of XSL-FO processors. Currently, a number of maturing XSL-FO processors are capable of rendering such formats as Portable Document Format (PDF), Rich Text Format (RTF), and plaintext, among others. An extensive list of available XSL-FO processors can be found at www.ws.org/Style/XSL/ (check out the far left side of the page under "Implementations").
In this article I'll use a demo version of one such processor, RenderX's (www.renderx.com) XEP, to demonstrate how XSL-FOs work in the hopes of providing you with the same "enlightenment" I experienced when I first started using XSL-FO.
It's important to note that, with perhaps the exception of XSL-FO tools writers, XSL-FO shouldn't be used alone (like HTML) but rather in conjunction with XSLT to express the output format of XML. However, for clarity, I'm going to assume that you have some familiarity with XSLT and thus will leave out those details for the most part. It's also important to note that XSL-FO consists of many Formatting Objects (tags) and properties (attributes on those tags); thus this article is but a short primer on the topic. I encourage you to search the Web for more information about XSL-FO.
Before I continue, I'd like to offer some formal definitions of acronyms, since XSL, XSLT, and XSL-FO are sometimes referred to interchangeably even though they're not necessarily interchangeable:
* XSLT exists as its own W3C Recommendation and can be used alone when referring to the process of transforming XML into something else (e.g., XML, HTML, plaintext).
* XSL-FO exists only as part of XSL and shouldn't be used alone (recall that, although you can express XSL-FO by itself, FO documents should really be created through XSLT).
* XSL therefore implies that both XSLT and XSL-FO are involved. Figure 1 shows the conceptual model of XSL....
|
|

More articles from XML Journal
An introduction to XSLT: using stylesheets to separate content from pr..., January 01, 2002 JAX Pack! Bridging the gap between Java and XML technologies., January 01, 2002 SOAP, messages with attachments.(Technical), January 01, 2002 Using the IBM XML security suite: part 2 of 2: encrypting XML document..., January 01, 2002 XML enabled applications: need for speed: here's help when your applic..., January 01, 2002
Looking for additional articles?
Search our database of over 3 million articles.
Looking for more in-depth information on this industry?
Search our complete database of Industry & Market reports by text, subject, publication
name or publication date.
About Goliath
Whether you're looking for sales prospects, competitive information, company
analysis or best practices in managing your organization,
Goliath can help you meet your business needs.
Our extensive business information databases empower business
professionals with both the breadth and depth of credible,
authoritative information they need to support their business
goals. Whether it be strategic planning, sales prospecting,
company research or defining management best practices -
Goliath is your leading source for accurate information.
|
|