XSLT -Elemente

Xslt (Extensible Stylesheet -Sprachtransformationen) definiert viele Elemente, um die Transformationen zu beschreiben, die auf ein Dokument angewendet werden sollten. Dieser Artikel listet einige dieser Elemente auf. Für eine Einführung in XSLT siehe die Hauptartikel.

XSLT -Logikelemente

Knoten Beschreibung/ Attribute Container/ Kinder Beispiel
XSL: Templatten anwenden Gibt an, dass andere Übereinstimmungen darin bestehen können Knoten; Wenn dies nicht angegeben ist, werden Übereinstimmungen ignoriert. Wenn auswählen Es wird angegeben, nur die Vorlagen, die ein "Übereinstimmung" angeben, das zum ausgewählten Knoten oder dem Attributtyp passt, werden angewendet. D.h. die passenden Elemente von auswählen Attribut in XSL: Templatten anwenden entsprechen der Vorlage, die den gleichen Elementen übereinstimmt. Wenn Modus Es wird angegeben, nur die Vorlagen, die den gleichen „Modus“ haben und ein entsprechendes „Übereinstimmung“ haben, werden angewendet. Jeder Elternteil. Kann eine beliebige Anzahl von enthalten XSL: Sortieren und XSL: Mit Param Kinder.
/> 
XSL: Wählen Sie Mehrere Auswahlmöglichkeiten. Keine Attribute. Jeder Elternteil. Enthält XSL: Wann Blöcke und bis zu eins XSL: Ansonsten Block.
> 
XSL: For-Each Erstellt eine Schleife, die sich für jedes Spiel wiederholt. auswählen Bezeichnet die Match -Kriterien. Jeder Elternteil. Kann jede XML enthalten.
 select ="Eingabe [@name = $ name]"> 
XSL: If Ja oder keine Bedingungen. Prüfung Gibt Kriterien für die Eingabe des IF an. Jeder Elternteil. Kann jede XML enthalten.
 Test ="$ type = 'text' oder $ type = 'Passwort'" "> 
XSL: Ansonsten Die Standardauswahl, wenn keine der XSL: Wann Kriterien werden erfüllt. XSL: Wählen Sie. Kann jede XML enthalten.
> 
XSL: Stylesheet Element auf höchstem Niveau. Tritt nur einmal in einem Stylesheet -Dokument auf. Ausführung Gibt an, welche XSLT -Version verwendet wird. xmlns: xsl Gibt die an URL von diesem Standard. Element auf höchstem Niveau. Enthält alle XML.
> 
XSL: Vorlage Gibt Verarbeitungsvorlagen an. passen ist, wenn die Vorlage verwendet werden sollte. Name gibt der Vorlage einen Namen, der XSL: Call-Template kann diese Vorlage nennen. XSL: Stylesheet. Kann jede XML enthalten.
 Match ="//Eingang"> 
XSL: Variable Ermöglicht eine Variable, deklariert zu werden. Name ist der variable Name. Es kann später mit erwähnt werden $ name. auswählen ist der Wert der Variablen. Jeder Elternteil. keine Kinder.
 Name ="Typ" select ="@Typ"/> 
XSL: Wann Ja oder Nein. Prüfung Gibt Kriterien für die Eingabe des IF an. XSL: Wählen Sie. Kann jede XML enthalten.
 Test ="$ type = 'radio'" "> 

Beispiel XSLT Stylesheet mit Logikelementen

>   Match ="//Eingang">   Name ="Typ" select ="@Typ"/>   Name ="Name" select ="@Name"/>   Test ="$ type = 'text' oder $ type = 'password' oder $ type = 'radio' oder $ type = 'Kontrollkästchen'" ">  >   Test ="$ type = 'radio'" ">   Test ="Nicht (vorgegangenes Sibling :: Eingabe [@type = 'Radio'])">   Name ="{@Name}">   select ="../input?@name=$Name]">   Wert ="{@Wert}">  />             Test ="$ type = 'text'" ">   Name ="{@Name}" Typ ="{@Typ}">  />       Test ="$ type = 'Passwort'">   Name ="{@Name}" Typ ="{@Typ}">  />            

XSLT -Datei -I/O -Elemente

Knoten Beschreibung/ Attribute Container/ Kinder Beispiel
XSL: Call-Template Ruft die Vorlage auf, deren Name angegeben ist. Name entspricht dem Name in XSL: Vorlage. Jeder Elternteil. Kinder sind XSL: Mit Param.
 Name ="Lib: Make-Elem"> 
XSL: Import Ruft eine andere XSLT -Datei ab. href ist der URI der Datei. XSL: Stylesheet. Keine Kinder.
 href =".. \ bibliothek \ funclib.xslt"/> 
XSL: Ausgabe Beschreibt, wie Daten zurückgegeben werden. Methode Bestimmt, welche Art von Daten zurückgegeben werden. OMIT-XML-Deklaration Gibt an, ob das erste XML -Tag enthalten sein sollte. Codierung Bestimmt, wie die Daten zurückgegeben werden. XSL: Stylesheet. Keine Kinder.
 Methode ="XML" OMIT-XML-Deklaration ="Jawohl" codieren ="UTF-8"/> 
XSL: Param Bezeichnet einen Parameter, der mit der Vorlage mit übergeben werden kann XSL: Call-Template. XSL: Vorlage. Keine Kinder.
 Name ="Elemname"/> 
XSL: Text Gibt den Tag -Inhalt aus. Jeder Elternteil. Keine Kinder.
>ClaimNumber ClaimSeqNumber 
XSL: Wert von Gibt eine Variable aus. auswählen Gibt die Variable an. Jeder Elternteil. Keine Kinder.
 select ="$ s"/> 
XSL: Mit Param Bezeichnet einen Parameter, der an übergeben wird XSL: Call-Template. Es muss von einem abgestimmt werden XSL: Param in der Vorlage. Name Gibt den Parameternamen an. auswählen Gibt die an Parameter Wert. XSL: Call-Template. Keine Kinder.
 Name ="Elemname" select ="'HMA: Claimnumber'"/> 

Client-Seite Xslt kann in a implementiert werden Browser Durch Hinzufügen einer Zeile wie der Quelle eine Linie Xml Datei, direkt nach dem Root XML -Tag.

 

Dies wird auf der Seite beschrieben http://www.xml.com/pub/a/2000/10/25/msie/index.html

Andere XSLT -Semantik

Symbol Bedeutung wo verwendet
| Gewerkschaftsbetreiber. Wird verwendet, um Knotensets in XPath -Ausdrücken zu gruppieren. Wählen Sie Attribute von Elementen wie z. XSL: Wann, XSL: If, XSL: For-Each.
& und Zum Beispiel jedes bedingte oder übereinstimmende Kriterium XSL: if.test, XSL: Wenn, XSL: Vorlage.Select und XSL: for-leec.select.
Kommentar beginnen. Überall nicht in einem Tag.
-> Ende Kommentar. Überall nicht in einem Tag.
$ Beginn eines variablen Namens. Überall in einem Tag zum Beispiel XSL: Wert von. Select und xsl: variable.name.
Name() Der Name des Tags verarbeitet. Nützlich, wenn die passenden Kriterien enthält |s (Rohrsymbole). Zum Beispiel jedes bedingte oder übereinstimmende Kriterium XSL: if.test, XSL: Wenn, XSL: Vorlage.Select und XSL: for-leec.select.
@ Ein Attribut innerhalb des XML. Zum Beispiel jedes bedingte oder übereinstimmende Kriterium XSL: if.test, XSL: Wenn, XSL: Vorlage.Select und XSL: for-leec.select.

[1]

Funktionen, die von XSLT definiert sind

Die folgenden Funktionen können in vielen XSLT-Attributen auftreten, wie z.

Funktion Beschreibung/ Syntax Beispiel
Decke Das Deckenfunktion Gibt das kleinste zurück ganze Zahl Das ist gleich oder größer als der numerische Wert des Zahlenarguments.
Decke(3.57) 
concat Verkettet zwei oder mehr Saiten.
concat($fname, '' ', $lname) 
enthält[2] Gibt true zurück, wenn die erste Zeichenfolge die zweite Zeichenfolge enthält, andernfalls gibt es false zurück.
enthält("String zu suchen", 'finden') 
zählen Die Zählfunktion zählt und gibt die Anzahl der Knoten in einem Knotensatz zurück.
zählen(Elemente) 
Boden Das Bodenfunktion Gibt die größte Ganzzahl zurück, die gleich oder kleiner ist als der numerische Wert des Zahlenarguments.
Boden(3.57) 
Normalisieren Sie den Raum Entfernt den weißen Raum von Anfang und Ende der Saite
Normalisieren Sie den Raum($fname) 
Position Die Positionsfunktion gibt die einbasierte zurück[3] Index des aktuellen Knotens, der von einem verarbeitet wird XSL: For-Each oder XSL: Templatten anwenden Elementknotenliste. Es gibt keine Argumente.
Position() 
runden Die Rundfunktion rundet eine Zahl zu ihrer engsten Ganzzahl.
runden(3.57) 
Saite Die String -Funktion wandelt das Wertargument in eine Zeichenfolge um.
Saite() 
String-Länge Die Funktion der String-Länge gibt die Anzahl der Zeichen in einer Zeichenfolge zurück. Das String -Argument ist optional. Wenn es ausgelassen wird, besteht die Standardeinstellung darin, den Zeichenfolgewert des Kontextknotens zu verwenden.
String-Länge('hallo') 
Substring Ein Segment innerhalb eines variablen Wertes. Das Substring erfordert drei Parameter: die Eingabevariable, das erste ausgewählte Zeichen und die Länge der resultierenden Zeichenfolge
Substring($Dob,4,2) 
Substring Die Substring-After-Funktion gibt einen Teil aus der in dem String-Argument angegebenen Zeichenfolge zurück, die nach dem im Substring-Argument angegebenen Substring auftritt.
Substring("1814 machten wir eine kleine Reise", 'wir') 
Substring-vor Die Substring-vor-Funktion gibt einen Teil aus der in dem String-Argument angegebenen Zeichenfolge zurück, die vor dem im Substring-Argument angegebenen Substring auftritt.
Substring-vor("1814 machten wir eine kleine Reise", 'wir') 
Summe Die Summenfunktion fügt und gibt den Gesamtwert einer Reihe von numerischen Werten in einem Knotensatz oder einer Liste von Werten hinzu.
Summe(1,3,7,12) 
Übersetzen Nimmt die Zeichenfolge im Wert -Argument ein, ersetzt alle Vorkommen von Zeichen im String1 -Argument durch Ersatzzeichen am selben Ort im String2 -Argument und gibt die modifizierte Zeichenfolge zurück.
Übersetzen('Band', 'A B C D', 'A B C D') = 'Band' 

Externe Links

Verweise

  1. ^ "XSLT Referenz".
  2. ^ "XSLT 1.0: Funktion enthält".
  3. ^ "Beispiel 16: 1".