- From: Dan Connolly <connolly@w3.org>
- Date: Fri, 10 Sep 2004 17:16:31 -0500
- To: Norman Walsh <Norman.Walsh@Sun.COM>
- Cc: www-xml-xinclude-comments@w3.org, public-xml-core-wg@w3.org
On Wed, 2004-09-08 at 13:03, Norman Walsh wrote: > Dan, > > I don't believe there are any tests of XInclude used with XML Schema > or XSLT processors. I don't know of any processors that (directly) > support XInclude in schema documents or stylesheet documents. > (Indirect support through pipeline languages such as sxpipe is > certainly possible.) > > Schemas can certainly be written that validate the occurence of > xi:include elements in input documents (assuming that the input > document was not subject to XInclude processing, of course). > Similarly, stylesheets can be written that will transform xi:include > elements or produce them in the transformed result. Would you (plural) please write some and put them in a test suite? > > An XInclude in a schema or stylesheet document, if the document was > subject to XInclude processing before the schema or stylesheet > processor encountered it, would behave exactly like an external parsed > entity. > > <xsl:stylesheet xmlns:xsl="..."> > <xsl:output method="xml"/> > <xi:include xmlns:xi="..." href="someDocument.xsl"/> > </xsl:stylesheet> > > is effectively the same as > > <!DOCTYPE xsl:stylesheet [ > <!ENTITY someDocument SYSTEM "someDocument.xsl"> > ]> > <xsl:stylesheet xmlns:xsl="..."> > <xsl:output method="xml"/> > &someDocument; > </xsl:stylesheet> That seems worth capturing in a test. > This is distinct from the xsl:include element (or the xsd:include > element) which performs additional, application-specific semantic > processing *in addition to* performing a kind of textual inclusion. > > Had XInclude existed when XML Schema or XSLT were under development, I > think it *could* have been used instead, but it cannot be used instead > now. That's another assertion that seems to merit a test. > In particular: > > - including one stylesheet "style.xsl" in another with XInclude > would likely result in a xsl:stylesheet element as a child of the > "including" xsl:stylesheet which would be an error. > > - including one stylesheet "style.xsl/*/*" in another with XInclude > would not inform the including stylesheet of any attribute values > that might have been set on the included stylesheet's root element. > That could produce quite different semantics than xsl:include. > > I hope this helps clarify the situation. Well, yes, but I'm afraid it makes it clear that the situation is not, yet, as it should be. > Be seeing you, > norm -- Dan Connolly, W3C http://www.w3.org/People/Connolly/
Received on Friday, 10 September 2004 22:16:14 UTC