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:sink

<p:declare-step type="p:sink">
   <p:input port="source" sequence="true"/>
</p:declare-step>

Der Step <p:sink> verfügt lediglich über einen Input-Port (“source“). Alles, was in diesen Port hineingeladen wird, wird verworfen. Dieser Step kann bei komplexeren Verarbeitungen sinnvoll sein, wenn z.B. diverse Zwischenresultate oder Teile eines Dokuments nicht weiter benötigt werden. Er hat keinen Output-Port.

Beispiel

Im Beispiel wird die Eingangsdatei am Input-Port eingelesen und durch <p:sink> verworfen.

<?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:empty/>
   </p:output>
   <p:sink/>
</p:declare-step>

Im primären Output-Port (“result“) muss ein <p:empty> deklariert werden, da es sonst zu einem dynamischen Fehler kommen würde (ein Port darf niemals ungebunden sein).

Tipp der data2type-Redaktion:
Zum Thema XProc bieten wir auch folgende Schulungen zur Vertiefung und professionellen Fortbildung an: