1--- $Id: trackmgr.asn 575548 2018-11-30 16:06:02Z evgeniev $ 2--- 3--- Definitions for the TrackManager service 4--- 5 6NCBI-TrackManager DEFINITIONS ::= 7BEGIN 8 9EXPORTS TMgr-Request, TMgr-Reply, TMgr-GenomeContext, TMgr-Status, 10 TMgr-ClientInfo, TMgr-DisplayTrackRequest, 11 TMgr-DisplayTrackReply, TMgr-AssemblySpec,TMgr-AttrSpec, 12 TMgr-BlastRIDDetail, TMgr-Assembly, TMgr-Attribute, TMgr-DisplayTrack, 13 TMgr-DTrackId, TMgr-DatasetItem, TMgr-DisplayTrackChoice, 14 TMgr-CreateUserTrackRequest, TMgr-CreateUserTrackReply, TMgr-Identity, 15 TMgr-TrackAttrValueRequest, TMgr-TrackAttrValueReply, 16 TMgr-RetrieveTracksetRequest, TMgr-RetrieveTracksetReply, 17 TMgr-CreateTracksetRequest, TMgr-CreateTracksetReply, 18 TMgr-AttrRequest, TMgr-AttrReply, TMgr-ValueRequest, TMgr-AttrValueReply, 19 TMgr-TrackAttributes, TMgr-MessageLevel, TMgr-Message, TMgr-DatasetItemSeq, 20 TMgr-CreateRemoteTrackReply, TMgr-CreateRemoteTrackRequest; 21 22IMPORTS Seq-id FROM NCBI-Seqloc 23 Dbtag FROM NCBI-General; 24--- 25--- Top-level request/reply 26--- 27TMgr-Request ::= CHOICE { 28 display-tracks TMgr-DisplayTrackRequest, 29 switch-display-tracks TMgr-SwitchTrackContextRequest, 30 track-attr-values TMgr-TrackAttrValueRequest, 31 blast-tracks TMgr-BlastRIDRequest, 32 create-user-tracks TMgr-CreateUserTrackRequest, 33 create-remote-tracks TMgr-CreateRemoteTrackRequest, 34 resolve-track-items TMgr-ItemResolverRequest, 35 remove-user-tracks TMgr-RemoveUserTrackRequest, 36 retrieve-tracksets TMgr-RetrieveTracksetRequest, 37 create-trackset TMgr-CreateTracksetRequest, 38 rename-trackset TMgr-RenameMyNCBICollectionRequest, 39 supported-assemblies TMgr-SupportedAssembliesRequest 40} 41 42TMgr-Reply ::= CHOICE { 43 display-tracks TMgr-DisplayTrackReply, 44 switch-display-tracks TMgr-SwitchTrackContextReply, 45 track-attr-values TMgr-TrackAttrValueReply, 46 blast-tracks TMgr-BlastRIDReply, 47 create-user-tracks TMgr-CreateUserTrackReply, 48 create-remote-tracks TMgr-CreateRemoteTrackReply, 49 resolve-track-items TMgr-ItemResolverReply, 50 remove-user-tracks TMgr-RemoveUserTrackReply, 51 retrieve-tracksets TMgr-RetrieveTracksetReply, 52 create-trackset TMgr-CreateTracksetReply, 53 rename-trackset TMgr-RenameMyNCBICollectionReply, 54 supported-assemblies TMgr-SupportedAssembliesReply 55} 56 57TMgr-GenomeContext ::= CHOICE { 58 assembly TMgr-AssemblySpec, 59 sequence Seq-id, 60 refseqgene NULL, 61 all NULL, 62 assembly-and-sequence SEQUENCE { 63 assembly TMgr-AssemblySpec, 64 sequence Seq-id 65 } 66} 67 68TMgr-ClientInfo ::= SEQUENCE { 69 client-name VisibleString, 70 context VisibleString OPTIONAL, 71 inhouse BOOLEAN DEFAULT FALSE, 72 context-attrs SET OF TMgr-AttrSpec OPTIONAL 73 --permission keys etc 74} 75 76TMgr-TrackACL-Authorization ::= SEQUENCE { 77 access-level TMgr-ACL-AccessLevel OPTIONAL, 78 access-key VisibleString OPTIONAL 79} 80 81TMgr-DisplayTrackRequest ::= SEQUENCE { 82 client TMgr-ClientInfo, 83 genome-context TMgr-GenomeContext, 84 attrs SET OF TMgr-AttrSpec OPTIONAL, 85 identity TMgr-Identity OPTIONAL, 86 authorization TMgr-TrackACL-Authorization OPTIONAL, 87 flags SEQUENCE { 88 include-stats BOOLEAN DEFAULT FALSE, 89 include-default-tracks BOOLEAN DEFAULT FALSE, 90 include-track-items BOOLEAN DEFAULT FALSE, 91 expanded-rid-details BOOLEAN DEFAULT FALSE, 92 include-track-hubs BOOLEAN DEFAULT FALSE, 93 include-TMS-tracks BOOLEAN DEFAULT TRUE, 94 include-user-tracks BOOLEAN DEFAULT TRUE, 95 include-remote-tracks BOOLEAN DEFAULT TRUE, 96 use-multiple-containers BOOLEAN DEFAULT FALSE 97 } OPTIONAL 98} 99 100TMgr-DisplayTrackReply ::= SEQUENCE { 101 messages SEQUENCE OF TMgr-Message OPTIONAL, 102 display-tracks SET OF TMgr-DisplayTrack OPTIONAL, 103 blast-tracks SET OF TMgr-BlastRIDDetail OPTIONAL, 104 user-tracks SET OF TMgr-DisplayTrack OPTIONAL, 105 remote-tracks SET OF TMgr-DisplayTrack OPTIONAL, 106 hubs SET OF TMgr-DisplayTrack OPTIONAL 107} 108 109TMgr-DTrackId ::= Dbtag 110TMgr-DHubId ::= Dbtag 111 112TMgr-SeqTrackIdRequest ::= SEQUENCE { 113 seq-accession VisibleString 114} 115 116TMgr-SeqTrackIdReply ::= SEQUENCE { 117 status TMgr-Status, 118 messages SET OF TMgr-Message OPTIONAL, 119 dtrack-id TMgr-DTrackId OPTIONAL 120} 121 122TMgr-SwitchTrackContextRequest ::= SEQUENCE { 123 client TMgr-ClientInfo, 124 new-genome-context TMgr-GenomeContext, 125 current-dtrack-ids SET OF TMgr-DTrackId, 126 annotation-release-number INTEGER OPTIONAL 127} 128 129TMgr-SwitchTrackContextReply ::= SEQUENCE { 130 messages SET OF TMgr-Message OPTIONAL, 131 display-tracks SET OF TMgr-DisplayTrackChoice OPTIONAL 132} 133 134TMgr-TrackAttrValueRequest ::= SEQUENCE { 135 track-type-list NULL OPTIONAL, -- request all track type names 136 attr-list TMgr-AttrRequest OPTIONAL, -- request attributes associated 137 -- with all or some track types 138 value-list TMgr-ValueRequest OPTIONAL -- request values associated with 139 -- attribute list 140} 141 142TMgr-AttrRequest ::= CHOICE { 143 all-attrs NULL, -- request all attributes 144 track-type-list SET OF VisibleString -- request attributes associated 145 -- with track types in list 146} 147 148TMgr-ValueRequest ::= SET OF VisibleString -- list of attributes to return 149 -- values for 150 151TMgr-TrackAttrValueReply ::= SEQUENCE { 152 track-type-list SET OF VisibleString OPTIONAL, -- list of track types 153 attr-list TMgr-AttrReply OPTIONAL, 154 value-list SET OF TMgr-AttrValueReply OPTIONAL 155} 156 157TMgr-AttrReply ::= CHOICE { 158 all-attrs SET OF VisibleString, -- list of attributes 159 track-attr-list SET OF TMgr-TrackAttributes 160} 161 162TMgr-TrackAttributes ::= SEQUENCE { 163 track-name VisibleString, -- track type name 164 attributes SET OF VisibleString -- list of attributes associated with track type name 165} 166 167TMgr-AttrValueReply ::= SEQUENCE { 168 attr-name VisibleString, 169 value-list SET OF VisibleString 170} 171 172TMgr-SwitchTrackExceptionCode ::= INTEGER { 173 track-not-found (0), -- corresponding track not found in new genome context 174 other (255) 175} 176 177TMgr-SwitchTrackException ::= SEQUENCE { 178 dtrack-id TMgr-DTrackId, 179 code TMgr-SwitchTrackExceptionCode OPTIONAL 180} 181 182TMgr-AssemblySpec ::= CHOICE { 183 name SEQUENCE { 184 tax-id INTEGER, 185 name VisibleString 186 }, 187 accession VisibleString, 188 all-assemblies NULL 189} 190 191TMgr-AttrSpec ::= SEQUENCE { 192 key VisibleString, 193 value UTF8String 194} 195 196TMgr-Assembly ::= SEQUENCE { 197 accession VisibleString, 198 name UTF8String, 199 short-name UTF8String OPTIONAL, 200 description UTF8String OPTIONAL, 201 is-complete BOOLEAN OPTIONAL 202} 203 204TMgr-Attribute ::= SEQUENCE { 205 key VisibleString, 206 value UTF8String 207} 208 209--- 210--- Meta data for TMS, TMSUser, TMSRemote (tracks and hubs) 211--- 212TMgr-DisplayTrack ::= SEQUENCE { 213 -- hub-ids, tms-ids, user-ids, remote-ids and must be distinguishable 214 dtrack-id TMgr-DTrackId, 215 name UTF8String, 216 attrs SET OF TMgr-Attribute OPTIONAL, 217 seqs SET OF TMgr-DatasetItemSeq OPTIONAL, 218 items SET OF TMgr-DatasetItem OPTIONAL 219} 220 221TMgr-DatasetItem ::= SEQUENCE { 222 name UTF8String, 223 attrs SET OF TMgr-Attribute OPTIONAL, 224 seqs SET OF TMgr-DatasetItemSeq OPTIONAL 225} 226 227TMgr-DatasetItemSeq ::= SEQUENCE { 228 seq-id Seq-id, 229 counts TMgr-AnnotCounts OPTIONAL, 230 seq-id2 Seq-id OPTIONAL 231} 232 233TMgr-DisplayTrackChoice ::= CHOICE { 234 track TMgr-DisplayTrack, 235 switch-exception TMgr-SwitchTrackException 236} 237 238TMgr-MessageLevel ::= INTEGER { 239 warning (0), 240 error (1), 241 info (2), 242 diagnostic (3) 243} 244 245TMgr-Message ::= SEQUENCE { 246 level TMgr-MessageLevel, 247 message VisibleString 248} 249 250TMgr-BlastRIDRequest ::= SEQUENCE { 251 rid VisibleString 252} 253 254TMgr-BlastQuerySeq ::= SEQUENCE { 255 query-number INTEGER, 256 label VisibleString -- accession or seq-id string 257} 258 259TMgr-BlastRIDDetail ::= SEQUENCE { 260 rid VisibleString, 261 title VisibleString OPTIONAL, 262 query-sequences SEQUENCE OF TMgr-BlastQuerySeq OPTIONAL, 263 created INTEGER OPTIONAL, -- seconds since unix epoch, 00:00:00 UTC on 1 January 1970 264 database VisibleString OPTIONAL, 265 program VisibleString OPTIONAL 266} 267 268TMgr-BlastRIDReply ::= SEQUENCE { 269 messages SEQUENCE OF TMgr-Message OPTIONAL, 270 rid-detail TMgr-BlastRIDDetail OPTIONAL 271} 272 273TMgr-CreateUserDataItem ::= SEQUENCE { 274 datakey VisibleString, 275 seqids SET OF VisibleString, 276 attrs SET OF TMgr-Attribute OPTIONAL, 277 seqs SET OF TMgr-DatasetItemSeq OPTIONAL 278} 279 280TMgr-IdentityId ::= SEQUENCE { 281 id VisibleString, 282 id-type TMgr-IdentityIdType 283} 284 285TMgr-IdentityIdType ::= INTEGER { 286 myncbi-id (0), 287 ncbi-sid (1) 288} 289 290TMgr-Identity ::= SEQUENCE { 291 ids SET OF TMgr-IdentityId 292} 293 294TMgr-ACL-AccessLevel ::= INTEGER { 295 public (0), 296 private (1), 297 ncbi (2), 298 nih (3) 299} 300 301TMgr-TrackACL-Permission ::= SEQUENCE { 302 access-level TMgr-ACL-AccessLevel DEFAULT public, 303 access-key VisibleString OPTIONAL 304} 305 306TMgr-CreateUserTrackRequest ::= SEQUENCE { 307 identity TMgr-Identity, 308 track-name VisibleString OPTIONAL, -- User-provided track name 309 track-descr VisibleString OPTIONAL, -- User-provided data description 310 assembly-acc VisibleString OPTIONAL, 311 attrs SET OF TMgr-Attribute OPTIONAL, 312 data-items SET OF TMgr-CreateUserDataItem, 313 access-perms TMgr-TrackACL-Permission 314} 315 316TMgr-CreateUserTrackReply ::= SEQUENCE { 317 messages SEQUENCE OF TMgr-Message OPTIONAL, 318 display-tracks SET OF TMgr-DisplayTrack OPTIONAL 319} 320 321--- 322--- Used to remove user tracks, remote tracks and hubs 323--- 324TMgr-RemoveUserTrackRequest ::= SEQUENCE { 325 identity TMgr-Identity, 326 dtrack-ids SET OF TMgr-DTrackId, 327 hub-id TMgr-DHubId OPTIONAL, 328 client TMgr-ClientInfo OPTIONAL 329} 330 331TMgr-TypeTrackType ::= INTEGER { 332 hub (0), 333 altGraphX(2), 334 bam(3), 335 bed(4), 336 bed5FloatScore(5), 337 bedGraph(6), 338 bedRnaElements(7), 339 bigBarChart(8), 340 bigBed(9), 341 bigPsl(10), 342 bigChain(11), 343 bigMaf(12), 344 bigWig(13), 345 broadPeak(14), 346 chain(15), 347 clonePos(16), 348 coloredExon(17), 349 ctgPos(18), 350 downloadsOnly(19), 351 encodeFiveC(20), 352 expRatio(21), 353 factorSource(22), 354 genePred(23), 355 gvf(24), 356 ld2(25), 357 narrowPeak(26), 358 netAlign(27), 359 peptideMapping(28), 360 psl(29), 361 rmsk(30), 362 snake(31), 363 vcfTabix(32), 364 wig(33), 365 wigMaf(34), 366 multiWig(35) 367} 368 369TMgr-Hub ::= SEQUENCE { 370 hub VisibleString, -- hub entry from hub.txt file 371 short-label VisibleString, -- shortLabel entry from hub.txt file 372 long-label VisibleString, -- longLabel entry from hub.txt file 373 assembly-db-name SET OF VisibleString, --- genome entries in genomes.txt file 374 trackdb-url VisibleString OPTIONAL --- trackDb entry in genomes.txt file associated with assembly_acc 375} 376 377TMgr-HubTrack ::= SEQUENCE { 378 short-label VisibleString, -- shortLabel entry from trackDB.txt file 379 long-label VisibleString, -- longLabel entry from trackDB.txt file 380 hub-id TMgr-DHubId--- used to associate a track with a hub 381} 382 383 384--- 385--- Used to create remote tracks, hubs and tracks in hubs 386--- 387TMgr-CreateRemoteTrackRequest ::= SEQUENCE { 388 -- common to hubs and tracks 389 identity TMgr-Identity, -- identity of user 390 assembly-acc VisibleString, -- NCBI assembly accession 391 url VisibleString, -- url to track data or hub.txt 392 type TMgr-TypeTrackType, 393 394 -- track specific, i.e., when type != hub 395 track-name VisibleString OPTIONAL, 396 index-url VisibleString OPTIONAL, -- for tracks only, not hubs 397 398 -- Hub Track Database specific fields 399 track-db CHOICE { 400 hub TMgr-Hub, 401 track TMgr-HubTrack 402 } OPTIONAL, 403 404 attrs SET OF TMgr-Attribute OPTIONAL, -- future use 405 client TMgr-ClientInfo OPTIONAL -- Client information 406} 407 408--- 409--- Used to return created hubs, remote tracks, and tracks in hubs 410--- 411TMgr-CreateRemoteTrackReply ::= SEQUENCE { 412 messages SEQUENCE OF TMgr-Message OPTIONAL, 413 display-tracks SET OF TMgr-DisplayTrack OPTIONAL 414} 415 416TMgr-Status ::= INTEGER { 417 success (0), 418 failure (1) 419} 420 421--- 422--- Response to removing user tracks, remote tracks, hubs and tracks in hubs 423--- 424TMgr-RemoveUserTrackReply ::= SEQUENCE { 425 messages SEQUENCE OF TMgr-Message OPTIONAL 426} 427 428TMgr-ItemResolverRequest ::= SEQUENCE { 429 dtrack-ids SET OF TMgr-DTrackId, 430 client TMgr-ClientInfo, 431 genome-context TMgr-GenomeContext, 432 attrs SET OF TMgr-AttrSpec OPTIONAL, 433 sequence Seq-id OPTIONAL, -- resolve specifically for this top-level sequence 434 flags SEQUENCE { 435 include-stats BOOLEAN DEFAULT FALSE 436 } OPTIONAL 437} 438 439TMgr-TrackItems ::= SEQUENCE { 440 dtrack-id TMgr-DTrackId, 441 data SET OF TMgr-DatasetItem 442} 443 444TMgr-ItemResolverReply ::= SEQUENCE { 445 messages SEQUENCE OF TMgr-Message OPTIONAL, 446 track-items SET OF TMgr-TrackItems OPTIONAL 447} 448 449TMgr-AnnotType ::= INTEGER { 450 total (0), 451 feat (1), 452 feat-gene (100), 453 feat-cdregion (101), 454 feat-prot (102), 455 feat-rna (103), 456 feat-imp (104), 457 feat-region (105), 458 feat-clone (106), 459 feat-variation (107), 460 feat-user (108), 461 seq-table (2), 462 graph (3), 463 align (4), 464 ids (5), 465 locs (6) 466} 467 468TMgr-PositionStats ::= SEQUENCE { 469 min INTEGER, 470 max INTEGER 471} 472 473TMgr-LengthStats ::= SEQUENCE { 474 min INTEGER, 475 max INTEGER, 476 mean INTEGER OPTIONAL 477} 478 479TMgr-TypeStat ::= SEQUENCE { 480 type TMgr-AnnotType, 481 count INTEGER, 482 length-stats TMgr-LengthStats OPTIONAL, 483 position-stats TMgr-PositionStats OPTIONAL 484} 485 486TMgr-AnnotCounts ::= SEQUENCE { 487 counts SET OF TMgr-TypeStat 488} 489 490TMgr-TrackSetType ::= INTEGER { 491 tms (0), 492 myncbi-collection (1) 493} 494 495TMgr-TrackSet ::= SEQUENCE { 496 type TMgr-TrackSetType, 497 id VisibleString, -- internal identifier 498 genome-context TMgr-GenomeContext, 499 name UTF8String, 500 description UTF8String OPTIONAL, 501 tracks SEQUENCE OF TMgr-DisplayTrack 502} 503 504TMgr-RetrieveTracksetRequest ::= SEQUENCE { 505 genome-context TMgr-GenomeContext, 506 identity TMgr-Identity OPTIONAL 507} 508 509TMgr-RetrieveTracksetReply ::= SEQUENCE { 510 messages SEQUENCE OF TMgr-Message OPTIONAL, 511 tracksets SET OF TMgr-TrackSet OPTIONAL, 512 flags SEQUENCE { 513 include-track-items BOOLEAN DEFAULT FALSE 514 } OPTIONAL 515} 516 517TMgr-CreateTracksetRequest ::= SEQUENCE { 518 identity TMgr-Identity OPTIONAL, 519 genome-context TMgr-GenomeContext, 520 name UTF8String, 521 description UTF8String OPTIONAL, 522 tracks SEQUENCE OF TMgr-DTrackId 523} 524 525TMgr-CreateTracksetReply ::= SEQUENCE { 526 messages SEQUENCE OF TMgr-Message OPTIONAL, 527 status TMgr-Status, 528 trackset-id VisibleString OPTIONAL 529} 530 531TMgr-RenameMyNCBICollectionRequest ::= SEQUENCE { 532 collection-id VisibleString, 533 name VisibleString 534} 535 536TMgr-RenameMyNCBICollectionReply ::= SEQUENCE { 537 messages SEQUENCE OF TMgr-Message OPTIONAL, 538 status TMgr-Status 539} 540 541TMgr-SupportedAssembliesRequest ::= CHOICE { 542 assembly-acc VisibleString 543 --tax-id INTEGER (0..MAXINT) 544} 545 546TMgr-SupportedAssembliesReply ::= SEQUENCE { 547 messages SEQUENCE OF TMgr-Message OPTIONAL, 548 reply CHOICE { 549 assembly-acc BOOLEAN 550 --tax-id SET OF VisibleString 551 } OPTIONAL 552} 553 554END 555 556