diff --git a/modules/intermediate_format/preprocessing.xqm b/modules/intermediate_format/preprocessing.xqm index 92b03b208b0268cde1b5b2d355bbf013cfc760d3..061e16c723bf0af48b95276104252204e8d54a87 100644 --- a/modules/intermediate_format/preprocessing.xqm +++ b/modules/intermediate_format/preprocessing.xqm @@ -114,7 +114,7 @@ declare function pre:default-element (if($following-node[matches(., "[\s\n\r\t]") and normalize-space(.) = ""] and $following-sibling[self::ref or self::app or self::hi or self::bibl or self::foreign or self::choice or self::milestone or self::persName - or self::choice or self::index] + or self::choice or self::index or self::seg] and not($node[self::index])) then attribute {"break-after"}{"yes"} @@ -261,34 +261,10 @@ declare function pre:preprocessing } ) else ( - whitespace:set-additional-whitespace($node) + pre:default-element( $node, pre:preprocessing($node/node()) ) ) ) - case element(ref) return ( - whitespace:set-additional-whitespace($node) - ) - - case element(app) return ( - whitespace:set-additional-whitespace($node) - ) - - case element(bibl) return ( - whitespace:set-additional-whitespace($node) - ) - - case element(foreign) return ( - whitespace:set-additional-whitespace($node) - ) - - case element(p) return ( - whitespace:set-additional-whitespace($node) - ) - - case element(choice) return ( - whitespace:set-additional-whitespace($node) - ) - default return ( pre:default-element( $node, pre:preprocessing($node/node()) ) ) diff --git a/modules/intermediate_format/whitespace-handling.xqm b/modules/intermediate_format/whitespace-handling.xqm index 94b6cc28d534da057b909ac26d11958aeca2d990..4e797d5772be53852413093f2c18d048e88d1b1e 100644 --- a/modules/intermediate_format/whitespace-handling.xqm +++ b/modules/intermediate_format/whitespace-handling.xqm @@ -65,32 +65,3 @@ declare function whitespace:escape-text text {replace($text, '[\s]+', $escape)} }; - -(:~ - : whitespace:set-additional-whitespace() - : This function creates a "break-after"-attribute for a node, that has to be - : followed by a whitespace in PDF. - : - : - : @param $node the current node - : @return node() the new node with an attribute where necessary - : - : @version 1.0 (2018-02-13) - : @status working - : @author Michelle Rodzis - :) -declare function whitespace:set-additional-whitespace($node as node()) as node() { - let $following-node := $node/following-sibling::node()[1] - let $following-sibling := $node/following-sibling::*[1] - return element {$node/name()}{ - $node/@*, - (if($following-node[matches(., "[\s\n\r\t]") and normalize-space(.) = ""] - and $following-sibling[self::ref or self::app or self::hi or self::bibl - or self::foreign or self::choice or self::milestone or self::persName - or self::choice or self::index or self::seg]) - then - attribute {"break-after"}{"yes"} - else ()), - pre:preprocessing($node/node()) - } -};