[
Lists Home |
Date Index |
Thread Index
]
On Tue, Dec 28, 2004 at 03:03:32PM -0800, Nathan Young wrote:
> *** XQuery is not a templating language
> I have no idea if I'm going to encounter disagreement with this idea or
> not. Everything I've seen of XQuery suggests that the results of a query
> could be sent to a formatting engine that would apply a template to them,
> but not that XQuery would in itself be used to apply formating to a
> document. I know that a previous thread asserted that XQuery can
> technically do anything XSL can do, but using it as a templating language
> looked to me like lining up camels and needles in an un-fun way.
I've certainly used it as a templating language. One major limitation
is that XQuery doesn't have an HTML output method, only XML, but in
practice impelemntations are able to generate browser--friendly XHTML,
e.g. with the required space before /> in an empty element.
The trick for me was to prepend some function definitions in a wrapper,
so I could call them in the main document, which looked like
<html>
<head>
<title>{$title}</title>
</head>
<body>
<h1>Results</h1>
{
for $i in findMatches()
return thumbnail($i)
}
</body>
</html>
I dont know if I'd necessarily recommend this -- it depends on the
sort of people writing and maintaining the templates. But there
are certainly XQuery implementations that can be called as servlets,
e.g. Qizx/open -- see http://www.w3.org/XML/Query for more.
Liam
--
Liam Quin, W3C XML Activity Lead, http://www.w3.org/People/Quin/
http://www.holoweb.net/~liam/
|