First settings that actually get to the gw, and get records and facets back.
authorHeikki Levanto <heikki@indexdata.dk>
Thu, 16 Jul 2015 11:40:52 +0000 (13:40 +0200)
committerHeikki Levanto <heikki@indexdata.dk>
Thu, 16 Jul 2015 11:40:52 +0000 (13:40 +0200)
doc/common
test/paz_1009.cfg [new file with mode: 0644]
test/paz_1009.sh [new file with mode: 0755]
test/paz_1009.urls [new file with mode: 0644]
test/paz_1009.xsl [new file with mode: 0644]
test/paz_1009_settings.xml [new file with mode: 0644]

index 790930a..f6a5ec8 160000 (submodule)
@@ -1 +1 @@
-Subproject commit 790930ae30e7d12e02a512a109fc40c82675df20
+Subproject commit f6a5ec8c243e2a6829a2917cb30c849612d6fd01
diff --git a/test/paz_1009.cfg b/test/paz_1009.cfg
new file mode 100644 (file)
index 0000000..5eea2e5
--- /dev/null
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<pazpar2 xmlns="http://www.indexdata.com/pazpar2/1.0">
+  <!-- Used by paz_1009.sh -->
+  <server>
+    <listen port="9763"/>
+    
+    <!-- same as hardcoded rule -->
+    <icu_chain id="facet" locale="en">
+      <transliterate>[[:WhiteSpace:][,.!;]]* } [$] > ;</transliterate>
+    </icu_chain>
+
+    
+    <service>
+      <metadata name="url" merge="unique"/>
+      <metadata name="title" brief="yes" sortkey="skiparticle" merge="longest" rank="6" mergekey="required" />
+      <metadata name="title-remainder" brief="yes" merge="longest" rank="5"/>
+      <metadata name="isbn"/>
+      <metadata name="date" brief="yes" sortkey="numeric" type="year" merge="range"
+                termlist="yes"/>
+      <metadata name="author" brief="yes" sortkey="skiparticle" termlist="yes" merge="longest" rank="2" mergekey="optional" />
+      <metadata name="subject" merge="unique" termlist="yes" rank="3"/>
+      <metadata name="id"/>
+      <metadata name="lccn" merge="unique"/>
+      <metadata name="description" brief="yes" merge="longest" rank="3"/>
+
+      <metadata name="medium" brief="yes" merge="longest" mergekey="optional" termlist="yes"/>      
+
+      <metadata name="test-usersetting" brief="yes" setting="postproc"/>
+      <metadata name="test" setting="parameter"/>
+      <metadata name="test-usersetting-2" brief="yes"/>
+    </service>
+
+  </server>
+
+</pazpar2>
+<!-- Keep this comment at the end of the file
+     Local variables:
+     mode: nxml
+     End:
+-->
diff --git a/test/paz_1009.sh b/test/paz_1009.sh
new file mode 100755 (executable)
index 0000000..dd96029
--- /dev/null
@@ -0,0 +1,46 @@
+#!/bin/sh
+# Test script for PAZ-1009 / AUT-258
+
+# Start the aggw
+AGDIR=../../ag-integration/gateway
+AGGW=$AGDIR/aggw.pl
+
+if [ ! -x $AGGW ]
+then
+  echo "AG Gateway $AGGW not found. Skipping test"
+  exit 0
+fi
+
+rm -f aggw.log aggw.pid apdu.log.* # -f to shut up if not there
+LOG="-l aggw.log  -a apdu.log"  # uncomment to get the gw log in a file
+AGPORT="@:9998"
+
+$AGGW $LOG -p aggw.pid  $AGPORT &
+
+sleep 1 # let the listener start up
+if [ ! -f aggw.pid ]
+then
+  echo "Could not start the AG gateway "
+  exit 1
+fi
+echo "Started the AG Gateway on $AGPORT. PID=" `cat aggw.pid`
+
+TEST=`basename $0 .sh`
+# srcdir might be set by make
+srcdir=${srcdir:-"."}
+
+#exec ${srcdir}/run_pazpar2.sh --icu $TEST
+${srcdir}/run_pazpar2.sh --icu $TEST
+
+
+# Kill the aggw
+echo "Killing the aggw, pid " `cat aggw.pid`
+kill `cat aggw.pid`
+rm -f aggw.pid
+
+
+# Local Variables:
+# mode:shell-script
+# sh-indentation: 2
+# sh-basic-offset: 4
+# End:
diff --git a/test/paz_1009.urls b/test/paz_1009.urls
new file mode 100644 (file)
index 0000000..18e58dc
--- /dev/null
@@ -0,0 +1,6 @@
+http://localhost:9763/search.pz2?command=init&clear=1
+paz_1009_settings.xml http://localhost:9763/search.pz2?session=1&command=settings
+http://localhost:9763/search.pz2?session=1&command=search&query=water
+w http://localhost:9763/search.pz2?session=1&command=show&block=1
+http://localhost:9763/search.pz2?session=1&command=bytarget
+http://localhost:9763/search.pz2?session=1&command=termlist&name=xtargets%2Csubject%2Cauthor%2Cdate%2Cmedium
diff --git a/test/paz_1009.xsl b/test/paz_1009.xsl
new file mode 100644 (file)
index 0000000..6ffdf42
--- /dev/null
@@ -0,0 +1,174 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- expects AGService XML records -->
+<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:pz="http://www.indexdata.com/pazpar2/1.0" version="1.0">
+  
+  <xsl:template name="first-6-chars">
+    <xsl:param name="subfield-value"/>
+    <xsl:value-of select="substring($subfield-value,1,6)"/>
+  </xsl:template>
+  <xsl:template name="first-4-digits">
+    <xsl:param name="subfield-value"/>
+    <xsl:value-of select="substring(translate($subfield-value, translate($subfield-value,'0123456789', ''), ''),1,4)"/>
+  </xsl:template>
+
+  <xsl:output encoding="UTF-8" indent="yes" method="xml" version="1.0"/>
+  
+   <xsl:template name="medium">
+    <!-- Default medium template that may be overridden from the init doc. -->
+    <!-- display-medium from Illuminar -->
+    <xsl:choose>
+      <xsl:when test="MarcLeader">
+        <!-- strings in xslt are 1-indexed -->
+        <xsl:variable name="ldr06" select="substring(MarcLeader, 7, 1)" />
+        <xsl:variable name="ldr07" select="substring(MarcLeader, 8, 1)" />
+        <xsl:variable name="ldr08" select="substring(MarcLeader, 9, 1)" />
+        <xsl:choose>
+          <xsl:when test="$ldr06 = 'c'">
+            <xsl:text>Notated music</xsl:text>
+          </xsl:when>
+          <xsl:when test="$ldr06 = 'd'">
+            <xsl:text>Manuscript notated music</xsl:text>
+          </xsl:when>
+          <xsl:when test="$ldr06 = 'e'">
+            <xsl:text>Cartographic material</xsl:text>
+          </xsl:when>
+          <xsl:when test="$ldr06 = 'f'">
+            <xsl:text>Manuscript cartographic material</xsl:text>
+          </xsl:when>
+          <xsl:when test="$ldr06 = 'g'">
+            <xsl:text>Projected medium</xsl:text>
+          </xsl:when>
+          <xsl:when test="$ldr06 = 'i'">
+            <xsl:text>Nonmusical sound recording</xsl:text>
+          </xsl:when>
+          <xsl:when test="$ldr06 = 'j'">
+            <xsl:text>Musical sound recording</xsl:text>
+          </xsl:when>
+          <xsl:when test="$ldr06 = 'k'">
+            <xsl:text>Two-dimensional nonprojectable graphic</xsl:text>
+          </xsl:when>
+          <xsl:when test="$ldr06 = 'm'">
+            <xsl:text>Computer file</xsl:text>
+          </xsl:when>
+          <xsl:when test="$ldr06 = 'o'">
+            <xsl:text>Kit</xsl:text>
+          </xsl:when>
+          <xsl:when test="$ldr06 = 'p'">
+            <xsl:text>Mixed materials</xsl:text>
+          </xsl:when>
+          <xsl:when test="$ldr06 = 'r'">
+            <xsl:text>Visual materials</xsl:text>
+          </xsl:when>
+          <xsl:when test="$ldr07 = 'b' or $ldr07 = 's'">
+            <xsl:text>Serial</xsl:text>
+          </xsl:when>
+          <!-- by default a book -->
+          <xsl:otherwise>
+            <xsl:text>Book</xsl:text>
+          </xsl:otherwise>
+        </xsl:choose>
+      </xsl:when>
+      <xsl:otherwise>
+        <xsl:text>xml records</xsl:text>
+      </xsl:otherwise>
+    </xsl:choose>
+  </xsl:template>
+
+  <xsl:template match="Results">
+    <collection>
+      <xsl:apply-templates/>
+    </collection>
+  </xsl:template>
+  
+  <xsl:template match="Result">    
+    <xsl:variable name="medium">
+      <xsl:call-template name="medium"/>
+    </xsl:variable>
+
+    <pz:record>
+      <pz:metadata type="medium">
+        <xsl:call-template name="medium"/>
+      </pz:metadata>
+      <xsl:for-each select="Title">
+        <pz:metadata type="title">
+          <xsl:choose>
+            <xsl:when test="position()=1">
+              <xsl:value-of select="."/>
+            </xsl:when>
+            <xsl:otherwise>
+              <xsl:value-of select="concat(' ',.)"/>
+            </xsl:otherwise>
+          </xsl:choose>
+        </pz:metadata>
+      </xsl:for-each>
+      <xsl:for-each select="Author">
+        <pz:metadata type="author">
+          <xsl:choose>
+            <xsl:when test="position()=1">
+              <xsl:value-of select="."/>
+            </xsl:when>
+            <xsl:otherwise>
+              <xsl:value-of select="concat(' ',.)"/>
+            </xsl:otherwise>
+          </xsl:choose>
+        </pz:metadata>
+      </xsl:for-each>
+      <xsl:for-each select="Subject">
+        <pz:metadata type="subject">
+          <xsl:choose>
+            <xsl:when test="position()=1">
+              <xsl:value-of select="."/>
+            </xsl:when>
+            <xsl:otherwise>
+              <xsl:value-of select="concat(' ',.)"/>
+            </xsl:otherwise>
+          </xsl:choose>
+        </pz:metadata>
+      </xsl:for-each>
+      <xsl:for-each select="PubYear">
+        <pz:metadata type="date">
+          <xsl:choose>
+            <xsl:when test="position()=1">
+              <xsl:value-of select="."/>
+            </xsl:when>
+            <xsl:otherwise>
+              <xsl:value-of select="concat(' ',.)"/>
+            </xsl:otherwise>
+          </xsl:choose>
+        </pz:metadata>
+      </xsl:for-each>
+      <xsl:choose>
+        <xsl:when test="$medium = 'books'">
+          <xsl:for-each select="Title">
+            <pz:metadata type="brief-2">
+              <xsl:choose>
+                <xsl:when test="position()=1">
+                  <xsl:value-of select="."/>
+                </xsl:when>
+                <xsl:otherwise>
+                  <xsl:value-of select="concat(' ',.)"/>
+                </xsl:otherwise>
+              </xsl:choose>
+            </pz:metadata>
+          </xsl:for-each>
+          <xsl:for-each select="Author">
+            <pz:metadata type="brief-3">
+              <xsl:choose>
+                <xsl:when test="position()=1">
+                  <xsl:value-of select="."/>
+                </xsl:when>
+                <xsl:otherwise>
+                  <xsl:value-of select="concat(' ',.)"/>
+                </xsl:otherwise>
+              </xsl:choose>
+            </pz:metadata>
+          </xsl:for-each>
+        </xsl:when>
+      </xsl:choose>
+    </pz:record>
+
+  </xsl:template>
+  
+  <xsl:template match="text()"/>
+
+</xsl:stylesheet>
\ No newline at end of file
diff --git a/test/paz_1009_settings.xml b/test/paz_1009_settings.xml
new file mode 100644 (file)
index 0000000..6748070
--- /dev/null
@@ -0,0 +1,24 @@
+<?xml version="1.0"?>
+<settings target="*">
+  <set name="pz:url" target="aggw" value="localhost:9998/1986913,sessionId=4538815&amp;serverName=menelaus&amp;hostName=http%3A%2F%2Fdev-wrls-verso.auto-graphics.com&amp;customerId=wrls&amp;defaultPageSize=3"/>
+  <set name="pz:cclmap:term" target="aggw" value="1=ALL_HEADING"/>
+  
+  <set name="pz:xslt" target="aggw" value="paz_1009.xsl"/>
+
+  <set name="full_text_target" target="aggw" value="NO"/>
+  <set name="use_url_proxy" target="aggw" value="0"/>
+  <set name="place_holds" target="aggw" value="no"/>
+  <set name="use_thumbnails" target="aggw" value="1"/>
+
+  <set name="medium" target="aggw" value="music-score (electronic)"/>
+  <set name="category" target="aggw" value="id_music,id_openaccess"/>
+  <set name="content_levels" target="aggw" value="general_interest"/>
+  <set name="pz:name" target="aggw" value="Sheet Music Consortium"/>
+  <!-- set name="pz:extra_args" target="aggw" value="defType=lucene"/-->
+
+  <set name="pz:cclmap:date" target="aggw" value="u=30 r=r"/>
+  <set name="pz:cclmap:issn" target="aggw" value="1=issn"/>
+  <set name="pz:cclmap:ti" target="aggw" value="1=title"/>
+  <set name="pz:cclmap:au" target="aggw" value="1=author"/>
+  <set name="pz:cclmap:isbn" target="aggw" value="1=isbn"/>
+</settings>