xsl:mode on-no-match

Mit dem Attribut on-no-match des xsl:mode-Elements wird bestimmt, wie mit Elementen verfahren wird, für die kein explizites XSLT-Template definiert wurde. Insgesamt stehen sechs verschiedene Werte für das Attribut zur Auswahl:

  • text-only-copy

    Das ist der Default-Modus. Er wird verwendet, wenn das Attribut on-no-match nicht angegeben ist. Für alle Knoten, für die kein Template existiert, wird der Inhalt (mit Sub-Tree) als Text in den Output übernommen. Die Auszeichnungen gehen hierbei verloren. Alle Unterknoten werden ebenfalls als Text in den Output geschrieben, es sei denn, hierfür sind explizite Templates definiert.

  • shallow-copy

    Elemente, für die kein Template existiert, werden unverändert in den Output kopiert. Für untergeordnete Elemente werden, sofern vorhanden, Templates angewandt, andernfalls werden diese ebenfalls unverändert übernommen.

  • shallow-skip

    Elemente ohne Template-Match werden nicht mit in den Output übernommen, sondern verworfen. Sofern für untergeordnete Elemente Templates definiert sind, werden diese jedoch verarbeitet und entsprechend im Output berücksichtigt.

  • deep-copy

    Sobald für einen Knoten kein Template definiert wurde, wird der gesamte Knoten samt Sub-Tree unverändert in den Output kopiert. Templates, die untergeordnete Elemente betreffen, werden ignoriert.

  • deep-skip

    Sobald für einen Knoten kein Template definiert wurde, wird der gesamte Knoten samt Sub-Tree ignoriert und nicht in den Output kopiert. Wenn für untergeordnete Elemente Templates vorhanden sind, werden diese ignoriert.

  • fail

    Es muss für jedes Element ein Template definiert sein. Andernfalls wird ein element-spezifischer Fehler geworfen.

Übungen zu xsl:mode on-no-match

Mit den folgenden Übungen wird der Einsatz verschiedener Werte für on-no-match gezeigt.

   

<< zurück vor >>
Tipp der data2type-Redaktion:
Zum Thema XSLT bieten wir auch folgende Schulungen zur Vertiefung und professionellen Fortbildung an: