At 9:38 AM +0100 4/30/02, Michael Kay wrote:
>Not true. XSLT 1.0 section 1: "A transformation expressed in XSLT describes
>rules for transforming a source tree into a result tree." There is
>(deliberately) nothing in XSLT or XPath that constrains the process used to
>construct the source tree.
>
There's nothing that constrains the building process, but I think the
data model constrains the result. For example, "There is an element
node for every element in the document. An element node has an
expanded-name computed by expanding the QName of the element
specified in the tag in accordance with the XML Namespaces
Recommendation [XML Names]." If you start with the tag <xi:include>
in the input document, then the resulting element node must have the
expanded name with local part include and the namespace URI that's
mapped to the xi prefix.
>I would expect a useful XSLT processor to give an option to process a source
>document without expanding XInclude, but it wouldn't be non-conformant with
>XSLT if it didn't. In fact, it wouldn't be non-conformant even if it
>required you to construct the source tree by hand.
>
Again, let's not confuse the construction process with the eventual
result. If I have a blueprint for a house, then my contractors may
build it by hand or with power tools. However, what's sitting on my
land when they're done had better look like what is in the blueprint,
or they'll be hearing from my lawyers.
Michael, I'll ask you the same question I asked Uche: would it be
conformant for an XSLT processor to replace all rectangle elements
with circle elements while building the source tree? If not, how does
this case differ from replacing xi:include elements with the things
they point to?
--
+-----------------------+------------------------+-------------------+
| Elliotte Rusty Harold | | Writer/Programmer |
+-----------------------+------------------------+-------------------+
| The XML Bible, 2nd Edition (Hungry Minds, 2001) |
| http://www.cafeconleche.org/books/bible2/ |
| http://www.amazon.com/exec/obidos/ISBN=0764547607/cafeaulaitA/ |
+----------------------------------+---------------------------------+
| Read Cafe au Lait for Java News: http://www.cafeaulait.org/ |
| Read Cafe con Leche for XML News: http://www.cafeconleche.org/ |
+----------------------------------+---------------------------------+