Intial commit
This commit is contained in:
298
prospero/lib/psrv/wais_gw/wprot.h
Normal file
298
prospero/lib/psrv/wais_gw/wprot.h
Normal file
@@ -0,0 +1,298 @@
|
||||
/* WIDE AREA INFORMATION SERVER SOFTWARE:
|
||||
Developed by Thinking Machines Corporation and put into the public
|
||||
domain with no guarantees or restrictions.
|
||||
*/
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
|
||||
#ifndef _H_WAIS_protocol_
|
||||
#define _H_WAIS_protocol_
|
||||
|
||||
#include "cdialect.h"
|
||||
#include "zprot.h"
|
||||
#include "ztype1.h"
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
|
||||
|
||||
|
||||
#ifndef DF_INDEPENDENT
|
||||
#define DF_INDEPENDENT 1
|
||||
#define DF_LATER 2
|
||||
#define DF_EARLIER 3
|
||||
#define DF_SPECIFIED_RANGE 4
|
||||
#endif
|
||||
|
||||
|
||||
#define CT_document 0
|
||||
#define CT_byte 1
|
||||
#define CT_line 2
|
||||
#define CT_paragraph 3
|
||||
|
||||
|
||||
#define QT_RelevanceFeedbackQuery "3"
|
||||
#define QT_TextRetrievalQuery QT_BooleanQuery
|
||||
|
||||
|
||||
#define DT_UserInformationLength (data_tag)99
|
||||
#define DT_ChunkCode (data_tag)100
|
||||
#define DT_ChunkIDLength (data_tag)101
|
||||
#define DT_ChunkMarker (data_tag)102
|
||||
#define DT_HighlightMarker (data_tag)103
|
||||
#define DT_DeHighlightMarker (data_tag)104
|
||||
#define DT_NewlineCharacters (data_tag)105
|
||||
#define DT_SeedWords (data_tag)106
|
||||
#define DT_DocumentIDChunk (data_tag)107
|
||||
#define DT_ChunkStartID (data_tag)108
|
||||
#define DT_ChunkEndID (data_tag)109
|
||||
#define DT_TextList (data_tag)110
|
||||
#define DT_DateFactor (data_tag)111
|
||||
#define DT_BeginDateRange (data_tag)112
|
||||
#define DT_EndDateRange (data_tag)113
|
||||
#define DT_MaxDocumentsRetrieved (data_tag)114
|
||||
#define DT_SeedWordsUsed (data_tag)115
|
||||
#define DT_DocumentID (data_tag)116
|
||||
#define DT_VersionNumber (data_tag)117
|
||||
#define DT_Score (data_tag)118
|
||||
#define DT_BestMatch (data_tag)119
|
||||
#define DT_DocumentLength (data_tag)120
|
||||
#define DT_Source (data_tag)121
|
||||
#define DT_Date (data_tag)122
|
||||
#define DT_Headline (data_tag)123
|
||||
#define DT_OriginCity (data_tag)124
|
||||
#define DT_PresentStartByte (data_tag)125
|
||||
#define DT_TextLength (data_tag)126
|
||||
#define DT_DocumentText (data_tag)127
|
||||
#define DT_StockCodes (data_tag)128
|
||||
#define DT_CompanyCodes (data_tag)129
|
||||
#define DT_IndustryCodes (data_tag)130
|
||||
|
||||
|
||||
#define DT_DocumentHeaderGroup (data_tag)150
|
||||
#define DT_DocumentShortHeaderGroup (data_tag)151
|
||||
#define DT_DocumentLongHeaderGroup (data_tag)152
|
||||
#define DT_DocumentTextGroup (data_tag)153
|
||||
#define DT_DocumentHeadlineGroup (data_tag)154
|
||||
#define DT_DocumentCodeGroup (data_tag)155
|
||||
#define DT_Lines (data_tag)131
|
||||
#define DT_TYPE_BLOCK (data_tag)132
|
||||
#define DT_TYPE (data_tag)133
|
||||
|
||||
|
||||
#define ES_DocumentHeader "Document Header"
|
||||
#define ES_DocumentShortHeader "Document Short Header"
|
||||
#define ES_DocumentLongHeader "Document Long Header"
|
||||
#define ES_DocumentText "Document Text"
|
||||
#define ES_DocumentHeadline "Document Headline"
|
||||
#define ES_DocumentCodes "Document Codes"
|
||||
|
||||
typedef struct DocObj {
|
||||
any* DocumentID;
|
||||
char* Type;
|
||||
long ChunkCode;
|
||||
union {
|
||||
long Pos;
|
||||
any* ID;
|
||||
} ChunkStart;
|
||||
union {
|
||||
long Pos;
|
||||
any* ID;
|
||||
} ChunkEnd;
|
||||
} DocObj;
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
|
||||
|
||||
typedef struct WAISInitResponse {
|
||||
long ChunkCode;
|
||||
long ChunkIDLength;
|
||||
char* ChunkMarker;
|
||||
char* HighlightMarker;
|
||||
char* DeHighlightMarker;
|
||||
char* NewlineCharacters;
|
||||
|
||||
} WAISInitResponse;
|
||||
|
||||
typedef struct WAISSearch {
|
||||
char* SeedWords;
|
||||
DocObj** Docs;
|
||||
char** TextList;
|
||||
long DateFactor;
|
||||
char* BeginDateRange;
|
||||
char* EndDateRange;
|
||||
long MaxDocumentsRetrieved;
|
||||
} WAISSearch;
|
||||
|
||||
typedef struct WAISDocumentHeader {
|
||||
any* DocumentID;
|
||||
long VersionNumber;
|
||||
long Score;
|
||||
long BestMatch;
|
||||
long DocumentLength;
|
||||
long Lines;
|
||||
char** Types;
|
||||
char* Source;
|
||||
char* Date;
|
||||
char* Headline;
|
||||
char* OriginCity;
|
||||
} WAISDocumentHeader;
|
||||
|
||||
typedef struct WAISDocumentShortHeader {
|
||||
any* DocumentID;
|
||||
long VersionNumber;
|
||||
long Score;
|
||||
long BestMatch;
|
||||
long DocumentLength;
|
||||
long Lines;
|
||||
} WAISDocumentShortHeader;
|
||||
|
||||
typedef struct WAISDocumentLongHeader {
|
||||
any* DocumentID;
|
||||
long VersionNumber;
|
||||
long Score;
|
||||
long BestMatch;
|
||||
long DocumentLength;
|
||||
long Lines;
|
||||
char** Types;
|
||||
char* Source;
|
||||
char* Date;
|
||||
char* Headline;
|
||||
char* OriginCity;
|
||||
char* StockCodes;
|
||||
char* CompanyCodes;
|
||||
char* IndustryCodes;
|
||||
} WAISDocumentLongHeader;
|
||||
|
||||
typedef struct WAISDocumentText {
|
||||
any* DocumentID;
|
||||
long VersionNumber;
|
||||
any* DocumentText;
|
||||
} WAISDocumentText;
|
||||
|
||||
typedef struct WAISDocumentHeadlines {
|
||||
any* DocumentID;
|
||||
long VersionNumber;
|
||||
char* Source;
|
||||
char* Date;
|
||||
char* Headline;
|
||||
char* OriginCity;
|
||||
} WAISDocumentHeadlines;
|
||||
|
||||
typedef struct WAISDocumentCodes {
|
||||
any* DocumentID;
|
||||
long VersionNumber;
|
||||
char* StockCodes;
|
||||
char* CompanyCodes;
|
||||
char* IndustryCodes;
|
||||
} WAISDocumentCodes;
|
||||
|
||||
typedef struct WAISSearchResponse {
|
||||
char* SeedWordsUsed;
|
||||
WAISDocumentHeader** DocHeaders;
|
||||
WAISDocumentShortHeader** ShortHeaders;
|
||||
WAISDocumentLongHeader** LongHeaders;
|
||||
WAISDocumentText** Text;
|
||||
WAISDocumentHeadlines** Headlines;
|
||||
WAISDocumentCodes** Codes;
|
||||
diagnosticRecord** Diagnostics;
|
||||
} WAISSearchResponse;
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
||||
extern "C"
|
||||
{
|
||||
#endif
|
||||
|
||||
DocObj* makeDocObjUsingWholeDocument _AP((any* aDocID,char* type));
|
||||
DocObj* makeDocObjUsingBytes _AP((any* aDocID,char* type,long start,long end));
|
||||
DocObj* makeDocObjUsingLines _AP((any* aDocID,char* type,long start,long end));
|
||||
DocObj* makeDocObjUsingParagraphs _AP((any* aDocID,char* type,any* start,any* end));
|
||||
void freeDocObj _AP((DocObj* doc));
|
||||
|
||||
WAISInitResponse* makeWAISInitResponse _AP((long chunkCode,long chunkIDLen,
|
||||
char* chunkMarker,char* highlightMarker,
|
||||
char* deHighlightMarker,char* newLineChars));
|
||||
void freeWAISInitResponse _AP((WAISInitResponse* init));
|
||||
|
||||
WAISSearch* makeWAISSearch _AP((
|
||||
char* seedWords,DocObj** docs,char** textList,
|
||||
long dateFactor,char* beginDateRange,char* endDateRange,
|
||||
long maxDocsRetrieved));
|
||||
void freeWAISSearch _AP((WAISSearch* query));
|
||||
|
||||
WAISDocumentHeader* makeWAISDocumentHeader _AP((
|
||||
any* aDocID,long versionNumber,long score,long bestMatch,long docLen,
|
||||
long lines,char** types,char* source,char* theDate,char* headline,char* originCity));
|
||||
void freeWAISDocumentHeader _AP((WAISDocumentHeader* header));
|
||||
char* writeWAISDocumentHeader _AP((WAISDocumentHeader* header,char* buffer,long* len));
|
||||
char* readWAISDocumentHeader _AP((WAISDocumentHeader** header,char* buffer));
|
||||
|
||||
WAISDocumentShortHeader* makeWAISDocumentShortHeader _AP((
|
||||
any* aDocID,long versionNumber,long score,long bestMatch,long docLen,long lines));
|
||||
void freeWAISDocumentShortHeader _AP((WAISDocumentShortHeader* header));
|
||||
char* writeWAISDocumentShortHeader _AP((WAISDocumentShortHeader* header,
|
||||
char* buffer,long* len));
|
||||
char* readWAISDocumentShortHeader _AP((WAISDocumentShortHeader** header,char* buffer));
|
||||
|
||||
WAISDocumentLongHeader* makeWAISDocumentLongHeader _AP((
|
||||
any* aDocID,long versionNumber,long score,long bestMatch,long docLen,
|
||||
long lines,char** types,char* source,char* theDate, char* headline,char* originCity,
|
||||
char* stockCodes,char* companyCodes,char* industryCodes));
|
||||
void freeWAISDocumentLongHeader _AP((WAISDocumentLongHeader* header));
|
||||
char* writeWAISDocumentLongHeader _AP((WAISDocumentLongHeader* header,char* buffer,long* len));
|
||||
char* readWAISDocumentLongHeader _AP((WAISDocumentLongHeader** header,char* buffer));
|
||||
|
||||
WAISSearchResponse* makeWAISSearchResponse _AP((
|
||||
char* seedWordsUsed,WAISDocumentHeader** docHeaders,
|
||||
WAISDocumentShortHeader** shortHeaders,
|
||||
WAISDocumentLongHeader** longHeaders,
|
||||
WAISDocumentText** text,WAISDocumentHeadlines** headlines,
|
||||
WAISDocumentCodes** codes,
|
||||
diagnosticRecord** diagnostics));
|
||||
void freeWAISSearchResponse _AP((WAISSearchResponse* response));
|
||||
|
||||
WAISDocumentText* makeWAISDocumentText _AP((any* aDocID,long versionNumber,
|
||||
any* documentText));
|
||||
void freeWAISDocumentText _AP((WAISDocumentText* docText));
|
||||
char* writeWAISDocumentText _AP((WAISDocumentText* docText,char* buffer,long* len));
|
||||
char* readWAISDocumentText _AP((WAISDocumentText** docText,char* buffer));
|
||||
|
||||
WAISDocumentHeadlines* makeWAISDocumentHeadlines _AP((
|
||||
any* aDocID,long versionNumber,char* source,char* theDate,
|
||||
char* headline,char* originCity));
|
||||
void freeWAISDocumentHeadlines _AP((WAISDocumentHeadlines* docHeadline));
|
||||
char* writeWAISDocumentHeadlines _AP((WAISDocumentHeadlines* docHeadline,char* buffer,long* len));
|
||||
char* readWAISDocumentHeadlines _AP((WAISDocumentHeadlines** docHeadline,char* buffer));
|
||||
|
||||
WAISDocumentCodes* makeWAISDocumentCodes _AP((
|
||||
any* aDocID,long versionNumber,char* stockCodes,char* companyCodes,
|
||||
char* industryCodes));
|
||||
void freeWAISDocumentCodes _AP((WAISDocumentCodes* docCodes));
|
||||
char* writeWAISDocumentCodes _AP((WAISDocumentCodes* docCodes,char* buffer,long* len));
|
||||
char* readWAISDocumentCodes _AP((WAISDocumentCodes** docCodes,char* buffer));
|
||||
|
||||
any* makeWAISTextQuery _AP((DocObj** docs));
|
||||
DocObj** readWAISTextQuery _AP((any* terms));
|
||||
|
||||
void CSTFreeWAISInitResponse _AP((WAISInitResponse* init));
|
||||
void CSTFreeWAISSearch _AP((WAISSearch* query));
|
||||
void CSTFreeDocObj _AP((DocObj* doc));
|
||||
void CSTFreeWAISDocumentHeader _AP((WAISDocumentHeader* header));
|
||||
void CSTFreeWAISDocumentShortHeader _AP((WAISDocumentShortHeader* header));
|
||||
void CSTFreeWAISDocumentLongHeader _AP((WAISDocumentLongHeader* header));
|
||||
void CSTFreeWAISSearchResponse _AP((WAISSearchResponse* response));
|
||||
void CSTFreeWAISDocumentText _AP((WAISDocumentText* docText));
|
||||
void CSTFreeWAISDocumentHeadlines _AP((WAISDocumentHeadlines* docHeadline));
|
||||
void CSTFreeWAISDocumentCodes _AP((WAISDocumentCodes* docCodes));
|
||||
void CSTFreeWAISTextQuery _AP(( any* query));
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
/*----------------------------------------------------------------------*/
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user