A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z
<p:declare-step type="p:unwrap"> <p:input port="source"/> <p:output port="result"/> <p:option name="match" required="true"/> <!-- XSLTMatchPattern --> </p:declare-step>
Durch den <p:unwrap> Step können umschliessende Elemente entfernt werden. Diese werden dann durch Ihre entsprechenden Kind-Elemente ersetzt. Das zu entfernende umschliessende Element wird durch einen XSLT Ausdruck definiert. Das Quell-Dokument wird über den Input-Port (“source“) eingelesen. Die Ausgabe erfolgt über den Output-Port (“result“).
Beispiel
Im folgenden Beispiel sollen dem bekannten Dokument (“filmsammlung.xml“) die umschliessenden Elemente “Cast“ entfernt werden, so dass die entsprechenden Kind-Elemente (“Hauptdarsteller“) an dessen Stelle treten können.
<?xml version="1.0" encoding="UTF-8"?> <p:declare-step xmlns:p="http://www.w3.org/ns/xproc" xmlns:c="http://www.w3.org/ns/xproc-step" version="1.0"> <p:input port="source"> <p:document href="filmsammlung.xml"/> </p:input> <p:output port="result"/> <p:unwrap match="Cast"/> </p:declare-step>
Nach dem Durchführen dieses Prozesses, sieht das Resultat folgendermaßen aus (Auszug):
<Produzent>George Lucas</Produzent> <Hauptdarsteller>Mark Hamill</Hauptdarsteller> <Hauptdarsteller>Harrison Ford</Hauptdarsteller> <Laenge>121 min</Laenge>
Das umschliessende “Cast“ Element wurde entfernt.