diff --git a/modules/intermediate_format/ifweb.xql b/modules/intermediate_format/ifweb.xql index e7b67f0128e84e40138b65216cadcd9b4acba911..8eeeef04d66f6278ff510d2791fca2ac24428bc7 100644 --- a/modules/intermediate_format/ifweb.xql +++ b/modules/intermediate_format/ifweb.xql @@ -38,16 +38,27 @@ as node()* { return $intermediate-format }; + +declare function ifweb:transform($doc as node()*, $filename as xs:string, +$target-dir as xs:string) as node()* { + let $preprocessed-data := pre:preprocessing($doc/tei:TEI, $ifweb:replace-whitespace) + let $intermediate-format := ident:walk($preprocessed-data, ()) + let $store := xmldb:store($target-dir, $filename, $intermediate-format) + + return $intermediate-format +}; + + declare function ifweb:complete-xml($author as xs:string, $xml as node()*) as node()* { let $filename := $author || "-full-if.xml" return ifweb:transform($xml, $filename) }; -declare function ifweb:single-xml($resource as node()*, $filename as xs:string) -as node()* { - let $filename := substring-before($filename, '.xml') || "-if.xml" - return ifweb:transform($resource, $filename) +declare function ifweb:single-xml($filename as xs:string, $src-dir as xs:string, +$target-dir as xs:string) as node()* { + let $resource := doc($src-dir || $filename) + return ifweb:transform($resource, $filename, $target-dir) }; declare function ifweb:transform-split-xml($xml as node()*, $filename as xs:string,