diff --git a/bin/slubsipbuilder.pl b/bin/slubsipbuilder.pl
index e2b76c7ad2b290564e390dc05d2109f9cda36540..16a6a9b4521f404e11a6d97a9e0b0a938119f101 100755
--- a/bin/slubsipbuilder.pl
+++ b/bin/slubsipbuilder.pl
@@ -179,6 +179,14 @@ PATCH2
 sub get_mods_from ($$) { # $mods = ($url, $ppn)
     my $url = shift;
     my $ppn = shift; # example: "457035137"  for "Der Fichtelberg"
+
+    # check xsl directory
+    my $xsl_dir = dirname(__FILE__) . '/../xsl/';
+    if (! -d $xsl_dir) {
+        say "Rebuilding XSL directory '$xsl_dir'";
+        mkpath($xsl_dir) || confess ("could not mkdir '$xsl_dir', $!");;
+    }
+
     #### where to find XSLT
     # my $marc_dc_url = 'http://www.loc.gov/standards/marcxml/xslt/MARC21slim2RDFDC.xsl';
     my $marc_mods_url           = 'http://www.loc.gov/standards/mods/v3/MARC21slim2MODS3-6.xsl';