RE: [xsl] A beef with XSLT Sometimes too complicated

Subject: RE: [xsl] A beef with XSLT Sometimes too complicated
From: Wendell Piez <wapiez@xxxxxxxxxxxxxxxx>
Date: Tue, 18 Jul 2006 12:22:45 -0400
At 11:45 AM 7/18/2006, Mike wrote:
> It does occur to me that what we are facing is a collective
> coming-to-grips with the question of
> queries-as-transformations and transformations-as-queries,

Queries extract a small part of the information available from some
resource. Transformations convert the representation of information into a
different form. It's quite possible, therefore, for a task to involve both
query and transformation.

Indeed. An extraction of a list of phone numbers might be a "pure" query. A plain-vanilla reformatting of a Docbook page into HTML might be a "pure" transformation, or close to it. But most tasks involve something of both. Right in the middle might be the creation of a table of contents into a set of XML documents as rendered in HTML.


Not only that, but to addle our brains further ... sometimes it's rather difficult to distinguish between the information and its representation. The representation of information is itself information (which is why a well-designed, scalable information processing architecture will probably introduce some kind of layering). In that respect, a transformation is a translation of one kind of information (say, Docbook tagging) into another (say, the code that drives a renderer to display the same "information" as the source markup in a form friendlier to the eye and the educated brain). But translation is rarely a simple mapping; it usually involves the removal of some information (say, the nesting becomes implicit in the level of headers rather than explicit in the markup of sections) while other information is added (relative font sizing is introduced for the display of those headers) -- generally, one hopes, according to consistent rules derived from the relevant context, which (in principle, if not too much is thrown away) may even enable the translation back again.

This may seem like idle philosophizing until one considers that this is effectively what queries do too, only balanced somewhat differently with respect to adding and throwing away.

A query is a transformation scoped to a "repository" and returning an extract of it. A transformation is a query scoped to a "document" and returning an elaboration of it.

Cheers,
Wendell

Current Thread