Adding elements irspy:libraryType and irspy:country to persistent version of
[irspy-moved-to-github.git] / xsl / irspy2zeerex.xsl
index 3b31e3b..6ac8cd2 100644 (file)
@@ -1,6 +1,6 @@
 <?xml version="1.0"?>
 <!--
-    $Id: irspy2zeerex.xsl,v 1.15 2006-12-12 11:09:52 sondberg Exp $
+    $Id: irspy2zeerex.xsl,v 1.19 2007-03-30 17:17:44 sondberg Exp $
 
     This stylesheet is used by IRSpy to map the internal mixed Zeerex/IRSpy
     record format into the Zeerex record which we store.
@@ -85,7 +85,7 @@
       <xsl:choose>
 
         <!-- Did we actually probe record syntaxes? -->
-        <xsl:when test="/*/irspy:status/irspy:record">
+        <xsl:when test="/*/irspy:status/irspy:record_fetch">
           <xsl:for-each select="/*/irspy:status/irspy:record_fetch[@ok = 1]">
             <recordSyntax name="{@syntax}">
               <elementSet name="F"/> <!-- FIXME: This should be probed too -->
   -->
   <xsl:template name="insert-irspySection">
     <irspy:status>
+      <xsl:copy-of select="*/irspy:libraryType"/>
+      <xsl:copy-of select="*/irspy:country"/>
       <xsl:copy-of select="*/irspy:probe"/>
 
       <xsl:call-template name="insert-latest-nodes">
         <xsl:with-param name="nodes" select="*/irspy:boolean"/>
+        <xsl:with-param name="what" select="'boolean'"/>
       </xsl:call-template>
       
       <xsl:call-template name="insert-latest-nodes">
         <xsl:with-param name="nodes" select="*/irspy:named_resultset"/>
+        <xsl:with-param name="what" select="'named_resultset'"/>
       </xsl:call-template>
       
       <xsl:call-template name="insert-latest-nodes">
         <xsl:with-param name="nodes" select="*/irspy:explain"/>
+        <xsl:with-param name="what" select="'explain'"/>
+      </xsl:call-template>
+
+      <xsl:call-template name="insert-latest-nodes">
+        <xsl:with-param name="nodes" select="*/irspy:serverImplementationId"/>
+        <xsl:with-param name="what" select="'serverImplementationId'"/>
+      </xsl:call-template>
+
+      <xsl:call-template name="insert-latest-nodes">
+        <xsl:with-param name="nodes" select="*/irspy:serverImplementationName"/>
+        <xsl:with-param name="what" select="'serverImplementationName'"/>
+      </xsl:call-template>
+
+      <xsl:call-template name="insert-latest-nodes">
+        <xsl:with-param name="nodes"
+                    select="*/irspy:serverImplementationVersion"/>
+        <xsl:with-param name="what" select="'serverImplementationVersion'"/>
       </xsl:call-template>
     </irspy:status>
   </xsl:template>
   -->
   <xsl:template name="insert-latest-nodes">
     <xsl:param name="nodes"/>
+    <xsl:param name="what" select="'unspecified'"/>
     <xsl:param name="i" select="count(*/irspy:probe[@ok='1'])"/>
     <xsl:variable name="date"
         select="*/irspy:probe[@ok='1' and position() = $i]"/>
       </xsl:when>
       <xsl:when test="$i > 0">
         <xsl:call-template name="insert-latest-nodes">
+          <xsl:with-param name="what" select="$what"/>
           <xsl:with-param name="nodes" select="$nodes"/>
           <xsl:with-param name="i" select="$i - 1"/>
         </xsl:call-template>
       </xsl:when>
       <xsl:otherwise>
-        <irspy:missing/>
+        <irspy:missing what="{$what}" when="{$ping_date}"/>
       </xsl:otherwise>
     </xsl:choose>
   </xsl:template>