← Prev in month ← Prev in thread

I can XInclude where I bloody want to

From
Uche Ogbuji <>
To
Elliotte Rusty Harold <>
Date
2002-04-29T19:12:39Z
ID
<>
Thread
I can XInclude where I bloody want to
> For example, I've seen one XSLT processors that could not correctly 
> process a document that used XIncludes because it resolved XIncludes 
> before applying the stylesheet, even though there was nothing in the 
> XSLT specification that said it should do that. XSLT offers an 
> unambiguous description of how to transform one document into another 
> under the control of a stylesheet. To an XSLT processor, a document 
> that an xinclude:include elements is processed just like any other 
> elements. It searches for matching templates when instructed to do so 
> and instantiates them. That's it. To automatically resolve XIncludes 
> as part of XSL transformation is as wrong as an XInclude processor 
> applying a stylesheet mentioned in an xml-stylesheet processing 
> instruction before or after resolving XIncludes. There is nothing in 
> XSLT that says XIncludes should or must be applied and nothing in 
> XInclude that says XSLT should or must be applied. The specs are 
> completely consistent with each other as long as you don't read more 
> into them than is actually there.

Oh dear.  Not this megrim again.

I suppose that one should be forbidden from extracting XML from a SQL database because ANSI SQL doesn't mention XML and XML doesn't mention SQL.

Look.  I can name *two* XSLT processors that commit this imaginary sin of yours: 4XSLT and libxslt.  I am author of the former.  You and I have had this debate in private, and I have implemented XInclude for source documents in 4XSLT with our discussion in vivid memory.

I think you are wrong, that there is nothing in any of the specs that indicates that it is wrong or bad practice to apply XIncludes before or after transformation, as the user prefers, or not at all.  XInclude is merely a tool, and the user is free to use it as he sees fit for his needs.  4XSLT and libxslt give the user the option to use XInclude where they wish.

I also use XInclude extensively on transforms to be ptrocessed using XSLT.  Not once have I had a practical need to have the XSLT processor ignore the XInclude instructions, as you seem to want.

I don't follow how having this option corrupts the fundamental concordance between the XML core specs (4XSLT also supports XML Base, and I use this support, and I've had no problems with its interaction with XINclude or anything else).  Do you have a concrete example of such corruption?


-- 
Uche Ogbuji                               Principal Consultant
               +1 720 320 2046
Fourthought, Inc.                         http://Fourthought.com 
4735 East Walnut St, Boulder, CO 80301-2537, USA
XML strategy, XML tools (http://4Suite.org), knowledge management
← Prev in month ← Prev in thread