p:set-properties-012 (AB)

Tests p:set-properties

Test ab-set-properties-012.xml is expected to pass.

The pipeline


      <p:declare-step xmlns:p="http://www.w3.org/ns/xproc" version="3.0">
         <p:output port="result"/>
            
         <p:set-properties properties="map{'key':'new-value'}" merge="true">
            <p:with-input>
               <p:inline content-type="text/plain" document-properties="map{'key':'value'}">text</p:inline>
            </p:with-input>
         </p:set-properties>
         
         <p:cast-content-type content-type="application/xml">
            <p:with-input select="p:document-properties(.)"/>
         </p:cast-content-type>
      </p:declare-step>
   
MorganaXProc passing XML Calabash passing

Schematron validation


      <s:schema xmlns:s="http://purl.oclc.org/dsdl/schematron">
         <s:ns uri="http://www.w3.org/2005/xpath-functions" prefix="j"/>
         <s:pattern>
            <s:rule context="/">
               <s:assert test="j:map">Root element is not 'j:map'.</s:assert>
               <s:assert test="j:map/j:string[@key='content-type']">No 'content-type' property found.</s:assert>
               <s:assert test="j:map/j:string[@key='content-type']/text()='text/plain'">Element 'content-type' is not 'text/plain'.</s:assert>
               <s:assert test="j:map/j:string[@key='key']/text()='new-value'">No 'key' property with value 'new-value' found.</s:assert>
               <s:assert test="j:map/j:string[@key='base-uri']">No 'base-uri' property found.</s:assert>
            </s:rule>
         </s:pattern>
      </s:schema>
   

Revision history

23 Nov 2019, Achim Berndzen

Changed test from p:document-properties-document() to p:document-properties()

19 May 2019, Achim Berndzen

Tests for p:set-properties