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:wrap-sequence"> <p:input port="source" sequence="true"/> <p:output port="result" sequence="true"/> <p:option name="wrapper" required="true"/> <!-- QName --> <p:option name="wrapper-prefix"/> <!-- NCName --> <p:option name="wrapper-namespace"/> <!-- anyURI --> <p:option name="group-adjacent"/> <!-- XPathExpression --> </p:declare-step>
Mit dem <p:wrap-sequence> ist es möglich, Dokumente mit einem neuen Element zu umschliessen. Während <p:wrap> durch entsprechende XSLT Ausdrücke gezielt im Dokument verwendet werden kann, so wird bei <p:wrap-sequence> immer das komplette Dokument mit dem neuen Wrapper-Element umschlossen. Wie der Name des Steps “wrap-sequence“ andeutet, können mehrere Sequenzen (i.d.R Dokumente) mit diesem Step verarbeitet werden. Der Name des neuen Wrappers wird in der Option “Wrapper“ angegeben. Diesem Element kann zusätzlich durch die Optionen “wrapper-prefix“ und “wrapper-namespace“ noch ein Namensraum und Prefix zugewiesen werden. Durch die Option “group-adjacent“ kann festgelegt werden, dass Elemente, die direkt zusammen liegen und zu dem von der Option verlangten XPath Ausdruck passen, in das neue Wrapper-Element mit gruppiert werden. Die zu verarbeitenden Dokumente werden am Input-Port (“source“) geladen. Das Resultat wird auf den Output-Port (“result“) geschrieben.
Beispiel
Im Beispiel wird das bekannte Beispieldokument (“filmsammlung“) mit einem Wrapper versehen.
<?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:wrap-sequence wrapper="Videothek"/> </p:declare-step>
Der neue Wrapper im Beispiel heisst “Videothek“. Das Resultat dieses Prozesses würde folgendermaßen aussehen (Auszug):
<Videothek> <FilmSammlung> <Film> <Titel>Star Wars: Episode IV - A New Hope</Titel> <Jahr>1978</Jahr> [...]