Re: Context and... Re: the case of two bats

David Carlisle wrote:

> > But the same objection may not apply to changing XPath,
>
> I think it would.
>
> > In fact, changing XPath to go with the
> > literal interpretation would bring James Clark's processor into
> > conformance
> All known xpath implementations, I think.

We seem to be misunderstanding each other.  I was saying that changing the
namespace spec would break code and documents (or so some have claimed),
but changing XPath to the literal interpretation wouldn't break code or
documents.  Your last sentence doesn't have an operative verb, but I think
your intent is to say that changing XPath would bring all known XPath
implementations into conformance and thus have a positive, not negative,
effect on existing code and documents.   In other words, the objection to
changing the namespace spec (it breaks stuff) does not apply to changing
XPath (it doesn't break stuff).

> > This example is different from the others, I believe, since
>
> It's the same as the others, you can get the same effect without xml
> base using external entities.

I haven't seen another example here that shows how absolutization can
convert a namespace-invalid document into a namespace-valid one.  (To
emphasize: I'm not advocating absolutization, only arguing that it can have
that surprising effect.)

> > In retrospect, the idea of providing both namespace-uri and
> > namespace-name functions seems to be the most desirable solution.  The
> > question is: what would break were it to be adopted?
>
> Adding functions doesn't help.
>
> The question is does
> <xsl:template match="x:x" xmlns:x="bat">
> match
> <y:x xmlns:y="bat">
> Currently the answer according to the namespace spec and xpath
> implementations is yes and according to the xpath spec is no.

The namespace spec uses matching for only one purpose: kicking out
documents as invalid.  Once you've decided a document is valid, the
namespace spec has nothing more to say about matching.  But XPath/XSLT use
matching in a different way: the answer may be yes or it may be no, but it
isn't "this is invalid".

> That is the problem. Adding functions to xpath doesn't help.
> Underspecified "an application that knows what it is doing may do what
> it likes" fudges don't help. The only thing that helps is for the two
> specs to agree on what the namespace name is. (Ideally they would both
> agree that the namespace name is "bat", but there are other options
> as discussed at length on this list, but keeping the two specs giving
> a different answer is not an option)

You only need agreement between answers when the questions are the same or
at least logically related.  What questions about the interpretation of
namespace names in namespace-valid documents does the namespace spec
answer?  I see no such questions in sight.

Paul Abrahams

Received on Wednesday, 14 June 2000 22:13:35 UTC