xslt-1.0Aan de slag met xslt-1.0


Opmerkingen

Deze sectie geeft een overzicht van wat xslt-1.0 is en waarom een ontwikkelaar het misschien wil gebruiken.

Het moet ook alle grote onderwerpen binnen xslt-1.0 vermelden en een link naar de gerelateerde onderwerpen bevatten. Aangezien de documentatie voor xslt-1.0 nieuw is, moet u mogelijk eerste versies van die gerelateerde onderwerpen maken.

Identiteitstransformatie met behulp van de "identiteitsregel"

Dit voorbeeld toont de basis van bijna elke XSLT-transformatie en het meest fundamentele XSLT-ontwerppatroon. Produceren als uitvoer van een XML-document dat identiek is aan het bron-XML-document.

Bron XML-document :

<t>Hello, World!</t>
 

XSLT-transformatie :

<xsl:stylesheet version="1.0"  xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
 <xsl:output omit-xml-declaration="yes" indent="yes"/>
 
  <xsl:template match="@*|node()">
    <xsl:copy>
      <xsl:apply-templates select="@*|node()"/>
    </xsl:copy>
  </xsl:template>
</xsl:stylesheet>
 

Resultaat : wanneer deze transformatie op een bron-XML-document wordt toegepast, is de uitvoer een XML-document dat identiek is aan het bron-XML-document. In dit geval:

<t>Hello, World!</t>
 

Let op :

  1. Het gebruiken en overschrijven van de identiteitsregel is het meest fundamentele XSLT-ontwerppatroon. Dit leidt tot eenvoudige, korte en elegante oplossingen voor fundamentele taken, zoals het verwijderen / invoegen / hernoemen van elementen, en nog veel meer.

  2. De identiteitsregel / sjabloon is degene die is gepubliceerd in de W3C XSLT 1.0-specificatie

Installatie of instellingen

Een XSLT-processor is nodig om een XSLT-transformatie uit te voeren. Het kan meestal worden geïnstalleerd via de pakketbeheerder van het systeem. In Debian kan het bijvoorbeeld worden geïnstalleerd met:

sudo apt-get install xsltproc
 

Minimale "Hellow World" -transformatie

Dit is een minimaal mogelijke XSLT-transformatie. Het produceert de tekenreekswaarde van het bron-XML-document. Het uitvoerformaat is text .

Bron XML-document :

<t>Hello, World!</t>
 

XSLT-transformatie :

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
  <xsl:output method="text"/>
</xsl:stylesheet>
 

Resultaat van het toepassen van de transformatie op het hierboven gespecificeerde bron-XML-document:

Hello, World!
 

Let op :

  1. Er wordt geen <xsl:template> -verklaring gebruikt.

  2. Het gewenste type uitvoer wordt opgegeven in de declaratie <xsl:output> , als de waarde van het kenmerk method .

  3. Als er geen overeenkomende sjablonen zijn, past de XSLT-processor, volgens de regels van het XSLT-verwerkingsmodel, de standaard ingebouwde XSLT -sjablonen toe en dit resulteert in het kopiëren naar de uitvoer van de aaneenschakeling van alle tekstknooppunten in documentvolgorde. In dit eenvoudige geval heeft het bron-XML-document slechts één tekstknooppunt met tekenreekswaarde de tekenreeks " Hello, World! ".