Karl,
I might add,
At 02:52 PM 10/17/2003, I wrote:
Anyways, this is what I ended up with for a variable declaration:
<xsl:variable name="xmTmplt"
select="$DOC_TEMPLATE_XML//DOC[(_at_)id=ancestor-or-self::*[count(current()/ances
tor-or-self::*)-1]/@id]"/>
Its a bit messy, but it works (is this common? maybe this isn't messy, but
is the most *complex* xpath expression I've written so far).
I've written much worse. So common ... no ... unheard-of ... not at all.
On the other hand, the expression above could be tightened to
$DOC_TEMPLATE_XML//DOC[(_at_)id=ancestor::*[last() - 1]/@id]
or even
$DOC_TEMPLATE_XML//DOC[(_at_)id=ancestor::*/@id]
if the ancestor you are interested in is the only ancestor with an @id
(ancestor::*/@id collects @id attributes on all ancestors).
Cheers,
Wendell
======================================================================
Wendell Piez
mailto:wapiez(_at_)mulberrytech(_dot_)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