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())
-    }
-};