00001
00006 interface AGAPI {
00007
00011 typedef string Id;
00013 typedef string AGSetId;
00015 typedef string AGId;
00017 typedef string AGIds;
00019 typedef string AnnotationId;
00021 typedef string AnnotationType;
00023 typedef string AnnotationIds;
00025 typedef string AnchorId;
00027 typedef string AnchorIds;
00029 typedef string TimelineId;
00031 typedef string SignalId;
00033 typedef string SignalIds;
00035 typedef string FeatureName;
00037 typedef string FeatureNames;
00039 typedef string FeatureValue;
00041 typedef string Features;
00043 typedef string URI;
00045 typedef string MimeClass;
00047 typedef string MimeType;
00049 typedef string Encoding;
00051 typedef string Unit;
00053 typedef double Offset;
00055 typedef string Track;
00056
00063 AGSetId CreateAGSet( in AGSetId agSetId);
00064
00066 boolean ExistsAGSet( in AGSetId agSetId);
00067
00072 void DeleteAGSet( in AGSetId agSetId);
00073
00074
00083 AGId CreateAG( in Id id)
00084
00095 AGId CreateAG( in Id id,
00096 in TimelineId timelineId );
00097
00099 boolean ExistsAG( in AGId agId );
00100
00102 void DeleteAG( in AGId agId );
00103
00112 AGIds GetAGIds( in AGSetId agSetId );
00113
00122 TimelineId CreateTimeline( in Id id );
00123
00125 boolean ExistsTimeline( in TimelineId timelineId );
00126
00128 void DeleteTimeline( in TimelineId timelineId );
00129
00138 SignalId CreateSignal( in Id id,
00139 in URI uri,
00140 in MimeClass mimeClass,
00141 in MimeType mimeType,
00142 in Encoding encoding,
00143 in Unit unit,
00144 in Track track );
00145
00147 boolean ExistsSignal( in SignalId signalId );
00148
00150 void DeleteSignal( in SignalId signalId );
00151
00160 SignalIds GetSignals( in TimelineId timelineId );
00161
00163 void SetOffsetUnit( in AnchorId anchorId,
00164 in Unit unit);
00166 Unit GetOffsetUnit( in AnchorId anchorId);
00167
00169 void SetAnchorSignalIds(in AnchorId anchorId,
00170 in SignalIds signalIds);
00171
00173 SignalIds GetAnchorSignalIds(in AnchorId anchorId);
00174
00176 MimeClass GetSignalMimeClass(in SignalId signalId );
00178 MimeType GetSignalMimeType( in SignalId signalId );
00180 Encoding GetSignalEncoding( in SignalId signalId );
00182 string GetSignalXlinkType(in SignalId signalId );
00184 string GetSignalXlinkHref(in SignalId signalId );
00186 string GetSignalUnit( in SignalId signalId );
00188 Track GetSignalTrack( in SignalId signalId );
00189
00198 AnnotationId CreateAnnotation( in Id id,
00199 in AnchorId start,
00200 in AnchorId end,
00201 in AnnotationType annotationType );
00202
00204 boolean ExistsAnnotation( in AnnotationId annotationId );
00206 void DeleteAnnotation( in AnnotationId annotationId );
00213 AnnotationId CopyAnnotation( in AnnotationId annotationId );
00214
00226 AnnotationIds
00227 SplitAnnotation( in AnnotationId annotationId );
00228
00239 AnnotationIds
00240 NSplitAnnotation( in AnnotationId annotationId,
00241 in short N );
00242
00244 AnnotationType GetAnnotationType( in AnnoationId annotationId );
00246 AnchorId GetStartAnchor( in AnnotationId annotationId );
00248 AnchorId GetEndAnchor( in AnnotationId annotationId );
00250
00260 string GetAnnotationInfo( in AnnoationId annotationId );
00261
00262 void SetStartAnchor( in AnnotationId annotationId,
00263 in AnchorId anchorId );
00265 void SetEndAnchor( in AnnotationId annotationId,
00266 in AnchorId anchorId );
00267
00269 Offset GetStartOffset( in AnnotationId annotationId );
00271 Offset GetEndOffset( in AnnotationId annotationId );
00273 void SetStartOffset( in AnnotationId annotationId,
00274 in Offset offset );
00276 void SetEndOffset( in AnnotationId annotationId,
00277 in Offset offset );
00278
00280 sequence<AnnotationType> GetAnnotationTypes(in Id id);
00282 sequence<FeatureName> GetAnnotationFeatureNames(in Id id);
00283
00284
00285
00286
00287
00299 void SetFeature( in Id id,
00300 in FeatureName featureName,
00301 in FeatureValue featureValue );
00302
00313 boolean ExistsFeature( in Id id,
00314 in FeatureName featureName );
00315
00326 void DeleteFeature( in Id id,
00327 in FeatureName featureName );
00328
00339 string GetFeature( in Id id,
00340 in FeatureName featureName );
00352 void UnsetFeature( in Id id,
00353 in FeatureName featureName );
00365 FeatureNames
00366 GetFeatureNames( in Id id );
00367
00419 void SetFeatures( in Id id,
00420 in Features features );
00421
00473 Features GetFeatures( in Id id );
00474
00486 void UnsetFeatures( in Id id );
00487
00488
00496 AnchorId CreateAnchor( in Id id,
00497 in Offset offset,
00498 in Unit unit,
00499 in SignalIds signalIds );
00500
00508 AnchorId CreateAnchor( in Id id,
00509 in SignalIds signalIds );
00510
00518 AnchorId CreateAnchor( in Id id );
00519
00521 boolean ExistsAnchor( in AnchorId anchorId );
00523 void DeleteAnchor( in AnchorId anchorId );
00525 void SetAnchorOffset( in AnchorId anchorId,
00526 in Offset offset );
00528 Offset GetAnchorOffset( in AnchorId anchorId );
00529
00531 boolean GetAnchored(in AnchorId anchorId );
00532
00536 void UnsetAnchorOffset(in AnchorId anchorId );
00537
00546 AnchorId SplitAnchor( in AnchorId anchorId );
00547
00549 AnnotationIds
00550 GetIncomingAnnotationSet(
00551 in AnchorId anchorId );
00552
00554 AnnotationIds
00555 GetIncomigAnnotationSetByType(in AnchorId anchorId,
00556 in AnnotationType type);
00557
00559 AnnotationIds
00560 GetOutgoingAnnotationSet(
00561 in AnchorId anchorId );
00562
00564 AnnotationIds
00565 GetOutfoingAnnotationSet(in AnchorId anchorId,
00566 in AnnotationType type);
00567
00569 AnchorIds GetAnchorSet( in AGId agId );
00578 AnchorIds GetAnchorSetByOffset(
00579 in AGId agId,
00580 in Offset offset );
00581
00593 AnchorIds GetAnchorSetByOffset(
00594 in AGId agId,
00595 in Offset offset,
00596 in float epsilon );
00597
00598
00605 AnchorIds GetAnchorSetNearestOffset(
00606 in AGId agId,
00607 in Offset offset );
00608
00610 AnnotationIds
00611 GetAnnotationSetByFeature(
00612 in AGId agId,
00613 in FeatureName featureName,
00614 in FeatureValue featureValue);
00615
00621 AnnotationIds
00622 GetAnnotationSetByOffset(
00623 in AGId agId,
00624 in Offset offset );
00626 AnnotationIds
00627 GetAnnotationSetByType(
00628 in AGId agId,
00629 in AnnotationType annotationType );
00630
00636 AnnotationIds GetAnnotationSeqByOffset(
00637 in AGId agId);
00643 AnnotationIds GetAnnotationSeqByOffset(
00644 in AGId agId,
00645 in Offset begin);
00646
00653 AnnotationIds GetAnnotationSeqByOffset(
00654 in AGId agId,
00655 in Offset begin,
00656 in Offset end);
00657
00658
00663 AGSetId GetAGSetId( in Id id );
00664
00668 AGId GetAGId( in Id id );
00669
00673 TimelineId GetTimelineId( in Id id );
00674
00676 bool
00677 SPrecedes(in AnnotationId annotationId1,
00678 in AnnotationId annotationId2);
00679
00681 string toXML( in AGSetId id);
00682
00684 string toXML( in AGId agId);
00685
00751 bool LoadFromDB( in string connStr,
00752 in AGSetId agsetId);
00753
00819 bool StoreToDB( in string connStr
00820 in AGSetId agsetId);
00821
00823
00837 AGIds
00838 Load(in string format,
00839 in string annotationFile,
00840 in string id,
00841 in string[10][2] signalInfo,
00842 in string[10][2] options);
00843
00845
00857 void
00858 Store(in string format,
00859 in string filename,
00860 in string agIds,
00861 in string[10][2] options);
00862
00869 boolean
00870 CheckAnchorOffsetTotal(in Id agId,
00871 in AnnotationType type);
00872
00880 boolean
00881 CheckAnchorOffsetBounded(in Id agId,
00882 in AnnotationType type);
00883
00891 boolean
00892 CheckFeatureExists(in Id agId,
00893 in AnnotationType type,
00894 in FeatureName featureName);
00895
00904 boolean
00905 CheckFeatureIsAnnotationId(in Id agId,
00906 in AnnotationType type,
00907 in FeatureName featureName);
00908
00915 boolean
00916 CheckLinear(in Id agId,
00917 in AnnotationType type);
00918
00925 boolean
00926 CheckConnected(in Id agId,
00927 in AnnotationType type);
00928
00937 boolean
00938 CheckCoextensive(in Id agId,
00939 in AnnotationType type1,
00940 in AnnotationType type2);
00941
00951 boolean
00952 CheckSpan(in Id agId,
00953 in AnnotationType spanType,
00954 in AnnotationType spannedType);
00955
00956 };