Null
[yaz-moved-to-github.git] / include / prt-add.h
1 /*
2  * Copyright (c) 1995, Index Data.
3  *
4  * Permission to use, copy, modify, distribute, and sell this software and
5  * its documentation, in whole or in part, for any purpose, is hereby granted,
6  * provided that:
7  *
8  * 1. This copyright and permission notice appear in all copies of the
9  * software and its documentation. Notices of copyright or attribution
10  * which appear at the beginning of any file must remain unchanged.
11  *
12  * 2. The name of Index Data or the individual authors may not be used to
13  * endorse or promote products derived from this software without specific
14  * prior written permission.
15  *
16  * THIS SOFTWARE IS PROVIDED "AS IS" AND WITHOUT WARRANTY OF ANY KIND,
17  * EXPRESS, IMPLIED, OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
18  * WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
19  * IN NO EVENT SHALL INDEX DATA BE LIABLE FOR ANY SPECIAL, INCIDENTAL,
20  * INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND, OR ANY DAMAGES
21  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER OR
22  * NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
23  * LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
24  * OF THIS SOFTWARE.
25  *
26  * $Log: prt-add.h,v $
27  * Revision 1.2  1997-04-30 08:52:09  quinn
28  * Null
29  *
30  * Revision 1.1  1996/10/10  11:51:58  quinn
31  * Added SerchResult additional info
32  *
33  *
34  */
35
36 #ifndef PRT_ADD_H
37 #define PRT_ADD_H
38
39 typedef struct Z_QueryExpressionTerm
40 {
41     Z_Term *queryTerm;
42     char *termComment;              /* OPTIONAL */
43 } Z_QueryExpressionTerm;
44
45 typedef struct Z_QueryExpression
46 {
47     int which;
48 #define Z_QueryExpression_term 1
49 #define Z_QueryExpression_query 2
50     union {
51         Z_QueryExpressionTerm *term;
52         Z_Query *query;
53     } u;
54 } Z_QueryExpression;
55
56 typedef struct Z_ResultsByDBList
57 {
58     int num;
59     Z_DatabaseName **elements;
60 } Z_ResultsByDBList;
61
62 typedef struct Z_ResultsByDB_elem
63 {
64     int which;
65 #define Z_ResultsByDB_all 1
66 #define Z_ResultsByDB_list 2
67     union {
68         Odr_null *all;
69         Z_ResultsByDBList *list;
70     } u;
71     int *count;                           /* OPTIONAL */
72     char *resultSetName; /* OPTIONAL */
73 } Z_ResultsByDB_elem;
74
75 typedef struct Z_ResultsByDB
76 {
77     int num;
78     Z_ResultsByDB_elem **elements;
79 } Z_ResultsByDB;
80
81 typedef struct Z_SearchInfoReport_elem
82 {
83     char *subqueryId;                          /* OPTIONAL */
84     bool_t *fullQuery;
85     Z_QueryExpression *subqueryExpression;     /* OPTIONAL */
86     Z_QueryExpression *subqueryInterpretation; /* OPTIONAL */
87     Z_QueryExpression *subqueryRecommendation; /* OPTIONAL */
88     int *subqueryCount;                        /* OPTIONAL */
89     Z_IntUnit *subqueryWeight;                 /* OPTIONAL */
90     Z_ResultsByDB *resultsByDB;                /* OPTIONAL */
91 } Z_SearchInfoReport_elem;
92
93 typedef struct Z_SearchInfoReport
94 {
95     int num;
96     Z_SearchInfoReport_elem **elements;
97 } Z_SearchInfoReport;
98
99 int z_SearchInfoReport (ODR o, Z_SearchInfoReport **p, int opt);
100
101 #endif