This is the mail archive of the xsl-list@mulberrytech.com mailing list .


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Implementing XPointer Resolution With saxon:evaluate()


Eliot,

Easy bit first:
Also, why does this fail?:

     <xsl:for-each select="$direct-result">
        <xsl:choose>
          <xsl:when test="xindr:indirector">
            <!-- Never gets here -->

When the context node is "xindr:indirector" (as returned by name())? The
corresponding template match does work. Is this a subtle side effect of
name-space processing?
Try test="self::xindr:indirector". You're forgetting that there's an invisible child:: axis in that XPath.

Now the hard one:

What I can't figure out is how to have the resolve-xpointer template
return the actual nodes referenced, not a copy of them--is this even
possible without writing an extension function that does all the address
resolution? That is, I don't see a way for the value of a template to be
the direct value of a select action, rather than a copy of the value.
On the face of it, this would seem to be impossible, since templates aren't really functions, we just use them that way to return RTFs (which some are willing to use extensions to turn back into node sets -- but not the original nodes).

No doubt Mike K. or another implementor can confirm this; no doubt also there is some design principle of the language that accounts for why you aren't allowed such resolution.

Maybe I'm being dense, but why do you conclude
However, my implementation of resolve-xpointer uses xsl:copy-of, which
of course isn't going to work because the copy nodes are not the same as
the initial target nodes.
Yet if they contain all the same information, using a node-set extension couldn't you query into them and find the further information you need to continue along your chain?

Cheers,
Wendell


======================================================================
Wendell Piez mailto:wapiez@mulberrytech.com
Mulberry Technologies, Inc. http://www.mulberrytech.com
17 West Jefferson Street Direct Phone: 301/315-9635
Suite 207 Phone: 301/315-9631
Rockville, MD 20850 Fax: 301/315-8285
----------------------------------------------------------------------
Mulberry Technologies: A Consultancy Specializing in SGML and XML
======================================================================


XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]