Tests serialization option are represented as document property (3.0)
Test ab-xslt-051.xml is expected to pass.
It requires the following features: xslt-3 or xslt-serialization.
<p:declare-step xmlns:p="http://www.w3.org/ns/xproc" version="3.0">
<p:output port="result"/>
<p:xslt version="3.0" template-name="start">
<p:with-input port="source">
<empty/>
</p:with-input>
<p:with-input port="stylesheet">
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="3.0">
<xsl:output method="xml" indent="true" encoding="UTF-8"/>
<xsl:template name="start">
<doc/>
</xsl:template>
</xsl:stylesheet>
</p:with-input>
</p:xslt>
<p:cast-content-type content-type="application/xml">
<p:with-input select="p:document-property(., 'serialization')"/>
</p:cast-content-type>
</p:declare-step>
<s:schema xmlns="http://www.w3.org/1999/xhtml" xmlns:s="http://purl.oclc.org/dsdl/schematron" queryBinding="xslt2">
<s:ns prefix="j" uri="http://www.w3.org/2005/xpath-functions"/>
<s:pattern>
<s:rule context="/">
<s:assert test="j:map">The document root is not 'map'.</s:assert>
<s:assert test="j:map/j:boolean/@key='indent'">There is no boolean entry for key 'indent'.</s:assert>
<s:assert test="j:map/j:boolean[@key='indent']/text()='true'">Value for boolean entry @key='indent' is not 'true'.</s:assert>
<s:assert test="j:map/j:string/@key='method'">There is no string entry for key 'method'.</s:assert>
<s:assert test="j:map/j:string[@key='method']/text()='xml'">Value for string entry @key='method' is not 'xml'.</s:assert>
<s:assert test="j:map/j:string/@key='encoding'">There is no string entry for key 'encoding'.</s:assert>
<s:assert test="j:map/j:string[@key='encoding']/text()='UTF-8'">Value for string entry @key='encoding' is not 'UTF-8'.</s:assert>
</s:rule>
</s:pattern>
</s:schema>
Added attribute 'queryBinding' to schematron's schema.
Added feature xslt-serialization to test.
Initial commit