[1860] | 1 | // basic elements for text
|
---|
| 2 |
|
---|
| 3 | module gsdlInterface {
|
---|
| 4 |
|
---|
| 5 | typedef sequence<unsigned short> usString;
|
---|
| 6 |
|
---|
| 7 | typedef sequence<string> stringSeq;
|
---|
| 8 |
|
---|
| 9 | struct corbatext_t
|
---|
| 10 | {
|
---|
| 11 | usString text;
|
---|
| 12 | unsigned short encoding;
|
---|
| 13 | unsigned long length;
|
---|
| 14 | };
|
---|
| 15 |
|
---|
| 16 | typedef sequence<corbatext_t> corbatext_tarray;
|
---|
| 17 |
|
---|
| 18 | typedef corbatext_tarray corbatext_tset;
|
---|
| 19 |
|
---|
| 20 | struct corbatext_tmap
|
---|
| 21 | {
|
---|
| 22 | corbatext_tarray names;
|
---|
| 23 | corbatext_tarray values;
|
---|
| 24 | };
|
---|
| 25 |
|
---|
| 26 | // standard error values
|
---|
| 27 |
|
---|
| 28 | enum corbaComError
|
---|
| 29 | { corbaNoError,
|
---|
| 30 | corbaAuthenticationFailure,
|
---|
| 31 | corbaProtocolError,
|
---|
| 32 | corbaConfigurationError,
|
---|
| 33 | corbaSystemProblem
|
---|
| 34 | };
|
---|
| 35 |
|
---|
| 36 | //
|
---|
| 37 | // getColInfo response
|
---|
| 38 | //
|
---|
| 39 |
|
---|
| 40 | struct corbaShortColInfo
|
---|
| 41 | {
|
---|
| 42 | corbatext_t name;
|
---|
| 43 | corbatext_t host;
|
---|
| 44 | long response;
|
---|
| 45 | };
|
---|
| 46 |
|
---|
| 47 | struct corbaColInfoResponse
|
---|
| 48 | {
|
---|
| 49 | corbaShortColInfo shoftInfo;
|
---|
| 50 | boolean isPublic;
|
---|
| 51 | boolean isBeta;
|
---|
| 52 | unsigned long buildDate;
|
---|
| 53 | corbatext_tarray ccsCols; // Added 05/04/2000
|
---|
| 54 | corbatext_tarray languages;
|
---|
| 55 | unsigned long numDocs;
|
---|
| 56 | unsigned long numWords;
|
---|
| 57 | unsigned long numBytes;
|
---|
| 58 | corbatext_tmap collectionMeta;
|
---|
| 59 | corbatext_tmap format;
|
---|
| 60 | corbatext_tmap building;
|
---|
| 61 | corbatext_t httpdomain ; // Added 27/07/2000
|
---|
| 62 | corbatext_t httpprefix; // Added 27/07/2000
|
---|
| 63 | corbatext_t receptionist;
|
---|
| 64 | };
|
---|
| 65 |
|
---|
| 66 | //
|
---|
| 67 | // getDocument request
|
---|
| 68 | //
|
---|
| 69 |
|
---|
| 70 | struct corbaDocRequest
|
---|
| 71 | {
|
---|
| 72 | corbatext_t OID;
|
---|
| 73 | corbatext_t docType;
|
---|
| 74 | corbatext_t docFormat;
|
---|
| 75 | };
|
---|
| 76 |
|
---|
| 77 | //
|
---|
| 78 | // getDocument response
|
---|
| 79 | //
|
---|
| 80 |
|
---|
| 81 | struct corbaDocResponse
|
---|
| 82 | {
|
---|
| 83 | corbatext_t doc;
|
---|
| 84 | };
|
---|
| 85 |
|
---|
| 86 | enum corbaFilterType
|
---|
| 87 | {
|
---|
| 88 | booleanType,
|
---|
| 89 | integerType,
|
---|
| 90 | enumeratedType,
|
---|
| 91 | stringType
|
---|
| 92 | };
|
---|
| 93 |
|
---|
| 94 | enum corbaFilterRepeatable
|
---|
| 95 | {
|
---|
| 96 | onePerQuery,
|
---|
| 97 | onePerTerm,
|
---|
| 98 | nPerTerm
|
---|
| 99 | };
|
---|
| 100 |
|
---|
| 101 | struct corbaFilterOption
|
---|
| 102 | {
|
---|
| 103 | corbatext_t name;
|
---|
| 104 | corbaFilterType type;
|
---|
| 105 | corbaFilterRepeatable repeatable;
|
---|
| 106 | corbatext_t defaultValue;
|
---|
| 107 | corbatext_tarray validValues;
|
---|
| 108 | };
|
---|
| 109 |
|
---|
| 110 | typedef sequence<corbaFilterOption> corbaFilterOptionList;
|
---|
| 111 |
|
---|
| 112 | struct corbaFilterOptionsResponse
|
---|
| 113 | {
|
---|
| 114 | corbaFilterOptionList options;
|
---|
| 115 | corbatext_tarray names;
|
---|
| 116 | };
|
---|
| 117 |
|
---|
| 118 | //
|
---|
| 119 | // structures for filter call
|
---|
| 120 | //
|
---|
| 121 |
|
---|
| 122 | struct corbaOptionValue
|
---|
| 123 | {
|
---|
| 124 | corbatext_t name;
|
---|
| 125 | corbatext_t value;
|
---|
| 126 | };
|
---|
| 127 |
|
---|
| 128 | typedef sequence<corbaOptionValue> corbaOptionValue_array;
|
---|
| 129 |
|
---|
| 130 | struct corbaFilterRequest
|
---|
| 131 | {
|
---|
| 132 | corbatext_t filter;
|
---|
| 133 | corbaOptionValue_array filterOptions;
|
---|
| 134 | corbatext_tarray docSet;
|
---|
| 135 | long filterResultOptions;
|
---|
| 136 | corbatext_t requestParams;
|
---|
| 137 | corbatext_t refParams;
|
---|
| 138 | corbatext_tset fields;
|
---|
| 139 | boolean getParents;
|
---|
| 140 | };
|
---|
| 141 |
|
---|
| 142 | struct corbaTermInfo
|
---|
| 143 | {
|
---|
| 144 | corbatext_t term;
|
---|
| 145 | long frequency;
|
---|
| 146 | corbatext_tarray matchTerms;
|
---|
| 147 | };
|
---|
| 148 |
|
---|
| 149 | typedef sequence<corbaTermInfo> corbaTermInfo_array;
|
---|
| 150 |
|
---|
| 151 | struct corbaMetadataInfo
|
---|
| 152 | {
|
---|
| 153 | corbatext_t params;
|
---|
| 154 | boolean isRef;
|
---|
| 155 | corbatext_tarray values;
|
---|
| 156 | long id;
|
---|
| 157 | long parentid; // dodge for avoiding pointers for the moment
|
---|
| 158 | };
|
---|
| 159 |
|
---|
| 160 | typedef sequence<corbaMetadataInfo> corbaMetadataInfo_array;
|
---|
| 161 |
|
---|
| 162 | struct corbaMetadataInfo_map
|
---|
| 163 | {
|
---|
| 164 | corbatext_tarray names;
|
---|
| 165 | corbaMetadataInfo_array values;
|
---|
| 166 | };
|
---|
| 167 |
|
---|
| 168 | typedef sequence<long> corbaDocFreq_array;
|
---|
| 169 |
|
---|
| 170 | struct corbaResultDocInfo
|
---|
| 171 | {
|
---|
| 172 | corbatext_t OID;
|
---|
| 173 | long resultNum;
|
---|
| 174 | long ranking;
|
---|
| 175 | long termsMatched;
|
---|
| 176 | long phraseMatched;
|
---|
| 177 | corbaDocFreq_array docFreq;
|
---|
| 178 | corbaMetadataInfo_map metadata;
|
---|
| 179 | corbatext_t classifierMetadataType; // Added 05/04/2000
|
---|
| 180 | long classifierMetadataOffset; // Added 05/04/2000
|
---|
| 181 | corbaMetadataInfo_array metaparents;
|
---|
| 182 | };
|
---|
| 183 |
|
---|
| 184 | typedef sequence<corbaResultDocInfo> corbaResultDocInfo_array;
|
---|
| 185 |
|
---|
| 186 | enum corbaIsApprox
|
---|
| 187 | {
|
---|
| 188 | resultExact,
|
---|
| 189 | resultApprox,
|
---|
| 190 | resultMany
|
---|
| 191 | };
|
---|
| 192 |
|
---|
| 193 | struct corbaFilterResponse
|
---|
| 194 | {
|
---|
| 195 | long numDocs;
|
---|
| 196 | corbaIsApprox isApprox;
|
---|
| 197 | corbaTermInfo_array termInfo;
|
---|
| 198 | corbaResultDocInfo_array docInfo;
|
---|
| 199 | };
|
---|
| 200 |
|
---|
| 201 | interface corbaiface
|
---|
| 202 | {
|
---|
[2113] | 203 | boolean initialise(inout corbaComError error);
|
---|
| 204 | void configure(in corbatext_t key, in corbatext_tarray cfgline,
|
---|
| 205 | inout corbaComError error);
|
---|
| 206 | void collectionList(inout corbatext_tarray collist,
|
---|
| 207 | inout corbaComError error);
|
---|
[1860] | 208 | void hasCollection(in corbatext_t corbaCollection, inout boolean has,
|
---|
| 209 | inout corbaComError error);
|
---|
[2173] | 210 | void ping(in corbatext_t collection, inout boolean wasSuccess, inout corbaComError error);
|
---|
[1860] | 211 | void getDocument(in corbatext_t collection,
|
---|
| 212 | inout corbaDocRequest request, inout corbaDocResponse response,
|
---|
| 213 | inout corbaComError error);
|
---|
| 214 | void getCollectInfo(in corbatext_t collection,
|
---|
| 215 | inout corbaColInfoResponse response,
|
---|
| 216 | inout corbaComError error);
|
---|
| 217 | void getFilterInfo(in corbatext_t collection,
|
---|
| 218 | inout corbatext_tarray filterNames,
|
---|
| 219 | inout corbaComError error);
|
---|
| 220 | void getFilterOptions(in corbatext_t collection,
|
---|
| 221 | in corbatext_t option,
|
---|
| 222 | inout corbaFilterOptionsResponse response,
|
---|
| 223 | inout corbaComError error);
|
---|
| 224 | void filter(in corbatext_t collection,
|
---|
| 225 | in corbaFilterRequest request,
|
---|
| 226 | inout corbaFilterResponse response,
|
---|
| 227 | inout corbaComError error);
|
---|
| 228 | };
|
---|
| 229 |
|
---|
| 230 | };
|
---|