Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?xml version="1.0" encoding="UTF-8"?>
- <p:declare-step version="1.0"
- xmlns:p="http://www.w3.org/ns/xproc"
- xmlns:c="http://www.w3.org/ns/xproc-step"
- xmlns:cx="http://xmlcalabash.com/ns/extensions"
- xmlns:svrl="http://purl.oclc.org/dsdl/svrl">
- <p:option name="doc" required="true"/>
- <p:import href="http://xmlcalabash.com/extension/steps/library-1.0.xpl"/>
- <p:group name="relaxng-validation">
- <p:exec command="java" result-is-xml="false" wrap-result-lines="true">
- <p:with-option name="cwd" select="replace(resolve-uri('.',base-uri()),'^file:','')">
- <p:inline>
- <doc/>
- </p:inline>
- </p:with-option>
- <p:with-option name="args"
- select="concat('-jar lib/jing.jar -c schemas/epub-nav-30.rnc ', $doc)"/>
- <p:input port="source">
- <p:empty/>
- </p:input>
- </p:exec>
- <p:for-each>
- <p:iteration-source select="//c:line"/>
- <cx:message>
- <p:with-option name="message" select="normalize-space(.)"/>
- </cx:message>
- <p:sink/>
- </p:for-each>
- </p:group>
- <p:group name="schematron-validation">
- <p:load>
- <p:with-option name="href" select="$doc"/>
- </p:load>
- <p:validate-with-schematron name="validate-with-schematron" assert-valid="false">
- <p:input port="schema">
- <p:document href="schemas/epub-nav-30.sch"/>
- </p:input>
- <p:input port="parameters">
- <p:empty/>
- </p:input>
- </p:validate-with-schematron>
- <p:sink/>
- <p:for-each>
- <p:iteration-source select="//svrl:failed-assert">
- <p:pipe port="report" step="validate-with-schematron"/>
- </p:iteration-source>
- <cx:message>
- <p:with-option name="message"
- select="concat('FAILURE: ',local-name(/*),': ',normalize-space(/*/svrl:text/text()))"
- />
- </cx:message>
- <p:sink/>
- </p:for-each>
- </p:group>
- </p:declare-step>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement