From 2ee5bb696499e86b8e15501d19fdcc998e0d307e Mon Sep 17 00:00:00 2001 From: Mike Taylor Date: Thu, 13 Apr 2006 14:53:17 +0000 Subject: [PATCH] Initial revision --- Changes | 10 + MANIFEST | 8 + MANIFEST.SKIP | 1 + META.yml | 12 + Makefile.PL | 16 + README | 34 ++ archive/2006 - 04 - 05 Target Monitor Software.doc | Bin 0 -> 22528 bytes archive/Net-Z3950-IRSpy-0.01.tar.gz | Bin 0 -> 2353 bytes archive/press-release | 187 ++++++++ t/Net-Z3950-IRSpy.t | 11 + zebra/README | 59 +++ zebra/filterconf.xml | 7 + zebra/pqf.properties | 150 ++++++ zebra/yazserver.xml | 21 + zebra/zebra.cfg | 23 + zebra/zeerex-2.0.xsd | 484 ++++++++++++++++++++ zebra/zeerex.xml | 15 + zebra/zeerex2index.xsl | 50 ++ zebra/zeerex2zeerex.xsl | 8 + 19 files changed, 1096 insertions(+) create mode 100644 Changes create mode 100644 MANIFEST create mode 100644 MANIFEST.SKIP create mode 100644 META.yml create mode 100644 Makefile.PL create mode 100644 README create mode 100644 archive/2006 - 04 - 05 Target Monitor Software.doc create mode 100644 archive/Net-Z3950-IRSpy-0.01.tar.gz create mode 100644 archive/press-release create mode 100644 t/Net-Z3950-IRSpy.t create mode 100644 zebra/README create mode 100644 zebra/filterconf.xml create mode 100644 zebra/pqf.properties create mode 100644 zebra/yazserver.xml create mode 100644 zebra/zebra.cfg create mode 100644 zebra/zeerex-2.0.xsd create mode 100644 zebra/zeerex.xml create mode 100644 zebra/zeerex2index.xsl create mode 100644 zebra/zeerex2zeerex.xsl diff --git a/Changes b/Changes new file mode 100644 index 0000000..cfd79e2 --- /dev/null +++ b/Changes @@ -0,0 +1,10 @@ +$Id: Changes,v 1.1 2006-04-13 14:53:17 mike Exp $ + +Revision history for Perl extension Net::Z3950::IRSpy. + +0.02 [IN PROGRESS] + +0.01 Wed Apr 5 15:53:47 2006 + - original version; created by h2xs 1.23 with options + -X --name=Net::Z3950::IRSpy --compat-version=5.8.0 --omit-constant --skip-exporter --skip-ppport + diff --git a/MANIFEST b/MANIFEST new file mode 100644 index 0000000..bffba75 --- /dev/null +++ b/MANIFEST @@ -0,0 +1,8 @@ +Changes +Makefile.PL +MANIFEST +README +t/Net-Z3950-IRSpy.t +lib/Net/Z3950/IRSpy.pm +META.yml Module meta-data (added by MakeMaker) +MANIFEST.SKIP diff --git a/MANIFEST.SKIP b/MANIFEST.SKIP new file mode 100644 index 0000000..f1d43c6 --- /dev/null +++ b/MANIFEST.SKIP @@ -0,0 +1 @@ +archive diff --git a/META.yml b/META.yml new file mode 100644 index 0000000..a0938e6 --- /dev/null +++ b/META.yml @@ -0,0 +1,12 @@ +# $Id: META.yml,v 1.1 2006-04-13 14:53:17 mike Exp $ + +# http://module-build.sourceforge.net/META-spec.html +#XXXXXXX This is a prototype!!! It will change in the future!!! XXXXX# +name: Net-Z3950-IRSpy +version: 0.01 +version_from: lib/Net/Z3950/IRSpy.pm +installdirs: site +requires: + +distribution_type: module +generated_by: ExtUtils::MakeMaker version 6.17 diff --git a/Makefile.PL b/Makefile.PL new file mode 100644 index 0000000..dd79c1e --- /dev/null +++ b/Makefile.PL @@ -0,0 +1,16 @@ +# $Id: Makefile.PL,v 1.1 2006-04-13 14:53:17 mike Exp $ + +use 5.008; +use ExtUtils::MakeMaker; +# See lib/ExtUtils/MakeMaker.pm for details of how to influence +# the contents of the Makefile that is written. +WriteMakefile( + NAME => 'Net::Z3950::IRSpy', + VERSION_FROM => 'lib/Net/Z3950/IRSpy.pm', # finds $VERSION + PREREQ_PM => { + Net::Z3950::ZOOM => 1.04, + }, + ($] >= 5.005 ? ## Add these new keywords supported since 5.005 + (ABSTRACT_FROM => 'lib/Net/Z3950/IRSpy.pm', # retrieve abstract from module + AUTHOR => 'Mike Taylor ') : ()), +); diff --git a/README b/README new file mode 100644 index 0000000..6bb120b --- /dev/null +++ b/README @@ -0,0 +1,34 @@ +$Id: README,v 1.1 2006-04-13 14:53:17 mike Exp $ + +Net-Z3950-IRSpy +=============== + +This module exists to implement the IRspy program, which discovers, +analyses and monitors IR servers implementing the Z39.50 and SRU/W +protocols. It is a successor to the ZSpy program. + +INSTALLATION + +To install this module type the following: + + perl Makefile.PL + make + make test + make install + +DEPENDENCIES + +This module requires these other modules and libraries, in addition to +those specified in Makefile.PL: + + Zebra, release 1.4.0 or later: see http://indexdata.com/zebra/ + +COPYRIGHT AND LICENCE + +Copyright (C) 2006 by Index Data ApS. + +This library is free software; you can redistribute it and/or modify +it under the same terms as Perl itself, either Perl version 5.8.7 or, +at your option, any later version of Perl 5 you may have available. + + diff --git a/archive/2006 - 04 - 05 Target Monitor Software.doc b/archive/2006 - 04 - 05 Target Monitor Software.doc new file mode 100644 index 0000000000000000000000000000000000000000..5329eb09958444740d3e4c974131733c886d6b64 GIT binary patch literal 22528 zcmeHv33yG{+W$HcWR^q>Rpc~MR88R`hN?&m2{A>4wuTUrAcMq^gq9L6HEU~VDOy@Z zHPmo>TUA=xY8CahMb&(Z8X8LdRVDx5Z@*bN`y7!*dhh+7?|JMzYwx}GUh7@&{Jv}L zb#h?8&&ib=tDRB~M{89^<>kAoa;E1N+&`x4-by*)p3m~~^Yis%+&(z|4{_j50j`vx z7lc?Ag)%RX;)3Fe;)ddm;(_9c!nPG~g$gJi6yJhpez;absf#)5nZW|jkD@V{~eh)BrPR9W!PwIOiEf@gRqnlW0Hm@ zk2YdLWE7u;r3^750q+~4V!Uq{tgg4*G)e#!cZUASpv5&R=G_nksW26%PJ4}_3fdj1 zF6G=mEVHwW-NPa(6_j)CFg)Mn?3T-zXQ3g0C+{iu-1fMA9!06i#(9cy&Nj}@A+(-y zJgFy*^Ya$4QB5)KcUZi^mwen4rgtuZ;+Pbm%ICg~@ap8eJ7A%aH>LSG#|^5etV&JA zbEC7-RH=4PRLgx9&m3E>XLv0*PQx72K>LBqeyT^`hgBD}S9uvrFE8$XKCn}z&jv=v zK>s~Pn6Jzsw%0o zt8+R^57d)8=c@s@#zy$5ft@YRqft~3W%0IP$0a86f4R08f2K{4N?85A2}j8k)!=YK8#s%nm!tBS#2u<8cRBmvVb z)fi9xfJ+(RQU>Jvf?Q{i>x;43&tmy2ILO#O7LHv}bu5V6$wu@Z3ND2Lb7C9|8b*VU zX`qIOjQvQ#*u=SkgG{a9zVwVY`lkYt)fj;p0gvV?+B?7!WQ^^p!i`LUBP3%S<_=vA ziH$%@4`_f>Y62XJYFp3JQT0K;5L}rV_Cc$36k->LUVjG1BQ;@?nnXB%Gx*mNS7w{c zRN_#Ww-iTtXQNlFr89a}H>A~|l=6=-AdRv>dy&Bk5AR=-sLcwzqAomd>5BWBe*u<2 z>t;ZkZ|MeT{(lLY!0TbaTWO&^TK^(Ef!M}?xY5!E5G$8L^T@581)3M7`oU%g!cX*r z&UR3}RBxR7;_Rq-Vl4-ae&t~U^j;$kZKYLIg_SzPN}UZW?SZSd)P|}({LyJkL$q=Q z+@UJN(D1>~wm2g1fZO=8yV-h_b33=!b`M zYKN!gVWqJu6)h40FBwlf0ihxw5t>J!1=<}7_t@OU!mjj`{aq}z4G6wY%!|qzRugC7 z#o8lAFBz$$(eAWiZRH(&DMt#xNV&#HaGC}W#A}8|R98JB${ERgXp8FQM2mJ)Jt0;40D5!bCtC(!4p||)h0_2OFO>c$ zK0ts-h}<5wDAm@0G}x&vdQ>RT^KO8a1`J}MDOSurV=(?;W5vS_bJB{ds#^S3r9-N* z2y8rk0sKYRR0Oz~*7%J`eSZ z0OE&&A##HafaP*YMH#e#D2zfnScqRcRr9Jhu6WIu>Vh^dH>nOt6LS0DiMMhwk|m=v zT2)YGa?hg!lc~D6T9j)p0qDarDL2wWme2jax zfe{rvw-|WS>G~GXVErfB{wUjX0 zxfjA{=Uz$}Ydi{Jtnnx%3~#SO7~WpR!Z7(QItMun9b?vxM36dWtTGx}tXqikK4=XN z{HHibaggWc!zLnm%D^KB-;_5(qivESZRnwRIB5sZ2R$Sh8Y{=0D$jEqM|wD%dn0Z$ z;-@Ps=21h{I9$0R$r#M+s2SimBIp3Zs74_(OG2zpLF87dY3-7Y9)f6}XheIA#Cvf3MGp8j z{)+&L=SurCg?#;b(*EbjnNPM>p@&&i%E|Vwbl5@YHkHzf3uJ<6NT)x9Tikwfv6@L0LC`Ty*~BMFZcg zl6>M#|F+j$p1s-R_4wp1*Y`X*VD-ej+fV%dN$W=6%)Gh$jobdm-e@s!;clMn>8hCMYwas-J zPe0eC>8;&&4kubi54xH#_|mOA#}_7V-ScGA_r}jy-m?1#lgq|8Jr{I)WX_GfU)DJL z+4%CeX79UQ zU7phZ)10n>?mp9My!Ou2paUD5-|)UTEVAFbvkt$o?COH!FIXlocIxET+9#q*$idyt zJ0d#u+EuMZM8!W2b$;CMk0Bjud;Z?>rT51lZMEmq-qUmDUCx}^bHV$sPw$rb>ioCj zy07h;^vdnGZcQ%Rz4NT?lLuU#_1><|^*?E_$HVVmr~mosw?U8Yo?G{gnvbvP(dU^@ zJNZSu?Eb>!>+M25I1Y{_T@IU(fpbbnu!}7o%>sTK3BH#N36m7JlSg?faz0^LxD={`TH0*LpsF zF!04^Uz)kf{kMge%H{vP%PVaUG;US#sqroM*A0Ekv+Bl|8gBUUNKmzvJL|6QGtb9! zaJ3y%7lnVcE9>`7=c@kdmNV?Dj&D?Ouk7<-wK03oEjo29z~7^7(>Cc-ZvC=qYO~od zMmD>3X+hmr>qQ;;+bbK}58QI>_jO^mbiaJ}!hN7pVLb#(1BX@gD- znE2hXK~YnhwHo!0!`-U4_~C_JX(8>ub?M$<&i07+J2YQ*b(<^J9dH&a57W{p<>%;Xk-F!w>>bQAUpW~l-9NBWC&2uMmx;&Bl(S~L>mc4jl zv-_&C-?ljK6!U!Or5ZgiU)9@+Qq)2|NSRwXv++Qzn<%5ID67VKB~x3x1n z?+f00yTQ2e^S_A+&0E#FmVcG4=QrexU(hMLMw{l|Ygal21iTQHSvK={O#kX%UYs&v z+MV>vXa2sWqlDgEhW<>+_+9JaSs~sM{^x>UR9?xZBBBpPSR= zZ1r!BPdmIMw$gV)B3lpr*vZ{9aBJt6_YHq`@y_PszKzeVJ@LmHquf$=tynQ=?z?^y zehHhidFt7Y>u1&+*!<}^>-MZ_*l^pMqei{IXHk!==6lcW7D@6LCBYQpRv!*;a)bl{+`TTIKVc4x~kBd*`b@AqVA`ci}MXI8e2o%fC~Wy8X&v4@85Q&G6TCIba4UJ7$#W1r1DT)EF?DGJto z)EX4#Vw+L0E~LIfDTi_lg&+IQqj2HqI*PH11>nTUqu_esj_kSNvt}smP}GFzhlqo5 zzsYCwo$7lmyq}am-M3m_xmW*~mlaZJkA?enh)-DT*u*$%SV~$_EGK8iJ|5!HJ}uFB zz;=YmqontoNrorK4b8BI#g2}(hNN=Z^WgZeap2PGT`JP*3bk_a-65mO%mPoiZtSH( zV^c=PCI`z?JG@+-E35j(YPCH6q+nUVt`REKSsvUq#=T-_-e^^%~TWAW3bZ1Z}_rC zXT=xwu~@Nci1++n#;>1Ne0$`6g3@p&$1*bOZhTu1r3J0Jjk1t^;;3bO1NHW34k1cijw% zLQ&^kFSHUGqd-*;{B<|JPe-9|H^7WSo$GoX40utvhTwfDc*UI%Y|$HqqlFve5R(w( z2wbD&_sC`j7n^`H4yTJ-NST9O@j`TA(LZ zyiLR^F24gy53UQ#{v3^KBHmaH+(;2+nr`rgdtcakIB*gj7(ql&T)MC+TR6lhzBvCyg0g< zl1S9pnv|s(Jg3~apF_qK-r38Wu&f4r;f5YH-O%45=syf)2%u`2kqXgq-PUHcaTqt& z&{^_>d?r1_F%G?+f}d&$zO{sZqz4Pf+oEit7w~tqg(!oju?8-rJPdX2LZklM_KDn! z=Qa+Lb6RJ}`804xTQl`O34fG=*5kXWATMN(jLGut(8TYEByLoH8OuS{a@>1T;{x+Q(>|X_@x=PF{$`3r*Y;CwoM+l(p2F z!JjsQH|qs&D%WWAG~1GR7>-E|=Nn$NwhJc-op;2Snj};b3wk|jYbo`+MXV<8_^5GqGs4*O4!7w zIF84okJt*SAQoD-Hmf3@{4Phi*(6TsQb)yuP>QKWJIxc!9Ze1aT-Aj)H2nhlH$81q@@uKjpAFeL)piqb&oq-hvAR% zl08nOD%0>y=>;Cx6S+bxViD=n9?8sc@vQgex>@f;V+3E?g`-bzVBo=>w>JIKvLxlg zANJJw(qQ8maTA~U6!6skf;n6WGMXrO!bYatNAs6{lGz<;r#ximt;C(WrpROS^5l^X zvvfoL^pN5!Y+hSp(Y<&=t0E1Wo8josJ!X0zYeQhgtSbU~K@F2Ub_DKdz2rj}APCmf zC2GBlO-PzwX5D92OAX^*Rr3K;0^GMp{@5&E=nlY>RJ@T0P0sME|Gi{p_8uA! zdTc@_|LM1*3;j2t+WQKf7t&_O7?NbpBmPf3BW;lpSNmg~FAA5LV-7)2W-6jBAB7O9f=`jC0Z>$OQN6ngb+ZZ<#IHU5_QpP=qlkd z2NRmeRV(i4V;GU>Pl>%`M8sWW!;GF0o;u2>@r9!kzEGhpo_I@)Wgbbq$!mK*OFy0p zEbq>&9DOadgt3dZCDh5hQan}Bx<|T6|41Wpk^-%(R9T z`32`6T0*q+!FICl4cN9B7UQ#RUSiI4X^A>J83yUdtSTJ*zq=JVC{ak}@|vUKABnx# zxcJFYfJW;Y0hsh-no7ww%vR+%OSbtPTP90-NrTMcWroF?&c7V3mX@t&zq*YrN;7}p zdV$XL#DADQvi6)ZlGY(oA#+b!xYixXtLYWl271lZBQj?S;Rr%>X>wKDC)W z?wv_!&qq#heT0}1XL3FsIBLv9JLoOR7vY9|o~>gLf73%9(%j|@HNcc3h{bT#gJYF6 zE74L4$Jlp!4V@_qMkOh zX^1-M5*y=Kq*uHrrDa>db}umjc|i z-D=v|TgPC*Udx_x729Q$zT2nTuPBJt^)8^f^bt&a5^aX|KO8tSR*J4O9}~P~O^%+A z^k^Pa#-y9MQdS|QS_jCFIA}NhhU6}q$CLv{pd2JewfP?VS+u>C$~=erLCGoh)?B4j z+15Vqu=nwL1{I1i#S$eph%V{5HCOe-e~LZR*D-sMyrgK##Vgp4O`64j^H-9RubKTA zXL+;`b5ya1;E25$E7B@+Kzdis={TDBPt8+uTdalI5oy-B0A((7JMk18iLxzv6}OS; zc?c-cxhL_V^ldAP#KO^s+fyO_ORv(=TS;$PF7-}pqh8Gre`eDpvj^8&r0F%wQEOc3 zxJ>)IJEn;*35U*!B8`hdgzAmJ|7Avq@QDvc;`%ymO2u@_SRqr?$+Ln#3_APBNZQPPQyrqJ+(ZrNbih z>V@`mn)?!yL~@jX<7zGK{O2c^CfzG$90#Yay0UfcFy=D z)+#ZHS%mHT19?pu^H+1ka~#fG>Ev&FnJMb^Nw(>Pca$3M`5lVisrWUjBi35@tP6TD z`?2L-J@AB)nm7<2z2a4reCil2islTZu5G9&>P7p>8M94`?Q0Fv{F8iB_!?s9Nzock ztU1%B#BF0shA|S)NHOu^%G?;#dCwWGwnRsni9Jdzkz9&4ZsQdrTCx$(xx%RZ8*P$V z1$9Ys)4Q#am}t)G(Pg&yrCI zmr80G;sa!@o&2N^5?S>&cp~1!k+PCRbJ0-8FGRfz+Qdd^^YUFtwAH*$q4~;{3wi>| zO~+AMto8sl`BNX5&9F898;(uV0$tXN#4`*=JIyWgH!gDbUQt%GR{KR+Ww#jXj$C{E zuOHZ)bNpOOxVSJK6n@3jMQX)vUNa%B~Ma(A`{x4A3L} zs~7%LjJq(bUig18O#O?+)P7Vwq^je9>Ae_%f6E1#n&n@d%$Gv$uc6e1?CYVdN6~t4 z*(|;iR(>$|xp(CYbF*#cid~;A<~Q$|D;v#~cg>Y|%$0TK%0hFc;2yiM+-fWLj<8nw znXK`%*#Y?JtnJ6{i}MEIXSB+KE=3gIn)so79NroK(8SwoK(@D+t*`t>9XsSqZ7gVG z`I9!qz$yGuzET6SVbv(+f1aXz?#G5-fc?%Yuw(8G{MpQ-dsnzUweUDvc!!&>%$1MK zl^kr{3D4~Rhk%xA8AFP6*~PZ>wxMYhF92z3w!@J*-#zD$wnd%mf`0x6K}Ijx_>ZD} zZz?N}7-%2YH92cGf9I9Ae}1lp@v))!zQ*UicfD_3v|iSSIqT-U`+knfupmu)N%?R7 H|BwG4%Rf#g literal 0 HcmV?d00001 diff --git a/archive/Net-Z3950-IRSpy-0.01.tar.gz b/archive/Net-Z3950-IRSpy-0.01.tar.gz new file mode 100644 index 0000000000000000000000000000000000000000..ea927aacf030e6a780bc45574a8a34730dbccaa5 GIT binary patch literal 2353 zcmV-13C{K(iwFo4+cQK015RahEm|` zSXy#9B>+X}qb`t$O3=;OkNy>7>)qpRGnie>U1}{h8B2quy?` z@uhaNbx?0KJNPm zfAxQy>-#DFpR}8W{@W)fr2kH*-Z+4|(f=P#hwxS`qeQ^Z0lyL8g(wc+FM%f^776wQ z!U5&tqqGw*Rv_Id^&MCUNYXIm3tzz6Q!YEqIVd4j$%5WeiR2N}?eKM!+yIyGGfv{e zBWo)$cK9j6F0fr5t^|~5G6`qr&?te5cAkAM)tsK@Dw@ZM7pl@JW2i%zVPm&@MO(ff zeahYrei)A6SHM^1(M`F8OX_y@nz~)Rs8R)fJN?44h9Me>f=!ernmO2!BT!U+w63BM zA50!ZPKvTa!QzzV3QE}(*eoMR1b2{`hieOX2reBOt zHNIqp`q^aAySN&#C(;4)y#=)%>DHsHH4fO-VAiuXfe&AztIYfZp?J;VibI(@4m!bN z1GE(SpH$d^p_j=2g%+R5|Jx_c9sJis|8Lh@b>siflmA_%;_lH=mXB(S)bkxnVg|Db z7p#O8qL-6F)MPAd%T2%vh+k4K5wgpe z<4Kixi&POGT5vZ{#cU-)k#HrP`C`+B!JT@qJYQn2E#eX6)5EdVIAMQb|0lt|?D?;S zALjh`lKLmddNKXC>z#(t|BLHC3#>1p|Kqyx|38cVi^Tdz;lF14c)$L0+`uM-|DJ(j zZr@OW;ZeOKFPC(zdi~o|{grT&t+MZHo`hbwlG#%)RncX{9fU}~tjoRkv+K+2-bDpj zP$lI1;j{;5)Kj#4^RK~VI=miXYl#ewYBTH*#)?}#JljA@c`<|k%Rl);g*EnVK`CxQ0pEIg}`O%tStW@a& zoXAcC5h_jyQCC=WJtqT+7JQ7-5|zIc%`6<`>Z#X^owL=Nj+R=c_ZwMr387f|9>Qk@B8<|NOSL#(@LN4nOO>S| z$x1jV`?n94jt$$54+hY?oL)0_g}jJ)gyRzu!ZP*ub|O>Tr3xa=@USOZBHs7)eln#= zpoPZ-?x{v5H&TgUZ&115SCrf&o+IG>X!xO0rQtl>0CE+#oOX%3PeT5wB~9M-X-bBX zC3JY=NZjLaNoE8t35DY%o=;2hJ*w0R1!=r*X;lbvA)txnPVkV)S}gSG=65j21&tp1 zO9y?U_u_T2W|6k=}*3 z+%RlNLy9cgl<>d^DEmN?oV81NN(z5j1>tF1(QU;!tz&&_ouDSFjOSI^C?<(iwK~Z} z?$2~+*m`V7uPfl2T+FwqDynj8JHq0z$X>2`lrYd2$W8!$!Wi3&QG6X}bh@2Zw|$~R0ee+LxARsW1mU=g)CW&&<@6zwG~6-T&a3{J+_3o$UF4tKBjF{}TG&rbAtBJ^Kt%dKZvcN`8y! z5bpCrl_37GGwhe&auPO2@O|q!*==x=+S=hE3Ym-8TaVLK+nrHamJYb>dLd#w5evit zq3t1_Lr}2I&}EEROx*Dx#)>ASuo-`Nq>y$jwL4ts?p=njoK^NO>h<7t1~8*Q|9-PPd4%n>#XS-V1ucj?{XTqK2Ed%&S8Rp27?!Bn)*?h_&(4{kWJOGhPrLk_$5nAk?YKPW!+ zz4-Pa=gio}V2lUB!KgnROmobdPgL9*&}1mh%v=iTkr8ceN-tplNcIG9?jvv>r%JEh zj*>*!^c#T!NM|fIG zhQ)ruFQVu!GkrJQ!_@eI&d%Y9A8A$f+j)6${%&%8b^rF$Rqaw04lzlEj@*_dHIMOR zFd6)FKEB$W@z>wzZDFmfYW@qBZg)fxl72*HHT1ypH~)e2GcD8({6mjCJcOR(h-?r>6e`rL8S908jt`Lz}9z literal 0 HcmV?d00001 diff --git a/archive/press-release b/archive/press-release new file mode 100644 index 0000000..c2f6b45 --- /dev/null +++ b/archive/press-release @@ -0,0 +1,187 @@ +From mike Thu Apr 6 07:29:26 2006 +X-VM-v5-Data: ([nil nil nil nil t nil nil nil nil] + ["36361" "Wednesday" "5" "April" "2006" "16:03:54" "-0400" "David Dorman" "dorman@indexdata.com" "<7.0.1.0.2.20060405160339.03da1e80@indexdata.com>" "530" "[Staff] Support for NISO Metasearch Initiative" "^X-Spam-Status:" nil nil "4" nil nil nil nil nil nil nil nil nil] + nil) +Return-path: +X-Spam-Checker-Version: SpamAssassin 3.1.0 (2005-09-13) on bagel.indexdata.dk +X-Spam-Level: +Envelope-to: mike@indexdata.com +Delivery-date: Thu, 06 Apr 2006 08:09:00 +0200 +Received: from localhost.localdomain [127.0.0.1] + by localhost with POP3 (fetchmail-6.2.5) + for mike@localhost (single-drop); Thu, 06 Apr 2006 07:29:26 +0100 (BST) +Received: from kebab.indexdata.dk ([83.133.64.60]) + by bagel.indexdata.dk with esmtp (Exim 3.35 #1 (Debian)) + id 1FRNfv-0006yp-00; Thu, 06 Apr 2006 08:08:59 +0200 +Received: from localhost ([127.0.0.1] helo=kebab.indexdata.dk) + by kebab.indexdata.dk with esmtp (Exim 4.50) + id 1FRNcT-0002Nn-5P; Thu, 06 Apr 2006 08:05:25 +0200 +Received: from user.indexdata.dk ([213.150.43.10] helo=bagel.indexdata.dk) + by kebab.indexdata.dk with esmtp (Exim 4.50) id 1FREGw-0007if-6b + for staff@lists.indexdata.dk; Wed, 05 Apr 2006 22:06:40 +0200 +Received: from mailman by bagel.indexdata.dk with local (Exim 3.35 #1 (Debian)) + id 1FREKM-0007Hj-00 + for ; Wed, 05 Apr 2006 22:10:06 +0200 +Received: from post1.wesleyan.edu ([129.133.6.131]) + by bagel.indexdata.dk with esmtp (Exim 3.35 #1 (Debian)) + id 1FREKL-0007HA-00 + for ; Wed, 05 Apr 2006 22:10:05 +0200 +Received: from DAVID.indexdata.com (69.177.235.51.adsl.snet.net + [69.177.235.51] (may be forged)) (authenticated bits=0) + by post1.wesleyan.edu (8.12.11/8.12.11) with ESMTP id k35K3wSC030632; + Wed, 5 Apr 2006 16:04:56 -0400 +Message-Id: <7.0.1.0.2.20060405160339.03da1e80@indexdata.com> +Message-Id: <7.0.1.0.2.20060405150259.03dbfe48@indexdata.com> +X-Mailer: QUALCOMM Windows Eudora Version 7.0.1.0 +Mime-Version: 1.0 +X-Wesleyan-MailScanner-Information: Please contact the ISP for more information +X-Wesleyan-MailScanner: Found to be clean +X-MailScanner-From: dorman@indexdata.com +X-Mailman-Approved-At: Thu, 06 Apr 2006 08:05:23 +0200 +X-BeenThere: staff@lists.indexdata.dk +X-Mailman-Version: 2.1.5 +Precedence: list +List-Id: Index Data's PRIVATE staff discussion list +List-Unsubscribe: , + +List-Archive: +List-Post: +List-Help: +List-Subscribe: , + +Errors-To: staff-bounces@lists.indexdata.dk +X-SA-Exim-Connect-IP: 127.0.0.1 +X-SA-Exim-Mail-From: staff-bounces@lists.indexdata.dk +X-SA-Exim-Scanned: No (on kebab.indexdata.dk); SAEximRunCond expanded to false +X-Spam-Status: No, score=-2.4 required=5.0 tests=AWL,BAYES_00, + FORGED_RCVD_HELO autolearn=unavailable version=3.1.0 +From: David Dorman +Sender: staff-bounces@lists.indexdata.dk +To: "Index Data News List 3":; +Subject: [Staff] Support for NISO Metasearch Initiative +Date: Wed, 05 Apr 2006 16:03:54 -0400 +X-StripMime: Non-text section removed by stripmime +Content-Type: text/plain; charset="us-ascii"; format=flowed + +Hello to everyone on my Index Data news distribution list. I hope +this note finds you all engaged and feeling well. I am pleased to be +able to report, with the following announcement, that Index Data is +advancing the standardization of metasearching in a way that we are +confident will result in significant cost savings for the library community. + +David Dorman + +INDEX DATA DEVELOPMENT CONTRACT SUPPORTS NISO METASEARCH INITIATIVE + +April 5, 2006 - West Hartford, CT - Index Data, the premier developer +of Open Source information retrieval software for libraries and their +vendors, has just signed a contract with Helsinki University Library, +The National Library of Finland, to develop an information retrieval +target monitoring and analysis tool. This software, which is being +released under the name Keystone Target Manager, will be designed to +meet the specifications of the NISO draft standard Z39.92: +Information Retrieval Service Description, which is based on an +earlier community standard called ZeeRex. + +The Keystone Target Manager will perform the following services: + * Automatically monitor a collection of Z39.50/SRW/SRU targets, +maintaining statistics for availability over time. + * Provide configurable alerting services when targets become unavailable. + * Automatically gather information about the search capabilities +of targets that use standard search protocols, such as +Z39.50/SRW/SRU, for use in configuring IR clients of different types. + * Make the gathered information available in a software-readable +form, as a database of ZeeRex (ANSI/NISO Z39.92) records. (This will +enable sharing of this information via the Internet.) +Juha Hakala, Director of Information Technology at Helsinki +University Library and Chair of the NISO Committee which developed +the NISO Z39.92 draft standard, points out that "up to now +information about Z39.50 or SRU/SRW targets has usually been +discovered and documented manually, which is a laborious and time +consuming process. Also, there has been no efficient means of +exchanging this data among metasearch applications such as portals. +While NISO Z39.92, solves the latter problem, the Keystone Target +Manager will simplify the process of creating accurate target +descriptions and keeping them up-to-date." + +"Given the expertise Index Data has in implementing Z39.50 and +SRU/SRW applications," Hakala continued, "I am confident that the +service descriptions generated by the Target Manager will be useful. +It will be interesting to see how quickly the IR portal vendors and +maintenance agencies such as libraries will adopt this target +management tool, and start sharing on a global scale the target +descriptions harvested with it." + +Pat Stevens, the Interim Executive Director of NISO, was delighted to +learn about this agreement: "NISO thanks Helsinki University and +Index Data for their collaborative work on this project," she stated. +"It comes at just the right time as organizations are now looking for +an effective way to implement Z39.92." + +The Keystone Target Manager will be a major step forward in +standardizing and reducing the costs of maintaining target gateways +for metasearch services. Content providers that support standardized +search interfaces, and federated search services that take advantage +of this soon-to-be-released Open Source/Open Access target management +service, will together be able to reduce the cost of providing +federated search services to libraries. If these lower costs are +passed on to libraries in the form of reduced gateway maintenance +fees, libraries will be able to shift costs from access mechanisms to +licensing content. + +About Index Data + +Index Data has been developing standards-based information retrieval +technology since 1994. Library software vendors as varied as Ex +Libris, Fretwell-Downing, Geac, ISACSOFT, Koha and Polaris use Index +Data's technology in the software they provide to libraries. And +libraries around the world, including the Library of Congress and +many other national libraries, use the company's technology and +services to meet demanding and sophisticated information retrieval +challenges. The company's metasearch service, Keystone Retriever, is +among the most advanced in the industry and is distributed under an +Open Source license. + +-------------------------------------------------- +LIST MANAGEMENT INFO + +All recipients of this newsletter have been individually and manually +added to the Index Data News Distribution List. If you would like to +be deleted from this list, simply reply to this email with a remove +request and I will remove your name. If this email was forwarded to +you and you would like to receive these occasional mailings in the +future, let me know and I will add you to the list. +-------------------------------------------------- + +Yours for a More Open World, + +David + + +David Dorman +US Marketing Manager, Index Data +52 Whitman Ave. +West Hartford, Connecticut 06107 +dorman@indexdata.com +860-389-1568 or toll free 866-489-1568 +fax: 860-561-5613 + +INDEX DATA Means Business +for Open Source and Open Standards +- - - - - - - - - - - - - - - +www.indexdata.com + +_______________________________________________ +Staff mailing list +Staff@lists.indexdata.dk +http://lists.indexdata.dk/cgi-bin/mailman/listinfo/staff + + +--- StripMime Report -- processed MIME parts --- +multipart/mixed + text/plain (text body -- kept) + application/msword + text/plain (text body -- kept) +--- + + diff --git a/t/Net-Z3950-IRSpy.t b/t/Net-Z3950-IRSpy.t new file mode 100644 index 0000000..dba53ae --- /dev/null +++ b/t/Net-Z3950-IRSpy.t @@ -0,0 +1,11 @@ +# $Id: Net-Z3950-IRSpy.t,v 1.1 2006-04-13 14:53:17 mike Exp $ + +# change 'tests => 1' to 'tests => last_test_to_print'; +use Test::More tests => 1; +BEGIN { use_ok('Net::Z3950::IRSpy') }; + +######################### + +# Insert your test code below, the Test::More module is use()ed here so read +# its man page ( perldoc Test::More ) for help writing this test script. + diff --git a/zebra/README b/zebra/README new file mode 100644 index 0000000..411f04a --- /dev/null +++ b/zebra/README @@ -0,0 +1,59 @@ +$Id: README,v 1.1 2006-04-13 14:53:18 mike Exp $ + +What's what in this directory: + +README -- This file + +yazserver.xml -- The primary configuration file that controls how + Zebra runs (as a YAZ GFS application) in order to serve the + ZeeRex database. This specifies where to find this database's + own ZeeRex record (zeerex.xml), the configuration for + translating CQL queries into Z39.50 Type-1 (pqf.properties), + and the Zebra-specific configuration (zebra.cfg). + +zeerex.xml -- The static ZeeRex record for this database of ZeeRex + records. It describes what a ZeeRex database looks like, and + how it behaves. (Life would be better if Zebra could at least + partially work this out for itself, but for now we have to go + the long way round.) + +zeerex-2.0.xsd -- The XML Schema describing ZeeRex records, as + downloaded from the official ZeeRex site at: + http://explain.z3950.org/dtd/zeerex-2.0.xsd + This can be used to validate both our own static ZeeRex record + and the records created by IRSpy. + +pqf.properties -- The specification for how CQL queries are translated + into 39.50 Type-1 queries. This file is identical to the one + supplied in the YAZ distribution: we'd just use that if there + was a reliable way to discover where it is. + +zebra.cfg -- Zebra-specific configuration, including the location of + the register files, the location of the XSLT filter + configuration (filterconf.xml), etc. + +filterconf.xml -- Configuration of Zebra's XSLT filter, which uses + XSLT stylesheets to identify the indexable data in incoming + files and to transform records for presentation. + +zeerex2index.xsl -- The indexing stylesheet for ZeeRex records. + +zeerex2zeerex.xsl -- The "no-op" stylesheet for presenting ZeeRex + records. + +db -- A subdirectory containing the actual database: register files, + dictionaries and suchlike. + +-- + +To create the database and start the server: + +xmllint --noout --schema zeerex-2.0.xsd zeerex.xml # Verify +xsltproc zeerex2index.xsl zeerex.xml # Check what indexer will see +zebraidx -c zebra.cfg init # Remove any existing database records +zebraidx -c zebra.cfg update zeerex.xml # Our only record! +zebraidx -c zebra.cfg commit +zebrasrv -f yazserver.xml + +Then interrogate the database with SRU URLs such as: + http://localhost:1313/IR-Explain--1?version=1.1&operation=searchRetrieve&x-pquery=@attr%201=net:host%20localhost \ No newline at end of file diff --git a/zebra/filterconf.xml b/zebra/filterconf.xml new file mode 100644 index 0000000..ec24652 --- /dev/null +++ b/zebra/filterconf.xml @@ -0,0 +1,7 @@ + + + + + + diff --git a/zebra/pqf.properties b/zebra/pqf.properties new file mode 100644 index 0000000..1f5b7d4 --- /dev/null +++ b/zebra/pqf.properties @@ -0,0 +1,150 @@ +# $Id: pqf.properties,v 1.1 2006-04-13 14:53:18 mike Exp $ +# +# Propeties file to drive org.z3950.zing.cql.CQLNode's toPQF() +# back-end and the YAZ CQL-to-PQF converter. This specifies the +# interpretation of various CQL indexes, relations, etc. in terms +# of Type-1 query attributes. +# +# This configuration file generates queries using BIB-1 attributes. +# See http://www.loc.gov/z3950/agency/zing/cql/dc-indexes.html +# for the Maintenance Agency's work-in-progress mapping of Dublin Core +# indexes to Attribute Architecture (util, XD and BIB-2) +# attributes. + +# Identifiers for prefixes used in this file. (index.*) +set.cql = info:srw/cql-context-set/1/cql-v1.1 +set.rec = info:srw/cql-context-set/2/rec-1.0 +set.dc = info:srw/cql-context-set/1/dc-v1.1 +set.bath = http://zing.z3950.org/cql/bath/2.0/ + +# default set (in query) +set = info:srw/cql-context-set/1/dc-v1.1 + +# The default access point and result-set references +index.cql.serverChoice = 1=1016 + # srw.serverChoice is deprecated in favour of cql.serverChoice + # BIB-1 "any" + +index.rec.id = 1=12 + +index.dc.title = 1=4 +index.dc.subject = 1=21 +index.dc.creator = 1=1003 +index.dc.author = 1=1003 + ### Unofficial synonym for "creator" +index.dc.editor = 1=1020 +index.dc.publisher = 1=1018 +index.dc.description = 1=62 + # "abstract" +index.dc.date = 1=30 +index.dc.resourceType = 1=1031 + # guesswork: "Material-type" +index.dc.format = 1=1034 + # guesswork: "Content-type" +index.dc.resourceIdentifier = 1=12 + # "Local number" +index.dc.source = 1=1019 + # "Record-source" +index.dc.language = 1=54 + # "Code--language" +index.dc.relation = 1=? + ### No idea how to represent this +index.dc.coverage = 1=? + ### No idea how to represent this +index.dc.rights = 1=? + ### No idea how to represent this + +# Relation attributes are selected according to the CQL relation by +# looking up the "relation." property: +# +relation.< = 2=1 +relation.le = 2=2 +relation.eq = 2=3 +relation.exact = 2=3 +relation.ge = 2=4 +relation.> = 2=5 +relation.<> = 2=6 + +### These two are not really right: +relation.all = 2=3 +relation.any = 2=3 + +# BIB-1 doesn't have a server choice relation, so we just make the +# choice here, and use equality (which is clearly correct). +relation.scr = 2=3 + +# Relation modifiers. +# +relationModifier.relevant = 2=102 +relationModifier.fuzzy = 5=102 + ### truncation=regExpr-2 (5=102) in Zebra is "fuzzy matching" +relationModifier.stem = 2=101 +relationModifier.phonetic = 2=100 + +# Position attributes may be specified for anchored terms (those +# beginning with "^", which is stripped) and unanchored (those not +# beginning with "^"). This may change when we get a BIB-1 truncation +# attribute that says "do what CQL does". +# +position.first = 3=1 6=1 + # "first in field" +position.any = 3=3 6=1 + # "any position in field" +position.last = 3=4 6=1 + # not a standard BIB-1 attribute +position.firstAndLast = 3=3 6=3 + # search term is anchored to be complete field + +# Structure attributes may be specified for individual relations; a +# default structure attribute my be specified by the pseudo-relation +# "*", to be used whenever a relation not listed here occurs. +# +structure.exact = 4=108 + # string +structure.all = 4=2 +structure.any = 4=2 +structure.* = 4=1 + # phrase + +# Truncation attributes used to implement CQL wildcard patterns. The +# simpler forms, left, right- and both-truncation will be used for the +# simplest patterns, so that we produce PQF queries that conform more +# closely to the Bath Profile. However, when a more complex pattern +# such as "foo*bar" is used, we fall back on Z39.58-style masking. +# +truncation.right = 5=1 +truncation.left = 5=2 +truncation.both = 5=3 +truncation.none = 5=100 +truncation.z3958 = 5=104 + +# Finally, any additional attributes that should always be included +# with each term can be specified in the "always" property. +# +always = 6=1 +# 6=1: completeness = incomplete subfield + + +# Bath Profile support, added Thu Dec 18 13:06:20 GMT 2003 +# See the Bath Profile for SRW at +# http://zing.z3950.org/cql/bath.html +# including the Bath Context Set defined within that document. +# +# In this file, we only map index-names to BIB-1 use attributes, doing +# so in accordance with the specifications of the Z39.50 Bath Profile, +# and leaving the relations, wildcards, etc. to fend for themselves. + +index.bath.keyTitle = 1=33 +index.bath.possessingInstitution = 1=1044 +index.bath.name = 1=1002 +index.bath.personalName = 1=1 +index.bath.corporateName = 1=2 +index.bath.conferenceName = 1=3 +index.bath.uniformTitle = 1=6 +index.bath.isbn = 1=7 +index.bath.issn = 1=8 +index.bath.geographicName = 1=58 +index.bath.notes = 1=63 +index.bath.topicalSubject = 1=1079 +index.bath.genreForm = 1=1075 + diff --git a/zebra/yazserver.xml b/zebra/yazserver.xml new file mode 100644 index 0000000..274ca26 --- /dev/null +++ b/zebra/yazserver.xml @@ -0,0 +1,21 @@ + + + + tcp:@:1313 + + ./ + zebra.cfg + pqf.properties + + + + + localhost + 1313 + IR-Explain---1 + + + + + + diff --git a/zebra/zebra.cfg b/zebra/zebra.cfg new file mode 100644 index 0000000..17da22a --- /dev/null +++ b/zebra/zebra.cfg @@ -0,0 +1,23 @@ +# $Id: zebra.cfg,v 1.1 2006-04-13 14:53:17 mike Exp $ + +# Where to look for config files +#profilePath: /usr/local/share/idzebra/tab:/usr/share/idzebra/tab + +# Where to look for loadable zebra modules +#modulePath: zebra/lib/ + +# store records and record keys internally +storeData: 1 +storeKeys: 1 + +# Use the "xslt" filter with config file filter_alvis_conf.xml +recordtype: xslt.filterconf.xml + +database: IR-Explain---1 + +# where to put registers, and other var content, and how large they may be +register: db/register:100G +shadow: db/shadow:100G +lockdir: db/lock +tmpdir: db/tmp +keytmpdir: db/tmp diff --git a/zebra/zeerex-2.0.xsd b/zebra/zeerex-2.0.xsd new file mode 100644 index 0000000..0ae5fb1 --- /dev/null +++ b/zebra/zeerex-2.0.xsd @@ -0,0 +1,484 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/zebra/zeerex.xml b/zebra/zeerex.xml new file mode 100644 index 0000000..f16f0f9 --- /dev/null +++ b/zebra/zeerex.xml @@ -0,0 +1,15 @@ + + + + + localhost + 1313 + Default + + + IRSpy database of ZeeRex records + Mike Taylor, Index Data Aps, http://www.indexdata.com + mike@indexdata.com + + + diff --git a/zebra/zeerex2index.xsl b/zebra/zeerex2index.xsl new file mode 100644 index 0000000..8eab014 --- /dev/null +++ b/zebra/zeerex2index.xsl @@ -0,0 +1,50 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/zebra/zeerex2zeerex.xsl b/zebra/zeerex2zeerex.xsl new file mode 100644 index 0000000..cfbdde2 --- /dev/null +++ b/zebra/zeerex2zeerex.xsl @@ -0,0 +1,8 @@ + + + + + + + + -- 1.7.10.4