Announcement

Collapse
No announcement yet.

Gruppieren gleicher aufeinanderfolgender Knoten möglich?!

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Gruppieren gleicher aufeinanderfolgender Knoten möglich?!

    Guten Tag,

    kann man mittels xsl:for-each-group Knoten gruppieren, welche Geschwister sind und die gleiche Bezeichnung haben?

    Wie zum Beispiel bei einer Liste:
    HTML Code:
    <h1>heading</h1>
    <p>Absatz</p>
    <li>Listenelement</li>
    <li>Listenelement</li>
    <li>Listenelement</li>
    <li>Listenelement</li>
    <p>Absatz</p>
    <p>Absatz</p>
    <p>Absatz</p>
    <li>Listenelement</li>
    <li>Listenelement</li>
    Wie ist es mir nun möglich aus diesen inkorrekten Listen richtige zumachen? Zum Beispiel orderedlists?

    Mittels xsl:for-each-group und group-starting-with gehts ja irgendwie nicht. Gibt es keine Funktion, welche es mir erlaubt Knoten der gleichen Bezeichnung, welche aufeinanderfolgen zu Gruppieren?

  • #2
    Sollte mit den genannten Techniken durchaus funktionieren, z. B. so:
    Code:
    <xsl:for-each-group select="li" group-starting-with="li[preceding-sibling::*[1][local-name()='p']]">
      <ol>
        <xsl:for-each select="current-group()">
          <li><xsl:value-of select="."/></li>
        </xsl:for-each>
      </ol>
    </xsl:for-each-group>
    Ergebnisfragment:
    Code:
    <ol>
      <li>Listenelement</li>
      <li>Listenelement</li>
      <li>Listenelement</li>
      <li>Listenelement</li>
    </ol>
    <ol>
      <li>Listenelement</li>
      <li>Listenelement</li>
    </ol>

    Comment

    Working...
    X