Add-attribute-010 (AB)

Tests adding an attribute with a prefixed QName() in p:with-option to doc (conflict in prefix).

Test ab-add-attribute-010.xml is expected to pass.

The pipeline


<p:declare-step xmlns:p="http://www.w3.org/ns/xproc" xmlns:x="http://other-namespace" version="3.0">
   <p:output port="result"/>
   <p:add-attribute match="/x:doc" attribute-value="5">
      <p:with-input>
         <x:doc/>
      </p:with-input>
      <p:with-option name="attribute-name" select="QName('http://attribute-namespace', 'x:att')"/>
   </p:add-attribute>
</p:declare-step>
MorganaXProc passing XML Calabash passing

Schematron validation


<s:schema xmlns:s="http://purl.oclc.org/dsdl/schematron" queryBinding="xslt2">
   <s:ns prefix="x" uri="http://other-namespace"/>
   <s:ns prefix="att-ns" uri="http://attribute-namespace"/>
   <s:pattern>
      <s:rule context="/">
         <s:assert test="x:doc">The document root is not doc.</s:assert>
         <s:assert test="x:doc/@att-ns:att">There is not attribute "Q{http://attribute-namespace}att" at doc.</s:assert>
         <s:assert test="x:doc/@att-ns:att=5">Value of attribute "Q{http://attribute-namespace}att" is not 5.</s:assert>
      </s:rule>
   </s:pattern>
</s:schema>

Revision history

10 Jun 2021, Achim Berndzen

Added attribute 'queryBinding' to schematron's schema.

16 Feb 2019, Achim Berndzen

Added new tests for p:add-attribute.