index zeerex2index.xsl as words
[irspy-moved-to-github.git] / zebra / zeerex2index.xsl
index 89f1473..b153968 100644 (file)
@@ -1,5 +1,4 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- $Id: zeerex2index.xsl,v 1.13 2007-03-29 17:13:45 mike Exp $ -->
 <!-- See the ZeeRex profile at http://srw.cheshire3.org/profiles/ZeeRex/ -->
 <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
                 xmlns:z="http://indexdata.dk/zebra/xslt/1"
@@ -14,6 +13,7 @@
  <!-- Match on ZeeRex XML record -->
  <xsl:template match="//e:explain">
   <xsl:variable name="id"><xsl:value-of select="concat(
+       e:serverInfo/@protocol, ':',
        e:serverInfo/e:host, ':',
        e:serverInfo/e:port, '/',
        e:serverInfo/e:database)"/></xsl:variable>
@@ -70,6 +70,9 @@
    <z:index name="net:path" type="s">
     <xsl:value-of select="e:serverInfo/e:database"/>
    </z:index>
+   <z:index name="zeerex:reliability" type="n">
+    <xsl:value-of select="e:serverInfo/e:reliability"/>
+   </z:index>
    <z:index name="dc:date" type="d">
     <xsl:value-of select="e:serverInfo/e:database/@lastUpdate"/>
    </z:index>
     <xsl:value-of select="e:metaInfo/e:dateModified"/>
    </z:index>
 
-   <!-- ### indexInfo -->
+   <!-- indexInfo -->
+   <xsl:for-each select="e:indexInfo/e:index/e:map/e:attr">
+    <z:index name="zeerex:index" type="w">
+     <xsl:value-of select="."/>
+    </z:index>
+   </xsl:for-each>
 
    <!-- recordInfo -->
-   <z:index name="zeerex:recordSyntax" type="0">
+   <z:index name="zeerex:recordSyntax" type="w">
     <xsl:value-of select="e:recordInfo/e:recordSyntax/@name"/>
     <!-- ### But @identifier is an OID for Z39.50 -->
    </z:index>