Re: Svar: Re: [xml] XPath problem with namespaces
- From: Daniel Veillard <veillard redhat com>
- To: Fabrice Desré - France Telecom R&D/DTL/TAL <fabrice desre francetelecom com>
- Cc: xml gnome org
- Subject: Re: Svar: Re: [xml] XPath problem with namespaces
- Date: Tue, 8 Jun 2004 05:20:14 -0400
On Tue, Jun 08, 2004 at 09:36:14AM +0200, Fabrice Desré - France Telecom R&D/DTL/TAL wrote:
Erik F. Andersen wrote:
Thanks,
that was it. I knew I knew it, there was just too much info at once ;-)
But why can't it simply register all the namespaces from the document
itself in xmlXPathNewContext?
Because there's no way to predict which prefix will be used in the
instance (you can even use a default namespace). So you have to bind the
prefix that you will use in the xpath expression, and it can be
different from the prefix in the document.
it's worse than that. Namespace scope is a subtree. You can have
different prefixes mapped to different namespace in different subtrees.
<top>
<t xmlns:ns='a'><ns:foo/></t>
<t xmlns:ns='b'><ns:foo/></t>
</top>
is perfectly legal as a namespaced document.
If people take the time to read the conformance section of the XPath spec
they will discover that there is no conformance for XPath as-is. The XPath
spec was not designed to be used standalone, but reused by XSLT and XPointer.
As a result the spec does not explain how to apply XPath to a document
or tree, how the evaluation context is initialized was left to be described
by the other specs reusing it.
Daniel
--
Daniel Veillard | Red Hat Desktop team http://redhat.com/
veillard redhat com | libxml GNOME XML XSLT toolkit http://xmlsoft.org/
http://veillard.com/ | Rpmfind RPM search engine http://rpmfind.net/
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]