XProc Steps

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:wrap-sequence

<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>
[...]
Tipp der data2type-Redaktion:
Zum Thema XProc bieten wir auch folgende Schulungen zur Vertiefung und professionellen Fortbildung an: