1 /* $Id: xpath5.c,v 1.5 2006-03-31 15:58:10 adam Exp $
2 Copyright (C) 1995-2005
5 This file is part of the Zebra server.
7 Zebra is free software; you can redistribute it and/or modify it under
8 the terms of the GNU General Public License as published by the Free
9 Software Foundation; either version 2, or (at your option) any later
12 Zebra is distributed in the hope that it will be useful, but WITHOUT ANY
13 WARRANTY; without even the implied warranty of MERCHANTABILITY or
14 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
17 You should have received a copy of the GNU General Public License
18 along with Zebra; see the file LICENSE.zebra. If not, write to the
19 Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
23 #include "../api/testlib.h"
25 /** xpath5.c - Ranking in xpath */
27 const char *recs[] = {
29 " <title>The first title</title>\n"
31 " The first common word is the: the the the \n"
32 " The second common word is word \n"
33 " but all have the foo bar \n"
38 " <title>The second title</title>\n"
40 " The first common word is the: the \n"
41 " The second common word is foo: foo foo \n"
42 " but all have the foo bar \n"
47 " <title>The third title</title>\n"
49 " The first common word is the: the \n"
50 " The third common word is bar: bar \n"
51 " but all have the foo bar \n"
58 static void tst(int argc, char **argv)
60 ZebraService zs = tl_start_up(0, argc, argv);
61 ZebraHandle zh = zebra_open(zs, 0);
63 YAZ_CHECK(tl_init_data(zh, recs));
65 YAZ_CHECK(tl_ranking_query(zh, "@attr 1=/record/title @attr 2=102 the",
66 3,"first title", 952));
67 YAZ_CHECK(tl_ranking_query(zh, "@attr 1=/ @attr 2=102 @or third foo",
68 3,"third title", 802));
70 YAZ_CHECK(tl_ranking_query(zh, "@attr 1=/ @attr 2=102 foo",
71 3,"second title", 850));
73 YAZ_CHECK(tl_ranking_query(zh, "@attr 1=/record/ @attr 2=102 foo",
74 3,"second title", 927));
76 YAZ_CHECK(tl_close_down(zh, zs));