From f1c8b55d0cd1830cf9996600d8f50dc2611581f2 Mon Sep 17 00:00:00 2001
From: Martin Goik <goik@hdm-stuttgart.de>
Date: Mon, 20 Nov 2017 23:15:28 +0100
Subject: [PATCH] @xml:base bug fix

---
 ws/Docbook/CustomLayer/slide/slideHdm.xsl | 23 ++++++++++++++++++++---
 1 file changed, 20 insertions(+), 3 deletions(-)

diff --git a/ws/Docbook/CustomLayer/slide/slideHdm.xsl b/ws/Docbook/CustomLayer/slide/slideHdm.xsl
index c4f207f6f..b8b4b0b8f 100644
--- a/ws/Docbook/CustomLayer/slide/slideHdm.xsl
+++ b/ws/Docbook/CustomLayer/slide/slideHdm.xsl
@@ -118,6 +118,16 @@
     
     <xsl:variable name="titleNode" select="d:title"/>
     
+    <xsl:variable name="baseSupplementDir">
+      <xsl:if test="ancestor::*/@xml:base">
+        <xsl:call-template name="hdm.get.leftmost.of.separator">
+          <xsl:with-param name="path" select="ancestor::*/@xml:base"/>
+          <xsl:with-param name="separator" select="'/'"/>
+        </xsl:call-template>
+        <xsl:text>/</xsl:text>
+      </xsl:if>
+    </xsl:variable>
+
     <xsl:variable name="xfigBasename">
       <xsl:call-template name="hdm.get.leftmost.of.separator">
         <xsl:with-param name="path" select="d:mediaobject/d:imageobject/d:imagedata/@fileref"/>
@@ -137,7 +147,15 @@
               </xsl:if>
               
               <xsl:apply-templates select="$titleNode"/>
-              <img src="{$xfigBasename}-{position() -1}.svg"/>
+              <img alt="layered SVG image">
+                <xsl:attribute name="src">
+                  <xsl:value-of select="$baseSupplementDir"/>
+                  <xsl:value-of select="$xfigBasename"/>
+                  <xsl:text>-</xsl:text>
+                  <xsl:value-of select="position() - 1"/>
+                  <xsl:text>.svg</xsl:text>
+                </xsl:attribute>              
+              </img>
               
               <div class ="hdmfooter">
                 <p>
@@ -277,8 +295,7 @@
         </xsl:if>
         <xsl:value-of select="d:imageobject/d:imagedata/@fileref"/>
       </xsl:attribute>
-      
-      
+            
       <xsl:attribute name="style">
         <xsl:variable name="dbValign" select="d:imageobject/d:imagedata/@valign"/>
         
-- 
GitLab