<p:declare-step xmlns:p="http://www.w3.org/ns/xproc" xmlns:px="http://www.daisy.org/ns/pipeline/xproc" version="1.0" type="px:fileset-join"> <p:documentation xmlns="http://www.w3.org/1999/xhtml"> <p>Join zero or more <code>d:fileset</code> documents into a single one. The joint <code>xml:base</code> is the longest common URI of all the <code>xml:base</code> attributes. If an input fileset does not have an <code>xml:base</code> or if it is not a "file:" URI, it does not contribute to the new base. If none of the input fileset have an <code>xml:base</code> the joint fileset has no <code>xml:base</code> either. The <code>href</code> and <code>original-href</code> attributes are normalized. <code>href</code> are relativized against the new base, and <code>original-href</code> are made absolute. <code>@xml:base</code> attributes are removed from <code>d:file</code>. Files that have the same resolved <code>href</code> are merged, i.e. their attributes are combined. In case of conflicting attributes the last occurence wins.</p> Files are listed in the order in which their <code>href</code> occurs first in the source documents. </p:documentation> <p:input port="source" sequence="true"/> <p:output port="result" primary="true"/> <p:import href="http://www.daisy.org/pipeline/modules/file-utils/library.xpl"> <p:documentation> px:add-xml-base </p:documentation> </p:import> <p:for-each> <px:add-xml-base root="false"/> </p:for-each> <p:xslt template-name="main"> <p:input port="stylesheet"> <p:document href="../xslt/fileset-join.xsl"/> </p:input> <p:input port="parameters"> <p:empty/> </p:input> </p:xslt> </p:declare-step>