Introducing RDFa, Part Two
In this second part of a two-part series, Bob DuCharme concludes his introduction
of RDFa--a new, XHTML-friendly standard syntax for RDF metadata that allows you to
metadata into the Web in a novel way.
In this first part of a two-part series, Bob DuCharme introduces us to RDFa, a
new, XHTML-friendly standard syntax for RDF metadata that allows you to embed RDF
into the Web in a novel way.
Scaling Up with XQuery, Part 2
In Part 2 of this article, Bob DuCharme covers the eXist and Berkeley DB XML
implementations of XQuery, showing us how to use them to query a large XML data
Scaling Up with XQuery, Part 1
In Part 1 of this two-part article, Bob DuCharme shows us how to use three
popular XQuery implementations to access and query large XML document collections,
as he says, "where the real fun begins."
Hacking the XML in Your TiVo
Bob DuCharme's latest article shows us how to query a networked TiVo for XML
using a REST interface over HTTP. Bob then shows us how to use Atom to syndicate our
habits and integrate them with our weblogs via the "TiVoRoll."
Moving to OpenOffice: Batch Converting Legacy Documents
Bob DuCharme presents a practical solution to a real problem. You want to move
from MS Office to OpenOffice, but you've got mountains of legacy documents to convert.
gives a clever batch conversion solution to this common problem.
Hacking eBay: Turning Email Alerts into Atom
Bob DuCharme, a long-time XML.com contributor, shows us how to turn eBay email
alerts into an Atom channel.
Automating Stylesheet Creation
Bob DuCharme shows how an XSLT stylesheet can read simplified XML-conversion
instructions and create a new, working XSLT stylesheet from those instructions.
In this month's Transforming XML column, Bob DuCharme introduces libxslt, a very
performant and feature-rich XSLT processor with roots in the GNOME world.
Push, Pull, Next!
Bob DuCharme compares the push and pull styles of XSLT stylesheet architectures
and looks at two new XSLT 2.0 instructions that aid push-style development.
Bob DuCharme looks at how XSLT 1.0 and 2.0 let you evaluate whether two elements
The Path of Control
In his latest Transforming XML column, Bob DuCharme examines the potential
contribution of XPath 2.0's new control structures to XSLT 2.0 stylesheets.
Using Stylesheet Schemas
In this month's Transforming XML column, Bob DuCharme asks what a DTD or schema
for XSLT stylesheets can add to your XSLT development and deployment.
Getting Started with XQuery, Part 2
Bob DuCharme, our intrepid XSLT explorer, continues his introduction of XQuery,
the new programming language for XML.
Getting Started with XQuery
Bob DuCharme, our intrepid XSLT explorer, turns his attentions to XQuery, the new
programming language for XML.
The XPath 2.0 Data Model
Bob DuCharme, in his latest Transforming XML column, examines the XPath 2.0,
hence the XSLT 2.0, data model.
Extending XSLT with EXSLT
In this month's Transforming XML column, Bob DuCharme reports happily that the
promise of XSLT extensibility via EXSLT has become a reality.
Telnet and REST Web Services?
Telnet isn't the most efficient way to send GET, PUT, POST, and DELETE commands
to an HTTP server, but once you've done it by hand, you'll have a better understanding
the core HTTP method.
XSLT Web Service Clients
Bob DuCharme shows how easily XSLT processors can retrieve and use data from
RESTful web services.
Using Customized Schema Constraints
In the return of Bob DuCharme's Transforming XML column, he discusses ways to add
customized constraints to schemas and how you can use XSLT as a bridge to implement
Schematron 1.5: Looking Under the Hood
In his latest Transforming XML column Bob DuCharme explains the elegant
simplicity of Schematron, a rule-based XML validation tool often implemented in
Bob DuCharme introduces XMP, Adobe's RDF-based specification for embedding
metadata into digital artifacts. Get ready to mark up your photos and images with
Converting XML to RDF
Bob DuCharme explains how to convert XML into RDF -- using the XML returned by
Amazon's REST web service -- in this month's Transforming XML column.
Amazon's Web Services and XSLT
In his latest Transforming XML column, Bob DuCharme introduces us to the XSLT
processing-service component of Amazon's web services.
An Interview with Michael Kay
In his latest Transforming XML column, Bob DuCharme interviews Michael Kay,
developer of Saxon, about his new venture, Saxonica.
Entity and Character References
In this month's Transforming XML Bob DuCharme examines some of the issues
surrounding entity and character references in XSLT 2.0.
Utility Stylesheets, Part Two
In this month's Transforming XML column Bob DuCharme continues his tour of
generic, utility stylesheets.
In Bob DuCharme's latest Transforming XML column he shares several small
stylesheets that follow a common design pattern.
In Bob DuCharme's latest Transforming XML column he explains the use and virtues
of XSLT 2.0's tunneled variables.
Googling for XML
Google's index includes well over a million XML files. Bob DuCharme shows some
strategies for using Google to find the XML, RSS and RDF files that you want.
Opening Open Formats with XSLT
In Bob DuCharme's latest Transforming XML column he finds that four-year old XSLT
1.0 is solving more and more problems as more data becomes available in XML.
Getting Started with XForms
Bob DuCharme provides an implementation-centered guide to using XForms, the new
W3C forms technology for the web.
In his latest Transforming XML column Bob DuCharme explains XSLT 2.0's Temporary
Trees, and then he demonstrates how to use them.
Grouping With XSLT 2.0
In his latest Transforming XML column Bob DuCharme explains how to use the new
grouping facilities in XSLT 2.
Datatype Checking With XSLT 2.0
In his latest Transforming XML column Bob DuCharme discusses the new datatypes
system in the latest major release of XSLT.
Writing Your Own Functions in XSLT 2.0
In this month's Transforming XML column Bob DuCharme explains how to write
arbitrary XSLT functions in XSLT 2.0.
New and Improved String Handling
In this month's Transforming XML column Bob DuCharme explains some of the new and
improved string handling functions -- for concatenation, search, and replace -- in
Transclusion with XSLT 2.0
In Bob DuCharme's latest Transforming XML column he examines some new XSLT 2.0
features which make document transclusion a reality.
Regular Expression Matching in XSLT 2
In this month's Transforming XML column Bob DuCharme explains why XSLT 2.0's new
regular expression support will yield an expressive, powerful tool.
XSLT 2 and Delimited Lists
In his latest Transforming XML column Bob DuCharme begins a multipart
expoloration of some of the features of the forthcoming XSLT 2.0 release. In this
DuCharme discusses the new support for tokenizing strings.
In Bob DuCharme's latest Transforming XML column, he explains how to use xsl:if
and xsl:choose for conditional execution in XSLT transformations.
Prototyping One-to-many Links with XSLT
In his latest Transforming XML adventure, Bob DuCharme explains how to use XSLT
to experiment with one-to-many hypertext links.
Building Metadata Applications with RDF
After some time wondering what to do with RDF, Bob DuCharme found RDFlib, a
Python RDF processing library, and "the lightbulb finally went on." Bob describes
Bob DuCharme, in this month's Transforming XML column, shows us how to include
Never Mind the Namespaces: An XSLT RSS Client
In his latest Transforming XML column, Bob DuCharme develops a simple, yet
functional RSS aggregation client in XSLT.
Automatic Numbering, Part Two
In his latest Transforming XML column, Bob DuCharme returns to the issue of
creating number sequences automatically in XSLT output.
Automatic Numbering, Part 1
In this month's Transforming XML column Bob Ducharme explains the use of
xsl:number in handling numbers in XSLT stylesheets.
Make Your XML RDF-Friendly
As the volume of RDF-consuming applications grow, the authors demonstrate how XML
documents can be made useful to RDF processors as well as normal XML parsers.
Duplicate and Empty Elements
In his monthly Transforming XML column, Bob DuCharme explains how to detect,
delete, and create duplicate and empty elements in source and result trees.
Controlling the DOCTYPE and XML Declaration
In this month's Transforming XML column, Bob DuCharme explains how to use XSLT's
xsl:output attributes to add or suppress DOCTYPE and XML declarations
to result documents.
Finding the First, Last, Biggest, Smallest
In this month's Transforming XML column, Bob DuCharme explains how to do without
a query language using XPath expressions, XSLT predicates, and last month's sorting
he explains how to find the first, last, biggest and smallest nodes.
Sorting in XSLT
In this month's Transforming XML column, Bob DuCharme explains the various uses
of xsl:sort, including sort ordering, multiple keys, and reversing the
Comparing and Replacing Strings
In this month's Transforming XML column, Bob DuCharme gives us the ins and outs
of string munging in XSLT, including string equality comparisons and search-and-replace
Filling in the DTD Gaps with Schematron
Schematron can be used to enhance the capabilities of systems currently using
DTDs, without meaning a complete shift in validation technology.
Splitting and Manipulating Strings
This month the Transforming XML column explains how to use XSLT and XPath to
manipulate strings in XML documents.
Putting Attributes to Work
In this month's Transforming XML column, Bob DuCharme examines the treatment of
source tree attributes in XSL stylesheets.
XLink: Who Cares?
XLink was part of the original plan for XML, along with XSL, but has taken a long
time to reach completion and has inspired few implementations. Bob DuCharme asks
Reading Multiple Input Documents
This month's Transforming XML column explains how to use XSLT's document()
function to insert all or part of a document into the result tree.
Declaring Keys and Performing Lookups
This month's Transforming XML column explains how to use xsl:key and key() to do
value lookups in XSLT stylesheets.
Controlling Whitespace, Part Three
In the third part of his series on handling whitespace in XSLT, Bob DuCharme
discusses outputting tab characters and automated element indenting.
Controlling Whitespace, Part Two
Bob DuCharme continues his three-part series on controlling whitespace in XSLT
using xsl:text and other techniques.
Controlling Whitespace, Part 1
In the first of a multipart series, Bob DuCharme discusses stripping and
preserving whitespace in XSLT transformations of XML documents.
Generating Unique IDs and Linking to Them
Bob DuCharme explains the creation and use of unique element IDs, using XSLT's
generate-id(), in order to build complex document links.
Bob DuCharme explores XSLT extension functions, showing you the best way to use
them in portable stylesheets.
Ducharme discusses how to achieve common looping constructs, like "for" and
"while", in XSLT.
Math and XSLT
XSLT is primarily for transforming text, but you can use it to do basic math
Using the W3C XSLT Specification
For advanced XSLT use, the W3C's XSLT specification can be a handy tool. This
guide helps you read the specification and clears up confusing terms.
Namespaces and Stylesheet Logic
This month Bob DuCharme uses XSLT to process namespaces in source XML documents,
including translating XLink into HTML.
Namespaces and XSLT Stylesheets
A guide to using XSLT to create documents that use XML Namespaces.
Entities and XSLT
Using XML entities can be tricky -- this article covers their usage with XSLT in
both input and output documents.
Setting and Using Variables and Parameters
This article shows how variables and parameters can be used in XSLT stylesheets
to substitute values into templates.
Axis Powers: Part Two
Part one of this series introduced the role of XPath axes in XSLT. This article
explains the remaining axes and shows how to handle namespaces in XPath.
Axis Powers: Part One
In this first installment of a two-part series, we examine the vital role of
XPath in XSLT, and introduce the axes used in XPath expressions.
XML nodes have many friends and relations. In XSLT, the key to finding them is
XPath. In this article Bob DuCharme shows you how.
Combining Stylesheets with Include and Import
XSLT provides two means of combining multiple stylesheets into one, include and
import. This article explores the use of these instructions and shows how they can
to customize the DocBook XSLT stylesheets.
XSLT, Comments and Processing Instructions
XSLT isn't just for transforming elements and attributes. In this month's
Transforming XML column we show how to create and transform processing instructions
HTML and XSLT
While HTML isn't an XML application itself, it can be both generated and
transformed using XSLT. Bob DuCharme show us how.
Copying, Deleting, and Renaming Elements
In the first of our new monthly column on using XSLT, Bob DuCharme shows how to
do basic transformations on XML documents.
Links That Are More Valuable Than the Information They Link?
Traditional databases have had them for years, and soon people will make money
selling Web links.
Adding New Elements and Attributes
This month's installment of our XSLT tutorial covers adding new elements and
attributes to the results of your XSLT transformations.