DRP as context for TVT 004

Tests DRP is context node for TVT in a p:try step (catch pipeline)

Test ab-drp-context-004.xml is expected to pass.

The pipeline


<p:declare-step xmlns:c="http://www.w3.org/ns/xproc-step" xmlns:p="http://www.w3.org/ns/xproc" version="3.0">
   <p:output port="result"/>
   <p:identity>
      <p:with-input>
         <doc>
            <value>5</value>
         </doc>
      </p:with-input>
   </p:identity>
   <p:try>
      <p:error code="error">
         <p:with-input>
            <ERROR>failure</ERROR>
         </p:with-input>
      </p:error>
      <p:catch>
         <p:identity>
            <p:with-input>
               <result>{/c:errors/c:error/ERROR/text()}</result>
            </p:with-input>
         </p:identity>
      </p:catch>
   </p:try>
</p:declare-step>
MorganaXProc passing XML Calabash passing

Schematron validation


<s:schema xmlns="http://www.w3.org/1999/xhtml" xmlns:s="http://purl.oclc.org/dsdl/schematron" queryBinding="xslt2">
   <s:pattern>
      <s:rule context="/">
         <s:assert test="/result">Document root is not named 'result'.</s:assert>
         <s:assert test="count(*) = 1">Document does not have exactly one child element.</s:assert>
         <s:assert test="/result/text() = 'failure'">Element 'result' has the wrong content.</s:assert>
      </s:rule>
   </s:pattern>
</s:schema>

Revision history

10 Jun 2021, Achim Berndzen

Added attribute 'queryBinding' to schematron's schema.

24 Jul 2019, Achim Berndzen

Fixed XPath expression in TVT.

23 Jul 2019, Norman Walsh

Updated to reflect that the input to ‘p:error’ is passed through.

22 Jul 2019, Norman Walsh

Updated to reflect that the ‘error’ port is now the DRP in p:catch.

30 Dec 2018, Achim Berndzen

Created new test