xsl-list
[Top] [All Lists]

Re: [xsl] Selecting between heading tags in XHTML

2014-10-30 13:41:49
At 2014-10-30 18:35 +0000, Mark Giffin m1879(_at_)earthlink(_dot_)net wrote:
I want to select all siblings between heading tags in an XHTML file, as shown below.

<div>
    <h4>my heading</h4> <<<---- select from this sibling
    <ol>
      <li></li>
    </ol>
    <p></p>
    <p></p>
    <p></p>
    <ul>
      <li></li>
    </ul>      <<<<---- all the way down to this sibling
    <h1></h1>  <<<<---- Do not select this sibling or anything after it
    <p></p>
    etc.
</div>

Given the context of <h4> above, I figure that

following-sibling::*[some predicate here]

would do this but I haven't guessed what would exclude the <h1> (or <h2>, etc.) and everything that follows it. What's a good way to do this?

If you are using XSLT 2.0, use grouping with the group-starting-with= attribute. There is helpful information on pages 443 to 446 of my XSLT book that is available for free download on a "try and buy" basis at http://www.CraneSoftwrights.com/training/#ptux ... if you decide not to pay for the book, please delete the copy that you download for free.

If you are using XSLT 1.0, it can be done with keys. That isn't in the book, so let us know if you are constrained to XSLT 1.0.

I hope this helps.

. . . . . . . Ken


--
Public UBL and code list hands-on classes - Stockholm, Dec. 3&4,2014 |
Contact us for world-wide XML consulting and instructor-led training |
Free 5-hour lecture: http://www.CraneSoftwrights.com/links/video.htm |
Crane Softwrights Ltd.            http://www.CraneSoftwrights.com/s/ |
G. Ken Holman                   mailto:gkholman(_at_)CraneSoftwrights(_dot_)com 
|
Google+ profile:      http://plus.google.com/+GKenHolman-Crane/about |
Legal business disclaimers:    http://www.CraneSoftwrights.com/legal |


---
This email is free from viruses and malware because avast! Antivirus protection 
is active.
http://www.avast.com
--~----------------------------------------------------------------
XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
EasyUnsubscribe: http://lists.mulberrytech.com/unsub/xsl-list/1167547
or by email: xsl-list-unsub(_at_)lists(_dot_)mulberrytech(_dot_)com
--~--

<Prev in Thread] Current Thread [Next in Thread>