Actually check for the value of element set name.
[irspy-moved-to-github.git] / xsl / irspy2zeerex.xsl
index 0f82475..db8bc39 100644 (file)
@@ -1,6 +1,6 @@
 <?xml version="1.0"?>
 <!--
-    $Id: irspy2zeerex.xsl,v 1.3 2006-10-27 11:45:18 sondberg Exp $
+    $Id: irspy2zeerex.xsl,v 1.6 2006-10-27 12:51:56 sondberg Exp $
 
     This stylesheet is used by IRSpy to map the internal mixed Zeerex/IRSpy
     record format into the Zeerex record which we store.
@@ -22,7 +22,7 @@
   <xsl:preserve-space elements="*"/>
 
   <xsl:variable name="old_indexes" select="/*/explain:indexInfo/explain:index"/>
-  <xsl:variable name="old_syntaxes" select="/*/explain:recordInfo"/>
+  <xsl:variable name="use_attr_names" select="document('use-attr-names.xml')"/>
 
 
   <xsl:template match="node() | @*">
 
 
   <xsl:template match="explain:recordInfo">
+    <recordInfo>
+      <xsl:for-each select="/*/irspy:status/irspy:record_fetch[@ok = 1]">
+        <recordSyntax name="{@syntax}">
+          <elementSet name="F"/> <!-- FIXME: This should be probed too -->
+        </recordSyntax>
+      </xsl:for-each>
+    </recordInfo>
   </xsl:template>
 
 
 
   <xsl:template name="insert-index-title">
     <xsl:param name="update"/>
-    <xsl:value-of select="$update/@ap"/>
+    <xsl:variable name="name"
+                select="$use_attr_names/*/map[@attr = $update/@ap and
+                                              @set = $update/@set]/@name"/>
+
+    <xsl:choose>
+      <xsl:when test="string-length($name) &gt; 0"><xsl:value-of
+                                            select="$name"/></xsl:when>
+      <xsl:otherwise><xsl:value-of select="$update/@ap"/></xsl:otherwise>
+    </xsl:choose>
   </xsl:template>
 
 
-
   <xsl:template match="explain:dateModified">
     <dateModified><xsl:value-of
                     select="/*/irspy:status/*[last()]"/></dateModified>