At 11:33 PM -0500 4/22/02, Douglas and Elena Husemann wrote:
> You said in another message, about the disconnects between the other XML
>standards.
> xslt, xinclude, etc. That and, XML Base, breaking namespaces and several
>other inconsistencies
> Led to my writing the message about the convoluted set of
>standards. And that
>it appears that
> Working Groups are not talking to each other.
>
I find very few of these specs inconsistent. XML Base most certainly
does not break namespace processing,. It specifically states that
"Namespaces in XML [XML Names] uses URI references, which as
currently defined should not be resolved relative to the base URI
defined by xml:base for the purposes of namespace identification.
Higher level processes which dereference namespace URIs are not
covered by the namespaces specification and might at their option
specify that xml:base is honored for the purposes of fetching
resources at those URIs."
The only major inconsistency between specs is between DOM and
Namespaces in XML, and this is a minor point with regard to the
proper namespace URI for the xmlns prefix. DOM is simply wrong here.
(XML 1.1 and Namespaces 1.1 clearly do open inconsistencies) but the
interactions between the rest of the specs are all straight-forward
to understand as long as you do what they say and nothing else. The
problems only arise when people assume the specs say more than they
actually do say.
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.
--
+-----------------------+------------------------+-------------------+
| 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/ |
+----------------------------------+---------------------------------+