This is the mail archive of the
xsl-list@mulberrytech.com
mailing list .
RE: container list display problem
- From: "Loren Scherbak" <ScherbakL at aaa dot si dot edu>
- To: <xsl-list at lists dot mulberrytech dot com>
- Date: Wed, 01 May 2002 17:42:52 -0400
- Subject: RE: [xsl] container list display problem
- Reply-to: xsl-list at lists dot mulberrytech dot com
Michael,
I am sure I'm doing this wrong as I am a newbie at coding XSL. I am trying to find if the parent of the container — the parent of the <did> that houses the <container> tag — also has the same container number. So if the subseries ends and another series starts, but they are both microfilmed on the same reel, then the reel number is not repeated.
How do I test that in XSL? I tried your suggestion, but unfortunately it doesn't solve the problem.
Thanks very much for responding so quickly. I am really amazed at the generosity of people on this list to help even newbies like me.
Loren
—------------------------------------------------------------
Date: Wed, 1 May 2002 15:01:55 +0100
From: "Michael Kay" <michael.h.kay@ntlworld.com>
Subject: RE: [xsl] container list display problem
> I have been using a style sheet that supports an XML DTD
> called EAD - Encoded Archival Description. ....
>
> <xsl:when test="(../preceding-sibling::c03[1]//did/container
> @type='reel']=$reelnumber
> or parent::c02[last()]/did/container[@type='reel']=$reelnumber)">
>
I haven't tried to understand your detailed logic but the
parent::c02[last()] test looks wrong. A node has exactly one parent so the
predicate [last()] is always true. You obviously don't want to select the
"last parent" because there is only one. Perhaps you want to test whether
the parent is the last child of its own parent? In that case the condition
would be parent[not(following-sibling::*)].
Michael Kay
Software AG
home: Michael.H.Kay@ntlworld.com
work: Michael.Kay@softwareag.com
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list