\begin{verbatim} /* Tipster Architecture header file (tipster.h) */ typedef char* tip_string; typedef int tip_integer; typedef void* tip_Annotation; typedef void* tip_AnnotationReference; typedef void* tip_AnnotationSet; typedef void* tip_Attribute; typedef void* tip_AttributeReference; typedef void* tip_AttributeSet; typedef void* tip_AttributeValue; typedef void* tip_AttributeValueSet; typedef void* tip_ByteSequence; typedef void* tip_Collection; typedef void* tip_CollectionReference; typedef void* tip_Document; typedef void* tip_DocumentCollectionIndex; typedef void* tip_DocumentCollectionIndexSet; typedef void* tip_DocumentReference; typedef void* tip_QueryCollectionIndex; typedef void* tip_QueryCollectionIndexSet; typedef void* tip_RetrievalQuery; typedef void* tip_RoutingQuery; typedef void* tip_Span; typedef void* tip_SpanSet; typedef void* tip_stringSet; void tip_Free(void*); tip_string tip_AddAnnotation(tip_Document, tip_Annotation); void tip_AddQuery(tip_QueryCollectionIndex, tip_RoutingQuery); void tip_Annotate(tip_Document, tip_string); void tip_AnnotateCollection(tip_Collection, tip_Collection, tip_string); /* Type of argument 1 of AnnotationsAt can be tip_Document or tip_AnnotationSet */ tip_AnnotationSet tip_AnnotationsAt(void*, tip_integer); void tip_Augment(tip_DocumentCollectionIndex, tip_Collection); /* Type of argument 1 of Close can be tip_QueryCollectionIndex or tip_Collection or tip_DocumentCollectionIndex */ void tip_Close(void*); tip_string tip_ConvertToString(tip_ByteSequence); tip_Document tip_CopyBareDocument(tip_Collection, tip_Document); tip_Document tip_CopyDocument(tip_Collection, tip_Document); tip_Annotation tip_CreateAnnotation(tip_string, tip_SpanSet, tip_AttributeSet); tip_AnnotationReference tip_CreateAnnotationReference(tip_Document, tip_Annotation); tip_AnnotationSet tip_CreateAnnotationSet(void); tip_Attribute tip_CreateAttribute(tip_string, tip_AttributeValue); tip_AttributeReference tip_CreateAttributeReference(tip_Document, tip_string); tip_AttributeSet tip_CreateAttributeSet(void); tip_AttributeValueSet tip_CreateAttributeValueSet(void); tip_ByteSequence tip_CreateByteSequence(tip_string); tip_Collection tip_CreateCollection(tip_string, tip_AttributeSet); tip_CollectionReference tip_CreateCollectionReference(tip_Collection); tip_Document tip_CreateDocument(tip_Collection, tip_string, tip_ByteSequence, tip_AnnotationSet, tip_AttributeSet); tip_DocumentCollectionIndex tip_CreateDocumentCollectionIndex(tip_string); tip_DocumentCollectionIndexSet tip_CreateDocumentCollectionIndexSet(void); tip_DocumentReference tip_CreateDocumentReference(tip_Document); tip_QueryCollectionIndex tip_CreateQueryCollectionIndex(tip_string); tip_QueryCollectionIndexSet tip_CreateQueryCollectionIndexSet(void); tip_Span tip_CreateSpan(tip_integer, tip_integer); tip_SpanSet tip_CreateSpanSet(void); tip_Collection tip_CreateVolatileCollection(tip_AttributeSet); tip_stringSet tip_CreatestringSet(void); /* Type of argument 1 of DeleteAnnotations can be tip_Document or tip_AnnotationSet */ /* Type of argument 2 of DeleteAnnotations can be tip_string or NULL */ void tip_DeleteAnnotations(void*, tip_string, tip_AttributeSet); void tip_Destroy(tip_string); /* tip_Document as argument 1 represents Tipster class DetectionQuery */ void tip_EditQuery(tip_Document); /* Result of FirstDocument can be tip_Document or NULL */ tip_Document tip_FirstDocument(tip_Collection); /* tip_Document as argument 1 represents Tipster class DetectionQuery */ tip_RetrievalQuery tip_FormRetrievalQuery(tip_Document, tip_DocumentCollectionIndexSet); /* tip_Document as argument 1 represents Tipster class DetectionQuery */ tip_RoutingQuery tip_FormRoutingQuery(tip_Document, tip_DocumentCollectionIndexSet); /* Type of argument 1 of GetAnnotation can be tip_Document or tip_AnnotationSet */ tip_Annotation tip_GetAnnotation(void*, tip_string); tip_string tip_GetAnnotationId(tip_AnnotationReference); tip_AnnotationSet tip_GetAnnotations(tip_Document); /* Result of GetAttribute can be NULL or tip_AttributeValue */ /* Type of argument 1 of GetAttribute can be tip_Annotation or tip_Collection or tip_Document */ tip_AttributeValue tip_GetAttribute(void*, tip_string); tip_string tip_GetAttributeName(tip_AttributeReference); /* Type of argument 1 of GetAttributes can be tip_Annotation or tip_Collection or tip_Document */ tip_AttributeSet tip_GetAttributes(void*); /* Result of GetByExternalId can be tip_Document or NULL */ tip_Document tip_GetByExternalId(tip_Collection, tip_string); /* Type of argument 1 of GetCollectionName can be tip_AnnotationReference or tip_AttributeReference or tip_DocumentReference or tip_CollectionReference */ tip_string tip_GetCollectionName(void*); /* tip_Document as argument 1 represents Tipster class DetectionQuery */ /* Type of argument 1 of GetDetectionNeed can be tip_RoutingQuery or tip_RetrievalQuery or tip_Document */ tip_DocumentReference tip_GetDetectionNeed(void*); /* Result of GetDocument can be tip_Document or NULL */ tip_Document tip_GetDocument(tip_Collection, tip_string); /* Type of argument 1 of GetDocumentId can be tip_DocumentReference or tip_AnnotationReference or tip_AttributeReference */ tip_string tip_GetDocumentId(void*); tip_integer tip_GetEnd(tip_Span); tip_string tip_GetExternalId(tip_Document); /* Type of argument 1 of GetId can be tip_Annotation or tip_Document */ tip_string tip_GetId(void*); /* Type of argument 1 of GetName can be tip_Collection or tip_DocumentCollectionIndex or tip_QueryCollectionIndex or tip_Attribute */ tip_string tip_GetName(void*); tip_string tip_GetOwner(tip_Collection); tip_Collection tip_GetParent(tip_Document); tip_ByteSequence tip_GetRawData(tip_Document); tip_SpanSet tip_GetSpans(tip_Annotation); tip_integer tip_GetStart(tip_Span); tip_string tip_GetType(tip_Annotation); /* Result of GetValue can be tip_AttributeReference or tip_AnnotationReference or tip_AttributeValueSet or tip_AttributeValue or tip_string or tip_CollectionReference or tip_DocumentReference */ /* Type of argument 1 of GetValue can be tip_AttributeValue or tip_Attribute */ void* tip_GetValue(void*); /* Type of argument 1 of Length can be tip_Collection or tip_SpanSet or tip_DocumentCollectionIndexSet or tip_AttributeSet or tip_ByteSequence or tip_AnnotationSet or tip_stringSet or tip_AttributeValueSet or tip_QueryCollectionIndexSet */ tip_integer tip_Length(void*); tip_AnnotationSet tip_MergeAnnotations(tip_AnnotationSet, tip_AnnotationSet); /* Type of argument 1 of NextAnnotations can be tip_Document or tip_AnnotationSet */ tip_AnnotationSet tip_NextAnnotations(void*, tip_integer); /* Result of NextDocument can be tip_Document or NULL */ tip_Document tip_NextDocument(tip_Collection); /* Result of Nth can be tip_DocumentCollectionIndex or tip_Attribute or tip_Annotation or tip_string or tip_AttributeValue or tip_QueryCollectionIndex or tip_Span */ /* Type of argument 1 of Nth can be tip_DocumentCollectionIndexSet or tip_AttributeSet or tip_AnnotationSet or tip_stringSet or tip_AttributeValueSet or tip_QueryCollectionIndexSet or tip_SpanSet */ void* tip_Nth(void*, tip_integer); tip_Collection tip_OpenCollection(tip_string); tip_DocumentCollectionIndex tip_OpenDocumentCollectionIndex(tip_string); tip_QueryCollectionIndex tip_OpenQueryCollectionIndex(tip_string); /* Result of Pop can be tip_Attribute or tip_string or tip_AttributeValue or tip_QueryCollectionIndex or tip_Span or tip_DocumentCollectionIndex */ /* Type of argument 1 of Pop can be tip_AttributeSet or tip_stringSet or tip_AttributeValueSet or tip_QueryCollectionIndexSet or tip_SpanSet or tip_DocumentCollectionIndexSet */ void* tip_Pop(void*); /* Type of argument 1 of Push can be tip_AttributeSet or tip_stringSet or tip_AttributeValueSet or tip_QueryCollectionIndexSet or tip_SpanSet or tip_DocumentCollectionIndexSet */ /* Type of argument 2 of Push can be tip_Attribute or tip_string or tip_AttributeValue or tip_QueryCollectionIndex or tip_Span or tip_DocumentCollectionIndex */ void tip_Push(void*, void*); /* Type of argument 1 of PutAttribute can be tip_Annotation or tip_Collection or tip_Document */ void tip_PutAttribute(void*, tip_string, tip_AttributeValue); /* tip_Document as result represents Tipster class DetectionQuery */ /* tip_Document as argument 1 represents Tipster class DetectionNeed */ tip_Document tip_QueryGenerator(tip_Document); tip_Document tip_ReadSGML(tip_string, tip_Collection, tip_string); /* Type of argument 1 of RemoveAnnotation can be tip_Document or tip_AnnotationSet */ void tip_RemoveAnnotation(void*, tip_string); void tip_RemoveDocument(tip_Collection, tip_string); void tip_RemoveQuery(tip_QueryCollectionIndex, tip_RoutingQuery); /* tip_Document as argument 3 represents Tipster class DetectionNeed */ tip_RetrievalQuery tip_RetrievalQueryFromRelevanceJudgements(tip_Collection, tip_DocumentCollectionIndexSet, tip_Document); tip_Collection tip_RetrieveDocuments(tip_DocumentCollectionIndexSet, tip_RetrievalQuery, tip_integer); /* tip_Collection as result represents Tipster class DetectionNeedCollection */ tip_Collection tip_RetrieveQueries(tip_QueryCollectionIndexSet, tip_Document, tip_integer); /* tip_Document as argument 3 represents Tipster class DetectionNeed */ tip_RoutingQuery tip_RoutingQueryFromRelevanceJudgements(tip_Collection, tip_DocumentCollectionIndexSet, tip_Document); void tip_ScoreDocuments(tip_Collection, tip_RetrievalQuery); /* Type of argument 1 of SelectAnnotations can be tip_Document or tip_AnnotationSet */ /* Type of argument 2 of SelectAnnotations can be tip_string or NULL */ tip_AnnotationSet tip_SelectAnnotations(void*, tip_string, tip_AttributeSet); void tip_SetExternalId(tip_Document, tip_string); void tip_SetOwner(tip_Collection, tip_string); /* Type of argument 1 of Sync can be tip_QueryCollectionIndex or tip_Collection or tip_DocumentCollectionIndex */ void tip_Sync(void*); tip_oneof\{{\ttstring},{\ttsequence},{\ttCollectionReference},{\ttDocumentReference},{\ttAnnotationReference},{\ttAttributeReference}\} tip_TypeOf(tip_AttributeValue); /* Result of UpdateUsingRelevanceFeedback can be tip_RoutingQuery or tip_RetrievalQuery */ /* Type of argument 1 of UpdateUsingRelevanceFeedback can be tip_RoutingQuery or tip_RetrievalQuery */ void* tip_UpdateUsingRelevanceFeedback(void*, tip_Collection, tip_DocumentCollectionIndexSet); tip_string tip_WriteSGML(tip_Document, tip_AnnotationSet, tip_stringSet); \end{verbatim}