Add qemu 2.4.0
[kvmfornfv.git] / qemu / roms / openbios / config / xml / xinclude.xsl
diff --git a/qemu/roms/openbios/config/xml/xinclude.xsl b/qemu/roms/openbios/config/xml/xinclude.xsl
new file mode 100644 (file)
index 0000000..5bcbf53
--- /dev/null
@@ -0,0 +1,43 @@
+<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+
+ <!-- 
+ Stefans own xinclude implementation.
+ We really don't want to bother the users with namespaces
+ -->
+ <xsl:output method="xml" indent="yes"/>
+ <xsl:strip-space elements="*"/>
+
+ <xsl:template match="node() | @*">
+  <xsl:copy>
+   <xsl:apply-templates select="@* | node()"/>
+  </xsl:copy>
+ </xsl:template>
+<!-- <xsl:template match="xi:include" xmlns:xi="http://www.w3.org/2001/XInclude"> -->
+ <xsl:template match="include">
+  <xsl:variable name="href"><xsl:value-of select="@href"/>
+  </xsl:variable>
+  <xsl:for-each select="document(@href)">
+   <!--
+   <xsl:copy><xsl:copy-of select="@*"/>
+   <xsl:attribute name="base">
+     <xsl:value-of select="$href"/>
+   </xsl:attribute>
+   <xsl:apply-templates select="node()" />
+   </xsl:copy>
+   -->
+   <xsl:element name="{local-name(*)}" namespace="{namespace-uri(..)}">
+    <xsl:copy-of select="*/@*"/>
+    <xsl:attribute name="base">
+     <xsl:value-of select="$href"/>
+    </xsl:attribute>
+    <xsl:for-each select="*">
+     <xsl:apply-templates/>
+    </xsl:for-each>
+   </xsl:element>
+  </xsl:for-each>
+ </xsl:template>
+</xsl:stylesheet>