Tests p:archive-manifest
Test ab-archive-manifest-001.xml is expected to pass.
<p:declare-step xmlns:p="http://www.w3.org/ns/xproc" name="pipeline" version="3.0">
<p:output port="result"/>
<p:archive-manifest>
<p:with-input href="../documents/archive.zip"/>
</p:archive-manifest>
</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="c" uri="http://www.w3.org/ns/xproc-step"/>
<s:pattern>
<s:rule context="/">
<s:assert test="c:archive">Root element is not 'c:archive'.</s:assert>
<s:assert test="count(c:archive/c:entry)=10">Element 'c:archive' does not have 10 children named 'c:entry'</s:assert>
<s:assert test="c:archive/c:entry/@name='doc.xml'">There is no c:entry for 'doc.xml'.</s:assert>
<s:assert test="c:archive/c:entry/@name='fish.jpg'">There is no c:entry for 'fish.jpg'.</s:assert>
<s:assert test="c:archive/c:entry/@name='html.html'">There is no c:entry for 'html.html'.</s:assert>
<s:assert test="c:archive/c:entry/@name='json.json'">There is no c:entry for 'json.json'.</s:assert>
<s:assert test="c:archive/c:entry/@name='text.txt'">There is no c:entry for 'text.txt'.</s:assert>
<s:assert test="c:archive/c:entry/@name='folder/doc.xml'">There is no c:entry for 'folder/doc.xml'.</s:assert>
<s:assert test="c:archive/c:entry/@name='folder/fish.jpg'">There is no c:entry for 'folder/fish.jpg'.</s:assert>
<s:assert test="c:archive/c:entry/@name='folder/html.html'">There is no c:entry for 'folder/html.html'.</s:assert>
<s:assert test="c:archive/c:entry/@name='folder/json.json'">There is no c:entry for 'folder/json.json'.</s:assert>
<s:assert test="c:archive/c:entry/@name='folder/text.txt'">There is no c:entry for 'folder/text.txt'.</s:assert>
<s:assert test="count(c:archive/c:entry/@href)=10">Every c:entry must have an attribute 'href'.</s:assert>
</s:rule>
</s:pattern>
</s:schema>
Added attribute 'queryBinding' to schematron's schema.
Initial tests for p:archive-manifest