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:escape-markup

<p:declare-step type="p:escape-markup">
   <p:input port="source"/>
   <p:output port="result"/>
   <p:option name="cdata-section-elements" select="''"/> <!-- ListOfQNames -->
   <p:option name="doctype-public"/> <!-- string -->
   <p:option name="doctype-system"/> <!-- anyURI -->
   <p:option name="escape-uri-attributes" select="'false'"/> <!-- boolean -->
   <p:option name="include-content-type" select="'true'"/> <!-- boolean -->
   <p:option name="indent" select="'false'"/> <!-- boolean -->
   <p:option name="media-type"/> <!-- string -->
   <p:option name="method" select="'xml'"/> <!-- QName -->
   <p:option name="omit-xml-declaration" select="'true'"/> <!-- boolean -->
   <p:option name="standalone" select="'omit'"/><!-- "true" | "false" | "omit" -->
   <p:option name="undeclare-prefixes"/> <!-- boolean -->
   <p:option name="version" select="'1.0'"/> <!-- string -->
</p:declare-step>

Der Step <p:escape-markup> wandelt sämtliche spitze Klammern (die Markups) aller Kind-Elemente des eingelesenen Wurzelelements (“source“) in ihre entsprechenden Entitiy Escape-Zeichen um und gibt dieses Dokument dann am Output-Port (“result“) aus. Darüberhinaus stehen dem Benutzer noch eine ganze Reihe an Optionen offen, die das Escape-Verhalten dieses Steps beeinflussen. Auf die Optionen im Einzelnen wird in diesem Zusammenhang nicht näher eingegangen.

Beispiel

Das bekannte Dokument (“filmsammlung.xml“) wird durch einen <p:identity>-Step geschickt. Vorher jedoch durch einen <p:escape-markup>-Step.

<?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:escape-markup/>
   <p:identity/>
</p:declare-step>

Es werden sämtliche Kind-Elemente von “Filmsammlung“ durch ihre Entity Escape-Zeichen ersetzt. Das Resultat dieser Prozedur sieht folgendermaßen aus (Auszug):

&lt;FilmSammlung&gt;
  &lt;Film&gt;
    &lt;Titel&gt;Star Wars: Episode IV - A New Hope&lt;/Titel&gt;
    &lt;Jahr&gt;1978&lt;/Jahr&gt;
    &lt;Genre&gt;SciFi&lt;/Genre&gt;
[...]
Tipp der data2type-Redaktion:
Zum Thema XProc bieten wir auch folgende Schulungen zur Vertiefung und professionellen Fortbildung an: